gnomemm r1820 - in gstreamermm/trunk: . gstreamer/src tools/extra_defs_gen tools/m4



Author: jaalburqu
Date: Mon Dec  1 01:06:52 2008
New Revision: 1820
URL: http://svn.gnome.org/viewvc/gnomemm?rev=1820&view=rev

Log:
2008-11-30  Josà Alburquerque  <jaalburqu svn gnome org>

	* tools/m4/ctocpp_base.m4: Renamed macro to define translation from C
	to C++ type from _CPPTYPE to _CCONVERSION.  Likewise, renamed the
	include generation macro from _CTOCPP_INCLUDE to _CCONVERSION_INCLUDE
	and the macro that does the translating from _CTOCPP to _CCONVERT.
	Used the actual C type to define translations instead of the param
	spec types.
	* tools/extra_defs_gen/generate_plugin_gmmproc_file.cc: Modified to
	get the actual C type name instead of the param spec name; also to
	determine if a GType is a pointer.  Also modified so that the return
	type C++ translation is used for the generated property type (by
	adding a second parameter, `true', to the generated _CCONVERT macro
	call).
	* tools/extra_defs_gen/Makefile.am: 
	* tools/extra_defs_gen/gst_type_is_a_pointer.cc:
	* tools/extra_defs_gen/gst_type_is_a_pointer.h: Included to determine
	if a GType is a pointer.

	* tools/extra_defs_gen/generate_defs_gst.cc: Modified to generate
	extra defs for all core plug-ins.
	* gstreamer/src/gst_signals.defs: Regenerated so that the core plug-in
	extra defs (signals and properties) are included.
	* gstreamer/src/Makefile_list_of_hg.am_fragment: Added `capsfilter'
	plug-in to list of plug-ins to be generated.
	* tools/m4/Makefile_list_of_sources.am_fragment:
	* tools/m4/convert.m4:
	* tools/m4/ctocpp.m4: Added a file independent of ctopp_base.m4 to
	include additional C to C++ translations (the basic ones will go in
	ctocpp_base.m4).

Added:
   gstreamermm/trunk/tools/extra_defs_gen/gst_type_is_a_pointer.cc
   gstreamermm/trunk/tools/extra_defs_gen/gst_type_is_a_pointer.h
   gstreamermm/trunk/tools/m4/ctocpp.m4
Modified:
   gstreamermm/trunk/ChangeLog
   gstreamermm/trunk/gstreamer/src/Makefile_list_of_hg.am_fragment
   gstreamermm/trunk/gstreamer/src/gst_signals.defs
   gstreamermm/trunk/tools/extra_defs_gen/   (props changed)
   gstreamermm/trunk/tools/extra_defs_gen/Makefile.am
   gstreamermm/trunk/tools/extra_defs_gen/generate_defs_gst.cc
   gstreamermm/trunk/tools/extra_defs_gen/generate_plugin_gmmproc_file.cc
   gstreamermm/trunk/tools/m4/Makefile_list_of_sources.am_fragment
   gstreamermm/trunk/tools/m4/convert.m4
   gstreamermm/trunk/tools/m4/ctocpp_base.m4

Modified: gstreamermm/trunk/gstreamer/src/Makefile_list_of_hg.am_fragment
==============================================================================
--- gstreamermm/trunk/gstreamer/src/Makefile_list_of_hg.am_fragment	(original)
+++ gstreamermm/trunk/gstreamer/src/Makefile_list_of_hg.am_fragment	Mon Dec  1 01:06:52 2008
@@ -17,7 +17,7 @@
 
 files_general_deprecated_hg =
 
-files_plugin_hg = filesrc.hg
+files_plugin_hg = capsfilter.hg filesrc.hg
 
 files_patched_hg = taglist.hg
 

Modified: gstreamermm/trunk/gstreamer/src/gst_signals.defs
==============================================================================
--- gstreamermm/trunk/gstreamer/src/gst_signals.defs	(original)
+++ gstreamermm/trunk/gstreamer/src/gst_signals.defs	Mon Dec  1 01:06:52 2008
@@ -908,6 +908,35 @@
   (construct-only #f)
 )
 
+;; From GstCapsFilter
+
+(define-property name
+  (of-object "GstCapsFilter")
+  (prop-type "GParamString")
+  (docs "The name of the object")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property qos
+  (of-object "GstCapsFilter")
+  (prop-type "GParamBoolean")
+  (docs "Handle Quality-of-Service events")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property caps
+  (of-object "GstCapsFilter")
+  (prop-type "GParamBoxed")
+  (docs "Restrict the possible allowed capabilities (NULL means ANY). Setting this property takes a reference to the supplied GstCaps object.")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
 ;; From GstFakeSrc
 
 (define-signal handoff
@@ -1118,10 +1147,30 @@
   (construct-only #f)
 )
 
-;; From GstFileSrc
+;; From GstFakeSink
+
+(define-signal handoff
+  (of-object "GstFakeSink")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("GstBuffer" "p0")
+    '("GstPad*" "p1")
+  )
+)
+
+(define-signal preroll-handoff
+  (of-object "GstFakeSink")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("GstBuffer" "p0")
+    '("GstPad*" "p1")
+  )
+)
 
 (define-property name
-  (of-object "GstFileSrc")
+  (of-object "GstFakeSink")
   (prop-type "GParamString")
   (docs "The name of the object")
   (readable #t)
@@ -1129,8 +1178,255 @@
   (construct-only #f)
 )
 
+(define-property preroll-queue-len
+  (of-object "GstFakeSink")
+  (prop-type "GParamUInt")
+  (docs "Number of buffers to queue during preroll")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property sync
+  (of-object "GstFakeSink")
+  (prop-type "GParamBoolean")
+  (docs "Sync on the clock")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-lateness
+  (of-object "GstFakeSink")
+  (prop-type "GParamInt64")
+  (docs "Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property qos
+  (of-object "GstFakeSink")
+  (prop-type "GParamBoolean")
+  (docs "Generate Quality-of-Service events upstream")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property async
+  (of-object "GstFakeSink")
+  (prop-type "GParamBoolean")
+  (docs "Go asynchronously to PAUSED")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property ts-offset
+  (of-object "GstFakeSink")
+  (prop-type "GParamInt64")
+  (docs "Timestamp offset in nanoseconds")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property last-buffer
+  (of-object "GstFakeSink")
+  (prop-type "GParamSpecMiniObject")
+  (docs "The last buffer received in the sink")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
 (define-property blocksize
-  (of-object "GstFileSrc")
+  (of-object "GstFakeSink")
+  (prop-type "GParamUInt")
+  (docs "Size in bytes to pull per buffer (0 = default)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property state-error
+  (of-object "GstFakeSink")
+  (prop-type "GParamEnum")
+  (docs "Generate a state change error")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property silent
+  (of-object "GstFakeSink")
+  (prop-type "GParamBoolean")
+  (docs "Don't produce last_message events")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property dump
+  (of-object "GstFakeSink")
+  (prop-type "GParamBoolean")
+  (docs "Dump buffer contents to stdout")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property signal-handoffs
+  (of-object "GstFakeSink")
+  (prop-type "GParamBoolean")
+  (docs "Send a signal before unreffing the buffer")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property last-message
+  (of-object "GstFakeSink")
+  (prop-type "GParamString")
+  (docs "The message describing current status")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property can-activate-push
+  (of-object "GstFakeSink")
+  (prop-type "GParamBoolean")
+  (docs "Can activate in push mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property can-activate-pull
+  (of-object "GstFakeSink")
+  (prop-type "GParamBoolean")
+  (docs "Can activate in pull mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property num-buffers
+  (of-object "GstFakeSink")
+  (prop-type "GParamInt")
+  (docs "Number of buffers to accept going EOS")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+;; From GstFdSink
+
+(define-property name
+  (of-object "GstFdSink")
+  (prop-type "GParamString")
+  (docs "The name of the object")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property preroll-queue-len
+  (of-object "GstFdSink")
+  (prop-type "GParamUInt")
+  (docs "Number of buffers to queue during preroll")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property sync
+  (of-object "GstFdSink")
+  (prop-type "GParamBoolean")
+  (docs "Sync on the clock")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-lateness
+  (of-object "GstFdSink")
+  (prop-type "GParamInt64")
+  (docs "Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property qos
+  (of-object "GstFdSink")
+  (prop-type "GParamBoolean")
+  (docs "Generate Quality-of-Service events upstream")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property async
+  (of-object "GstFdSink")
+  (prop-type "GParamBoolean")
+  (docs "Go asynchronously to PAUSED")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property ts-offset
+  (of-object "GstFdSink")
+  (prop-type "GParamInt64")
+  (docs "Timestamp offset in nanoseconds")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property last-buffer
+  (of-object "GstFdSink")
+  (prop-type "GParamSpecMiniObject")
+  (docs "The last buffer received in the sink")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property blocksize
+  (of-object "GstFdSink")
+  (prop-type "GParamUInt")
+  (docs "Size in bytes to pull per buffer (0 = default)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property fd
+  (of-object "GstFdSink")
+  (prop-type "GParamInt")
+  (docs "An open file descriptor to write to")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+;; From GstFdSrc
+
+(define-property name
+  (of-object "GstFdSrc")
+  (prop-type "GParamString")
+  (docs "The name of the object")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property blocksize
+  (of-object "GstFdSrc")
   (prop-type "GParamULong")
   (docs "Size in bytes to read per buffer (-1 = default)")
   (readable #t)
@@ -1139,7 +1435,7 @@
 )
 
 (define-property num-buffers
-  (of-object "GstFileSrc")
+  (of-object "GstFdSrc")
   (prop-type "GParamInt")
   (docs "Number of buffers to output before sending EOS (-1 = unlimited)")
   (readable #t)
@@ -1148,7 +1444,7 @@
 )
 
 (define-property typefind
-  (of-object "GstFileSrc")
+  (of-object "GstFdSrc")
   (prop-type "GParamBoolean")
   (docs "Run typefind before negotiating")
   (readable #t)
@@ -1157,7 +1453,7 @@
 )
 
 (define-property do-timestamp
-  (of-object "GstFileSrc")
+  (of-object "GstFdSrc")
   (prop-type "GParamBoolean")
   (docs "Apply current stream time to buffers")
   (readable #t)
@@ -1165,55 +1461,700 @@
   (construct-only #f)
 )
 
-(define-property location
-  (of-object "GstFileSrc")
-  (prop-type "GParamString")
-  (docs "Location of the file to read")
+(define-property fd
+  (of-object "GstFdSrc")
+  (prop-type "GParamInt")
+  (docs "An open file descriptor to read from")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property fd
+(define-property timeout
+  (of-object "GstFdSrc")
+  (prop-type "GParamUInt64")
+  (docs "Post a message after timeout microseconds (0 = disabled)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+;; From GstFileSrc
+
+(define-property name
   (of-object "GstFileSrc")
-  (prop-type "GParamInt")
-  (docs "File-descriptor for the file being mmap()d")
+  (prop-type "GParamString")
+  (docs "The name of the object")
   (readable #t)
-  (writable #f)
+  (writable #t)
   (construct-only #f)
 )
 
-(define-property mmapsize
+(define-property blocksize
   (of-object "GstFileSrc")
   (prop-type "GParamULong")
-  (docs "Size in bytes of mmap()d regions")
+  (docs "Size in bytes to read per buffer (-1 = default)")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property sequential
+(define-property num-buffers
   (of-object "GstFileSrc")
-  (prop-type "GParamBoolean")
-  (docs "Whether to use madvise to hint to the kernel that access to mmap pages will be sequential")
+  (prop-type "GParamInt")
+  (docs "Number of buffers to output before sending EOS (-1 = unlimited)")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property touch
+(define-property typefind
   (of-object "GstFileSrc")
   (prop-type "GParamBoolean")
-  (docs "Touch mmapped data regions to force them to be read from disk")
+  (docs "Run typefind before negotiating")
   (readable #t)
   (writable #t)
   (construct-only #f)
 )
 
-(define-property use-mmap
+(define-property do-timestamp
   (of-object "GstFileSrc")
   (prop-type "GParamBoolean")
-  (docs "Whether to use mmap() instead of read()")
+  (docs "Apply current stream time to buffers")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property location
+  (of-object "GstFileSrc")
+  (prop-type "GParamString")
+  (docs "Location of the file to read")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property fd
+  (of-object "GstFileSrc")
+  (prop-type "GParamInt")
+  (docs "File-descriptor for the file being mmap()d")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property mmapsize
+  (of-object "GstFileSrc")
+  (prop-type "GParamULong")
+  (docs "Size in bytes of mmap()d regions")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property sequential
+  (of-object "GstFileSrc")
+  (prop-type "GParamBoolean")
+  (docs "Whether to use madvise to hint to the kernel that access to mmap pages will be sequential")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property touch
+  (of-object "GstFileSrc")
+  (prop-type "GParamBoolean")
+  (docs "Touch mmapped data regions to force them to be read from disk")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property use-mmap
+  (of-object "GstFileSrc")
+  (prop-type "GParamBoolean")
+  (docs "Whether to use mmap() instead of read()")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+;; From GstFileSink
+
+(define-property name
+  (of-object "GstFileSink")
+  (prop-type "GParamString")
+  (docs "The name of the object")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property preroll-queue-len
+  (of-object "GstFileSink")
+  (prop-type "GParamUInt")
+  (docs "Number of buffers to queue during preroll")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property sync
+  (of-object "GstFileSink")
+  (prop-type "GParamBoolean")
+  (docs "Sync on the clock")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-lateness
+  (of-object "GstFileSink")
+  (prop-type "GParamInt64")
+  (docs "Maximum number of nanoseconds that a buffer can be late before it is dropped (-1 unlimited)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property qos
+  (of-object "GstFileSink")
+  (prop-type "GParamBoolean")
+  (docs "Generate Quality-of-Service events upstream")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property async
+  (of-object "GstFileSink")
+  (prop-type "GParamBoolean")
+  (docs "Go asynchronously to PAUSED")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property ts-offset
+  (of-object "GstFileSink")
+  (prop-type "GParamInt64")
+  (docs "Timestamp offset in nanoseconds")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property last-buffer
+  (of-object "GstFileSink")
+  (prop-type "GParamSpecMiniObject")
+  (docs "The last buffer received in the sink")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property blocksize
+  (of-object "GstFileSink")
+  (prop-type "GParamUInt")
+  (docs "Size in bytes to pull per buffer (0 = default)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property location
+  (of-object "GstFileSink")
+  (prop-type "GParamString")
+  (docs "Location of the file to write")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property buffer-mode
+  (of-object "GstFileSink")
+  (prop-type "GParamEnum")
+  (docs "The buffering mode to use")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property buffer-size
+  (of-object "GstFileSink")
+  (prop-type "GParamUInt")
+  (docs "Size of buffer in number of bytes for line or full buffer-mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+;; From GstIdentity
+
+(define-signal handoff
+  (of-object "GstIdentity")
+  (return-type "void")
+  (when "last")
+  (parameters
+    '("GstBuffer" "p0")
+  )
+)
+
+(define-property name
+  (of-object "GstIdentity")
+  (prop-type "GParamString")
+  (docs "The name of the object")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property qos
+  (of-object "GstIdentity")
+  (prop-type "GParamBoolean")
+  (docs "Handle Quality-of-Service events")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property sleep-time
+  (of-object "GstIdentity")
+  (prop-type "GParamUInt")
+  (docs "Microseconds to sleep between processing")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property error-after
+  (of-object "GstIdentity")
+  (prop-type "GParamInt")
+  (docs "Error after N buffers")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property drop-probability
+  (of-object "GstIdentity")
+  (prop-type "GParamFloat")
+  (docs "The Probability a buffer is dropped")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property datarate
+  (of-object "GstIdentity")
+  (prop-type "GParamInt")
+  (docs "(Re)timestamps buffers with number of bytes per second (0 = inactive)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property silent
+  (of-object "GstIdentity")
+  (prop-type "GParamBoolean")
+  (docs "silent")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property single-segment
+  (of-object "GstIdentity")
+  (prop-type "GParamBoolean")
+  (docs "Timestamp buffers and eat newsegments so as to appear as one segment")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property last-message
+  (of-object "GstIdentity")
+  (prop-type "GParamString")
+  (docs "last-message")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property dump
+  (of-object "GstIdentity")
+  (prop-type "GParamBoolean")
+  (docs "Dump buffer contents to stdout")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property sync
+  (of-object "GstIdentity")
+  (prop-type "GParamBoolean")
+  (docs "Synchronize to pipeline clock")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property check-perfect
+  (of-object "GstIdentity")
+  (prop-type "GParamBoolean")
+  (docs "Verify that the stream is time- and data-contiguous. This only logs in the debug log.  This will be deprecated in favor of the check-imperfect-timestamp/offset properties.")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property check-imperfect-timestamp
+  (of-object "GstIdentity")
+  (prop-type "GParamBoolean")
+  (docs "Send element messages if timestamps and durations do not match up")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property check-imperfect-offset
+  (of-object "GstIdentity")
+  (prop-type "GParamBoolean")
+  (docs "Send element messages if offset and offset_end do not match up")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property signal-handoffs
+  (of-object "GstIdentity")
+  (prop-type "GParamBoolean")
+  (docs "Send a signal before pushing the buffer")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+;; From GstMultiQueue
+
+(define-signal underrun
+  (of-object "GstMultiQueue")
+  (return-type "void")
+  (when "first")
+)
+
+(define-signal overrun
+  (of-object "GstMultiQueue")
+  (return-type "void")
+  (when "first")
+)
+
+(define-property name
+  (of-object "GstMultiQueue")
+  (prop-type "GParamString")
+  (docs "The name of the object")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property extra-size-bytes
+  (of-object "GstMultiQueue")
+  (prop-type "GParamUInt")
+  (docs "Amount of data the queues can grow if one of them is empty (bytes, 0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property extra-size-buffers
+  (of-object "GstMultiQueue")
+  (prop-type "GParamUInt")
+  (docs "Amount of buffers the queues can grow if one of them is empty (0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property extra-size-time
+  (of-object "GstMultiQueue")
+  (prop-type "GParamUInt64")
+  (docs "Amount of time the queues can grow if one of them is empty (in ns, 0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-size-bytes
+  (of-object "GstMultiQueue")
+  (prop-type "GParamUInt")
+  (docs "Max. amount of data in the queue (bytes, 0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-size-buffers
+  (of-object "GstMultiQueue")
+  (prop-type "GParamUInt")
+  (docs "Max. number of buffers in the queue (0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-size-time
+  (of-object "GstMultiQueue")
+  (prop-type "GParamUInt64")
+  (docs "Max. amount of data in the queue (in ns, 0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+;; From GstQueue
+
+(define-signal underrun
+  (of-object "GstQueue")
+  (return-type "void")
+  (when "first")
+)
+
+(define-signal running
+  (of-object "GstQueue")
+  (return-type "void")
+  (when "first")
+)
+
+(define-signal overrun
+  (of-object "GstQueue")
+  (return-type "void")
+  (when "first")
+)
+
+(define-signal pushing
+  (of-object "GstQueue")
+  (return-type "void")
+  (when "first")
+)
+
+(define-property name
+  (of-object "GstQueue")
+  (prop-type "GParamString")
+  (docs "The name of the object")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property current-level-buffers
+  (of-object "GstQueue")
+  (prop-type "GParamUInt")
+  (docs "Current number of buffers in the queue")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property current-level-bytes
+  (of-object "GstQueue")
+  (prop-type "GParamUInt")
+  (docs "Current amount of data in the queue (bytes)")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property current-level-time
+  (of-object "GstQueue")
+  (prop-type "GParamUInt64")
+  (docs "Current amount of data in the queue (in ns)")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property max-size-buffers
+  (of-object "GstQueue")
+  (prop-type "GParamUInt")
+  (docs "Max. number of buffers in the queue (0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-size-bytes
+  (of-object "GstQueue")
+  (prop-type "GParamUInt")
+  (docs "Max. amount of data in the queue (bytes, 0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property max-size-time
+  (of-object "GstQueue")
+  (prop-type "GParamUInt64")
+  (docs "Max. amount of data in the queue (in ns, 0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property min-threshold-buffers
+  (of-object "GstQueue")
+  (prop-type "GParamUInt")
+  (docs "Min. number of buffers in the queue to allow reading (0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property min-threshold-bytes
+  (of-object "GstQueue")
+  (prop-type "GParamUInt")
+  (docs "Min. amount of data in the queue to allow reading (bytes, 0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property min-threshold-time
+  (of-object "GstQueue")
+  (prop-type "GParamUInt64")
+  (docs "Min. amount of data in the queue to allow reading (in ns, 0=disable)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property leaky
+  (of-object "GstQueue")
+  (prop-type "GParamEnum")
+  (docs "Where the queue leaks, if at all")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+;; From GstTee
+
+(define-property name
+  (of-object "GstTee")
+  (prop-type "GParamString")
+  (docs "The name of the object")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property num-src-pads
+  (of-object "GstTee")
+  (prop-type "GParamInt")
+  (docs "The number of source pads")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property has-sink-loop
+  (of-object "GstTee")
+  (prop-type "GParamBoolean")
+  (docs "If the element should spawn a thread (unimplemented and deprecated)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property has-chain
+  (of-object "GstTee")
+  (prop-type "GParamBoolean")
+  (docs "If the element can operate in push mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property silent
+  (of-object "GstTee")
+  (prop-type "GParamBoolean")
+  (docs "Don't produce last_message events")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property last-message
+  (of-object "GstTee")
+  (prop-type "GParamString")
+  (docs "The message describing current status")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property pull-mode
+  (of-object "GstTee")
+  (prop-type "GParamEnum")
+  (docs "Behavior of tee in pull mode")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+;; From GstTypeFindElement
+
+(define-signal have-type
+  (of-object "GstTypeFindElement")
+  (return-type "void")
+  (when "first")
+  (parameters
+    '("guint" "p0")
+    '("GstCaps*" "p1")
+  )
+)
+
+(define-property name
+  (of-object "GstTypeFindElement")
+  (prop-type "GParamString")
+  (docs "The name of the object")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property caps
+  (of-object "GstTypeFindElement")
+  (prop-type "GParamBoxed")
+  (docs "detected capabilities in stream")
+  (readable #t)
+  (writable #f)
+  (construct-only #f)
+)
+
+(define-property minimum
+  (of-object "GstTypeFindElement")
+  (prop-type "GParamUInt")
+  (docs "minimum probability required to accept caps")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property maximum
+  (of-object "GstTypeFindElement")
+  (prop-type "GParamUInt")
+  (docs "probability to stop typefinding (deprecated; non-functional)")
+  (readable #t)
+  (writable #t)
+  (construct-only #f)
+)
+
+(define-property force-caps
+  (of-object "GstTypeFindElement")
+  (prop-type "GParamBoxed")
+  (docs "force caps without doing a typefind")
   (readable #t)
   (writable #t)
   (construct-only #f)

Modified: gstreamermm/trunk/tools/extra_defs_gen/Makefile.am
==============================================================================
--- gstreamermm/trunk/tools/extra_defs_gen/Makefile.am	(original)
+++ gstreamermm/trunk/tools/extra_defs_gen/Makefile.am	Mon Dec  1 01:06:52 2008
@@ -4,7 +4,8 @@
 INCLUDES = $(GSTREAMERMM_CFLAGS) $(GSTREAMERBASEMM_CFLAGS)
 LIBS = $(GSTREAMERMM_LIBS) $(GSTREAMERBASEMM_LIBS) -lglibmm_generate_extra_defs-2.4
 
-EXTRA_DIST = get_plugin_defs.h get_plugin_defs.cc
+EXTRA_DIST = get_plugin_defs.h get_plugin_defs.cc gst_type_is_a_pointer.h \
+	     gst_type_is_a_pointer.cc
 
 noinst_PROGRAMS = generate_defs_gst generate_defs_gstbase \
 		  generate_plugin_gmmproc_file
@@ -12,4 +13,5 @@
 generate_defs_gst_SOURCES = generate_defs_gst.cc get_plugin_defs.cc
 generate_defs_gstbase_SOURCES = generate_defs_gstbase.cc get_plugin_defs.cc
 
-generate_plugin_gmmproc_file_SOURCES = generate_plugin_gmmproc_file.cc
+generate_plugin_gmmproc_file_SOURCES = generate_plugin_gmmproc_file.cc \
+				       gst_type_is_a_pointer.cc

Modified: gstreamermm/trunk/tools/extra_defs_gen/generate_defs_gst.cc
==============================================================================
--- gstreamermm/trunk/tools/extra_defs_gen/generate_defs_gst.cc	(original)
+++ gstreamermm/trunk/tools/extra_defs_gen/generate_defs_gst.cc	Mon Dec  1 01:06:52 2008
@@ -80,8 +80,18 @@
             << get_defs(GST_TYPE_DATA_QUEUE)
 
   // GStreamer core plugin types:
+            << get_plugin_defs("capsfilter")
             << get_plugin_defs("fakesrc")
+            << get_plugin_defs("fakesink")
+            << get_plugin_defs("fdsink")
+            << get_plugin_defs("fdsrc")
             << get_plugin_defs("filesrc")
+            << get_plugin_defs("filesink")
+            << get_plugin_defs("identity")
+            << get_plugin_defs("multiqueue")
+            << get_plugin_defs("queue")
+            << get_plugin_defs("tee")
+            << get_plugin_defs("typefind")
             ;
   return 0;
 }

Modified: gstreamermm/trunk/tools/extra_defs_gen/generate_plugin_gmmproc_file.cc
==============================================================================
--- gstreamermm/trunk/tools/extra_defs_gen/generate_plugin_gmmproc_file.cc	(original)
+++ gstreamermm/trunk/tools/extra_defs_gen/generate_plugin_gmmproc_file.cc	Mon Dec  1 01:06:52 2008
@@ -20,6 +20,8 @@
  */
 
 
+#include "gst_type_is_a_pointer.h"
+
 #include <gst/gst.h>
 #include <glibmm.h>
 #include <iostream>
@@ -96,12 +98,15 @@
     {
       //Name and type:
       Glib::ustring propertyName = g_param_spec_get_name(pParamSpec);
-      Glib::ustring  propertyCType = G_PARAM_SPEC_TYPE_NAME(pParamSpec);
+
+      Glib::ustring  propertyCType = g_type_name(pParamSpec->value_type) +
+              (Glib::ustring) (gst_type_is_a_pointer(pParamSpec->value_type) ?
+                              "*" : "");
 
       wrapStatements += "  _WRAP_PROPERTY(\"" + propertyName + "\", " +
-        "_CTOCPP(" + propertyCType + ") )\n";
+        "_CCONVERT(" + propertyCType + ", true) )\n";
 
-      includeMacroCalls += "_CTOCPP_INCLUDE(" + propertyCType + ")\n";
+      includeMacroCalls += "_CCONVERSION_INCLUDE(" + propertyCType + ")\n";
     }
   }
 

Added: gstreamermm/trunk/tools/extra_defs_gen/gst_type_is_a_pointer.cc
==============================================================================
--- (empty file)
+++ gstreamermm/trunk/tools/extra_defs_gen/gst_type_is_a_pointer.cc	Mon Dec  1 01:06:52 2008
@@ -0,0 +1,9 @@
+#include "gst_type_is_a_pointer.h"
+#include <gst/gst.h>
+
+bool gst_type_is_a_pointer(GType gtype)
+{
+  return (g_type_is_a(gtype, G_TYPE_OBJECT) ||
+    g_type_is_a(gtype, G_TYPE_BOXED) ||
+    g_type_is_a(gtype, GST_TYPE_MINI_OBJECT));
+}

Added: gstreamermm/trunk/tools/extra_defs_gen/gst_type_is_a_pointer.h
==============================================================================
--- (empty file)
+++ gstreamermm/trunk/tools/extra_defs_gen/gst_type_is_a_pointer.h	Mon Dec  1 01:06:52 2008
@@ -0,0 +1,3 @@
+#include <glib-object.h>
+
+bool gst_type_is_a_pointer(GType gtype);

Modified: gstreamermm/trunk/tools/m4/Makefile_list_of_sources.am_fragment
==============================================================================
--- gstreamermm/trunk/tools/m4/Makefile_list_of_sources.am_fragment	(original)
+++ gstreamermm/trunk/tools/m4/Makefile_list_of_sources.am_fragment	Mon Dec  1 01:06:52 2008
@@ -1,3 +1,3 @@
 files_tools_m4 = convert.m4 convert_gst.m4 convert_gstbase.m4 ctocpp_base.m4 \
-		 class_gstminiobject.m4 class_boxedtype_extra.m4
+		 class_gstminiobject.m4 class_boxedtype_extra.m4 ctocpp.m4
 

Modified: gstreamermm/trunk/tools/m4/convert.m4
==============================================================================
--- gstreamermm/trunk/tools/m4/convert.m4	(original)
+++ gstreamermm/trunk/tools/m4/convert.m4	Mon Dec  1 01:06:52 2008
@@ -5,3 +5,4 @@
 include(convert_gstbase.m4)
 include(class_gstminiobject.m4)
 include(class_boxedtype_extra.m4)
+include(ctocpp.m4)

Added: gstreamermm/trunk/tools/m4/ctocpp.m4
==============================================================================
--- (empty file)
+++ gstreamermm/trunk/tools/m4/ctocpp.m4	Mon Dec  1 01:06:52 2008
@@ -0,0 +1 @@
+_CCONVERSION(`GstCaps*',`const Glib::RefPtr<Caps>&',`Glib::RefPtr<Caps>')

Modified: gstreamermm/trunk/tools/m4/ctocpp_base.m4
==============================================================================
--- gstreamermm/trunk/tools/m4/ctocpp_base.m4	(original)
+++ gstreamermm/trunk/tools/m4/ctocpp_base.m4	Mon Dec  1 01:06:52 2008
@@ -2,15 +2,15 @@
 dnl Macros to convert from C to C++ types
 dnl
 
-dnl _CPPTYPE(ctype, param cpptype, return cpptype, cppinclude)
+dnl _CCONVERSION(ctype, param cpptype, return cpptype, cppinclude)
 dnl
 dnl Records a translation from a C type to a C++ type.  If a return cpptype is
 dnl not given, it is assumed to be the same as the param cpptype.  A cpp
-dnl include need not be specified (the <> or "" are required).  If an include
-dnl is specified, a C++ include directive may be generated with the
-dnl _CTOCPP_INCLUDE macro.
+dnl include need not be specified (the <> or "" are required though).  If an
+dnl include is specified, a C++ include directive may be generated with the
+dnl _CCONVERSION_INCLUDE macro.
 dnl
-m4_define(`_CPPTYPE',`dnl
+m4_define(`_CCONVERSION',`dnl
 m4_define(`TFP'__HASH(`$1'),`$2')dnl
 m4_ifelse(`$3',,`dnl
 m4_define(`TFR'__HASH(`$1'),`$2')',`dnl
@@ -19,14 +19,14 @@
 m4_ifelse(`$4',,,`m4_define(`IF'__HASH(`$1'),`$4')')`'dnl
 ')dnl
 
-dnl _CTOCPP_INCLUDE(ctype)
+dnl _CCONVERSION_INCLUDE(ctype)
 dnl
 dnl Produces a C++ include direcive of the C++ header for the ctype if a
 dnl translation has been defined and an include parameter was included.  Only
 dnl one directive will be generated for multiple calls (i.e. none but the first
 dnl call produces anything).
 dnl
-m4_define(`_CTOCPP_INCLUDE',`dnl
+m4_define(`_CCONVERSION_INCLUDE',`dnl
 m4_ifdef(`IFC'__HASH(`$1'),,`dnl
 m4_ifdef(`IF'__HASH(`$1'),`dnl
 #include m4_indir(`IF'__HASH(`$1'))`'dnl
@@ -35,14 +35,13 @@
 ')`'dnl
 ')dnl
 
-dnl _CTOCPP(ctype, use return translation)
+dnl _CCONVERT(ctype, return)
 dnl
 dnl Translates from a specified C type to a C++ param or return type.  If a
-dnl `use return translation' (boolean) parameter is included, the return C++
-dnl type is rendered.  If not (no second parameter), the C++ parameter type is
-dnl rendered.
+dnl `return' (boolean) parameter is included, the return C++ type is rendered.
+dnl If not (no second parameter), the C++ parameter type is rendered.
 dnl
-m4_define(`_CTOCPP',`dnl
+m4_define(`_CCONVERT',`dnl
 m4_ifelse(`$2',,`dnl
 m4_ifdef(`TFP'__HASH(`$1'), `m4_indir(`TFP'__HASH(`$1'))',`dnl
 m4_errprint(`No C++ parameter conversion from $1 defined.
@@ -57,8 +56,8 @@
 ')`'dnl
 ')dnl
 
-_CPPTYPE(`GParamBoolean',`bool')
-_CPPTYPE(`GParamInt',`int')
-_CPPTYPE(`GParamULong',`unsigned long')
-_CPPTYPE(`GParamUInt64',`guint64')
-_CPPTYPE(`GParamString',`Glib::ustring')
+_CCONVERSION(`gboolean',`bool')
+_CCONVERSION(`gint',`int')
+_CCONVERSION(`gulong',`unsigned long')
+_CCONVERSION(`guint64',`guint64')
+_CCONVERSION(`gchararray',`const Glib::ustring&',`Glib::ustring')



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]