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



Author: jaalburqu
Date: Fri Sep 19 03:39:24 2008
New Revision: 1704
URL: http://svn.gnome.org/viewvc/gnomemm?rev=1704&view=rev

Log:
2008-09-18  Josà Alburquerque  <jaalburqu svn gnome org>

	* gstreamer/src/bin.hg:
	* gstreamer/src/buffer.hg:
	* gstreamer/src/bus.hg:
	* gstreamer/src/caps.hg:
	* gstreamer/src/childproxy.hg:
	* gstreamer/src/element.hg:
	* gstreamer/src/elementfactory.hg:
	* gstreamer/src/filter.hg:
	* gstreamer/src/ghostpad.hg:
	* gstreamer/src/indexfactory.hg:
	* gstreamer/src/interface.hg:
	* gstreamer/src/pad.hg:
	* gstreamer/src/padtemplate.hg:
	* gstreamer/src/plugin.hg:
	* gstreamer/src/pluginfeature.hg:
	* gstreamer/src/registry.hg:
	* gstreamer/src/segment.hg:
	* gstreamer/src/taglist.hg:
	* gstreamer/src/tagsetter.hg:
	* gstreamer/src/task.hg:
	* gstreamer/src/urihandler.hg:
	* gstreamer/src/xml.hg: Reorganized all _IGNOREs so it is clear what
	has not been wrapped and:

	* gstreamer/src/event.ccg:
	* gstreamer/src/event.hg:
	* gstreamer/src/query.ccg:
	* gstreamer/src/query.hg: Wrapped get_structure() methods instead of
	handwriting them and:
	* gstreamer/src/message.ccg:
	* gstreamer/src/message.hg: Renamed get* methods in MessageBuffering
	to parse*.

	* gstreamer/gstreamermm/taglist.cc:
	* gstreamer/gstreamermm/taglist.h:
	* tools/m4/class_boxedtype_extra.m4: Modified custom CLASS_BOXEDTYPE
	class macro for GstTagList to use a dummy int instead of a bool and
	"regenerated" *.h and *.cc files by adding taglist.hg to
	gstreamer/src/Makefile_list_of_hg.am_fragment and then removing it so
	that wrapping get_structure() methods above would not be ambiguous
	(GstTagList is in fact a GstStructure see bug #518934).
	* tools/m4/convert_gst.m4: Included conversion for GstStructure and
	remove unused GstStructure and GstTagList ones.

	* gstreamer/src/structure.ccg:
	* gstreamer/src/structure.hg: Added fixate* methods.

	* gstreamer/src/clock.hg:
	* gstreamer/src/gst_docs_override.xml: Fixed wait() method docs
	and added overridden wait() method docs.

	* gstreamer/src/iterator.hg: Changed gpointer uses to void*.

Modified:
   gstreamermm/trunk/ChangeLog
   gstreamermm/trunk/gstreamer/gstreamermm/taglist.cc
   gstreamermm/trunk/gstreamer/gstreamermm/taglist.h
   gstreamermm/trunk/gstreamer/src/bin.hg
   gstreamermm/trunk/gstreamer/src/buffer.hg
   gstreamermm/trunk/gstreamer/src/bus.hg
   gstreamermm/trunk/gstreamer/src/caps.hg
   gstreamermm/trunk/gstreamer/src/childproxy.hg
   gstreamermm/trunk/gstreamer/src/clock.hg
   gstreamermm/trunk/gstreamer/src/element.hg
   gstreamermm/trunk/gstreamer/src/elementfactory.hg
   gstreamermm/trunk/gstreamer/src/event.ccg
   gstreamermm/trunk/gstreamer/src/event.hg
   gstreamermm/trunk/gstreamer/src/filter.hg
   gstreamermm/trunk/gstreamer/src/ghostpad.hg
   gstreamermm/trunk/gstreamer/src/gst_docs_override.xml
   gstreamermm/trunk/gstreamer/src/indexfactory.hg
   gstreamermm/trunk/gstreamer/src/interface.hg
   gstreamermm/trunk/gstreamer/src/iterator.hg
   gstreamermm/trunk/gstreamer/src/message.ccg
   gstreamermm/trunk/gstreamer/src/message.hg
   gstreamermm/trunk/gstreamer/src/pad.hg
   gstreamermm/trunk/gstreamer/src/padtemplate.hg
   gstreamermm/trunk/gstreamer/src/plugin.hg
   gstreamermm/trunk/gstreamer/src/pluginfeature.hg
   gstreamermm/trunk/gstreamer/src/query.ccg
   gstreamermm/trunk/gstreamer/src/query.hg
   gstreamermm/trunk/gstreamer/src/registry.hg
   gstreamermm/trunk/gstreamer/src/segment.hg
   gstreamermm/trunk/gstreamer/src/structure.ccg
   gstreamermm/trunk/gstreamer/src/structure.hg
   gstreamermm/trunk/gstreamer/src/taglist.hg
   gstreamermm/trunk/gstreamer/src/tagsetter.hg
   gstreamermm/trunk/gstreamer/src/task.hg
   gstreamermm/trunk/gstreamer/src/urihandler.hg
   gstreamermm/trunk/gstreamer/src/xml.hg
   gstreamermm/trunk/tools/m4/class_boxedtype_extra.m4
   gstreamermm/trunk/tools/m4/convert_gst.m4

Modified: gstreamermm/trunk/gstreamer/gstreamermm/taglist.cc
==============================================================================
--- gstreamermm/trunk/gstreamer/gstreamermm/taglist.cc	(original)
+++ gstreamermm/trunk/gstreamer/gstreamermm/taglist.cc	Fri Sep 19 03:39:24 2008
@@ -234,7 +234,7 @@
 namespace Glib
 {
 
-Gst::TagList wrap(GstTagList* object, bool take_copy, bool dummy)
+Gst::TagList wrap(GstTagList* object, int dummy, bool take_copy)
 {
   return Gst::TagList(object, take_copy);
 }
@@ -344,7 +344,7 @@
 
 TagList TagList::merge(const TagList& other, TagMergeMode mode)
 {
-  return Glib::wrap(gst_tag_list_merge(gobj(), ((other).gobj()), ((GstTagMergeMode)(mode))), false, false);
+  return Glib::wrap(gst_tag_list_merge(gobj(), ((other).gobj()), ((GstTagMergeMode)(mode))), 0);
 }
 
 guint TagList::get_tag_size(const Glib::ustring& tag) const

Modified: gstreamermm/trunk/gstreamer/gstreamermm/taglist.h
==============================================================================
--- gstreamermm/trunk/gstreamer/gstreamermm/taglist.h	(original)
+++ gstreamermm/trunk/gstreamer/gstreamermm/taglist.h	Fri Sep 19 03:39:24 2008
@@ -372,7 +372,7 @@
 
 private:
 
-
+  
 public:
   
   /** Checks if the given type is already registered.
@@ -465,15 +465,15 @@
    */
   template <class DataType>
   void add(const Glib::ustring& tag, const DataType& data, TagMergeMode mode=TAG_MERGE_PREPEND);
-
   
+
   /** Removes the given tag from the taglist.
    * @param tag Tag to remove.
    */
   void remove_tag(const Glib::ustring& tag);
 
   /** For example,
-   * void on_foreach(const Glib::ustring& tag);
+   * void on_foreach(const Glib::ustring& tag);.
    */
   typedef sigc::slot<void, const Glib::ustring&> SlotForeach;
 
@@ -483,6 +483,7 @@
    * @param slot Slot to be called for each tag.
    */
   void foreach(const SlotForeach& slot);
+  
 
   /** Gets the value that is at the given index for the given tag.
 
@@ -493,6 +494,7 @@
    * otherwise.
    */
   bool get(const Glib::ustring& tag, guint index, Glib::ValueBase& value);
+  
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -502,6 +504,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, char& value);
+  
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -511,6 +514,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, char& value);
+  
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -520,6 +524,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guchar& value);
+  
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -529,6 +534,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, guchar& value);
+  
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -538,6 +544,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, bool& value);
+  
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -547,6 +554,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, bool& value);
+  
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -556,6 +564,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, int& value);
+  
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -565,6 +574,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, int& value);
+  
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -574,6 +584,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint& value);
+  
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -583,6 +594,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, guint& value);
+  
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -592,6 +604,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, long& value);
+  
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -601,6 +614,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, long& value);
+  
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -610,6 +624,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, gulong& value);
+  
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -619,6 +634,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, gulong& value);
+  
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -628,6 +644,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, float& value);
+  
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -637,6 +654,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, float& value);
+  
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -646,6 +664,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, double& value);
+  
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -655,6 +674,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, double& value);
+  
 
   /** Copies the contents for the given tag into the value, possibly merging
    * multiple values into one if multiple values are associated with the tag.
@@ -670,6 +690,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, Glib::ustring& value);
+  
 
   /** Gets the value that is at the given index for the given tag in the given
    * list.
@@ -683,6 +704,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, Glib::ustring& value);
+  
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -692,6 +714,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, Glib::Date& value);
+  
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -701,7 +724,10 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, Glib::Date& value);
+  
 
+  //Variable argument functions are ignored.
+  
 
 };
 
@@ -742,16 +768,16 @@
 namespace Glib
 {
 
-/** A Glib::wrap() method for this object. The dummy boolean parameter is added to disambiguate Gst::TagList::wrap() from Gst::Structure::wrap() (GstTagList is in fact a GstStructure so wrap method becomes ambiguous).
+/** A Glib::wrap() method for this object. The dummy int parameter is added to disambiguate Gst::TagList::wrap() from Gst::Structure::wrap() (GstTagList is in fact a GstStructure so wrap method becomes ambiguous).
  * 
  * @param object The C instance.
+ * @param dummy An unused parameter to disambiguate Gst::TagList::wrap() from Gst::Structure::wrap().  The value of this parameter is irrelevant.
  * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
- * @param dummy An unused parameter to disambiguate Gst::TagList::wrap() from Gst::Structure::wrap().
  * @result A C++ instance that wraps this C instance.
  *
  * @relates Gst::TagList
  */
-Gst::TagList wrap(GstTagList* object, bool take_copy = false, bool dummy = false);
+Gst::TagList wrap(GstTagList* object, int dummy, bool take_copy = false);
 
 #ifndef DOXYGEN_SHOULD_SKIP_THIS
 template <>

Modified: gstreamermm/trunk/gstreamer/src/bin.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/bin.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/bin.hg	Fri Sep 19 03:39:24 2008
@@ -146,8 +146,8 @@
    * This sets the element's parent, and thus takes ownership of the element.
    * An element can only be added to one bin.
    *
-   * If the element's pads are linked to other pads then the pads will be unlinked
-   * before the element is added to the bin.
+   * If the element's pads are linked to other pads then the pads will be
+   * unlinked before the element is added to the bin.
    *
    * MT safe.
    *
@@ -157,6 +157,7 @@
    * @throws std::runtime_error if the Bin does not want to accept the Element.
    */
   Glib::RefPtr<Bin> add(const Glib::RefPtr<Element>& element);
+  _IGNORE(gst_bin_add, gst_bin_add_many)
 
   /** Removes the element from the bin, unparenting it as well. Unparenting the
    * element means that the element will be dereferenced, so if the bin holds
@@ -173,6 +174,7 @@
    * otherwise
    */
   Glib::RefPtr<Bin> remove(const Glib::RefPtr<Element>& element);
+  _IGNORE(gst_bin_remove, gst_bin_remove_many)
 
   //We could add a bool recurse_up = false parameter, 
   //but get_element() and get_element_recurse_up() seem different enough to be separate.
@@ -206,8 +208,6 @@
    */
   _MEMBER_GET(num_children, numchildren, int, int)
 
-  _IGNORE(gst_bin_add, gst_bin_remove, gst_bin_add_many, gst_bin_remove_many)
-
 #m4 _CONVERSION(`GstElement*',`const Glib::RefPtr<Element>&', `Glib::wrap($3, true)')
 
   /** Will be emitted after the element was added to the bin.

Modified: gstreamermm/trunk/gstreamer/src/buffer.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/buffer.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/buffer.hg	Fri Sep 19 03:39:24 2008
@@ -60,10 +60,8 @@
   Glib::RefPtr<Buffer> copy() const;
 
   _WRAP_METHOD(void copy_metadata(const Glib::RefPtr<Buffer>& source_buffer, BufferCopyFlags flags), gst_buffer_copy_metadata)
-
   _WRAP_METHOD(bool is_metadata_writable() const, gst_buffer_is_metadata_writable)
 
-  //This is not const because it sometimes returns the same buffer:
   /** Makes a writable buffer from the given buffer. If the source buffer is
    * already writable, this will simply return the same buffer. A copy will
    * otherwise be made.
@@ -131,6 +129,7 @@
    */
   _MEMBER_GET(malloc_data, malloc_data, guint8*, guint8*)
 
+  //gst_buffer_stamp is depricated so ignore it.
   _IGNORE(gst_buffer_stamp)
 };
 

Modified: gstreamermm/trunk/gstreamer/src/bus.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/bus.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/bus.hg	Fri Sep 19 03:39:24 2008
@@ -134,6 +134,7 @@
    * @return The event source id. MT safe.
    */
   guint add_watch(const SlotMessage& slot, int priority = Glib::PRIORITY_DEFAULT);
+  _IGNORE(gst_bus_add_watch, gst_bus_add_watch_full)
 
   /** Removes bus watch with event source id from main context.
    *
@@ -153,15 +154,15 @@
    * @param slot The handler slot to install.
    */
   void set_sync_handler(const SlotMessageSync& slot);
-
-  _IGNORE(gst_bus_set_sync_handler,
-         gst_bus_sync_handler,
-         gst_bus_sync_signal_handler,
-         gst_bus_async_signal_func)
+  _IGNORE(gst_bus_set_sync_handler, gst_bus_sync_signal_handler)
+  _IGNORE(gst_bus_async_signal_func)
 
   _WRAP_METHOD(void disable_sync_message_emission(), gst_bus_disable_sync_message_emission)
   _WRAP_METHOD(void enable_sync_message_emission(), gst_bus_enable_sync_message_emission)
+
   _WRAP_METHOD(void add_signal_watch(int priority = Glib::PRIORITY_DEFAULT), gst_bus_add_signal_watch_full)
+  _IGNORE(gst_bus_add_signal_watch)
+
   _WRAP_METHOD(void remove_signal_watch(), gst_bus_remove_signal_watch)
   _WRAP_METHOD(Glib::RefPtr<Message> poll(MessageType message_type, ClockTimeDiff timeout), gst_bus_poll)
 
@@ -181,10 +182,6 @@
    *
    */
   _WRAP_SIGNAL(void sync_message(const Glib::RefPtr<Message>& message), "sync-message")
-
-  _IGNORE(gst_bus_add_watch,
-          gst_bus_add_watch_full,
-          gst_bus_add_signal_watch)
 };
 
 } //namespace Gst

Modified: gstreamermm/trunk/gstreamer/src/caps.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/caps.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/caps.hg	Fri Sep 19 03:39:24 2008
@@ -102,12 +102,14 @@
    * @param structure The Gst::Structure to append.
    */
   void append_structure(const Structure& structure);
+  _IGNORE(gst_caps_append_structure)
 
   /** Appends a structure to caps if its not already expressed by caps.
    *
    * @param structure The Gst::Structure to merge.
    */
   void merge_structure(const Structure& structure);
+  _IGNORE(gst_caps_merge_structure)
 
   /** Finds the structure in caps that has the index @a idx, and returns it.
    *
@@ -115,6 +117,7 @@
    * @return The Gst::Structure corresponding to index.
    */
   Structure get_structure(guint idx) const;
+  _IGNORE(gst_caps_get_structure)
 
   _WRAP_METHOD(void remove_structure(guint idx), gst_caps_remove_structure)
   _WRAP_METHOD(guint size() const, gst_caps_get_size)
@@ -128,6 +131,7 @@
    * @param value The value which the field should be set to.
    */
   void set_simple(const Glib::ustring& name, const Glib::ValueBase& value);
+  _IGNORE(gst_caps_set_simple, gst_caps_set_simple_valist)
 
   /** Sets fields in a simple Gst::Caps. A simple Gst::Caps is one that only
    * has one structure. This method, like the Gst::Structure::set_field()
@@ -141,8 +145,6 @@
   template <class DataType>
   void set_simple(const Glib::ustring& name, const DataType& data);
 
-  _IGNORE(gst_caps_set_simple, gst_caps_set_simple_valist)
-
   _WRAP_METHOD(bool is_any() const, gst_caps_is_any)
   _WRAP_METHOD(bool empty() const, gst_caps_is_empty)
   _WRAP_METHOD(bool is_fixed() const, gst_caps_is_fixed)
@@ -176,8 +178,6 @@
   _WRAP_METHOD(Glib::RefPtr<Caps> get_difference(const Glib::RefPtr<const Caps>& subtrahend_caps) const, gst_caps_subtract)
   _WRAP_METHOD(Glib::RefPtr<Caps> make_writable(), gst_caps_make_writable)
   _WRAP_METHOD(void truncate(), gst_caps_truncate)
-  
-  _IGNORE(gst_caps_copy, gst_caps_set_simple, gst_caps_make_writable, gst_caps_append_structure, gst_caps_merge_structure, gst_caps_get_structure)
 };
 
 #ifndef DOXYGEN_SHOULD_SKIP_THIS

Modified: gstreamermm/trunk/gstreamer/src/childproxy.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/childproxy.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/childproxy.hg	Fri Sep 19 03:39:24 2008
@@ -62,9 +62,7 @@
    * needed.
    */
   Glib::RefPtr<ChildProxy> get_proxy_property(const Glib::ustring& name, Glib::ValueBase& value);
-
-  //This doesn't seem useful: void get_proxy_valist(const Glib::ustring& first_prop_name, va_list& var_args);
-  _IGNORE(gst_child_proxy_get_proxy_valist)
+  _IGNORE(gst_child_proxy_get_property, gst_child_proxy_get, gst_child_proxy_get_valist)
 
   /** Sets a single property using the Gst::ChildProxy mechanism.
    * @param name The property to get.
@@ -72,19 +70,19 @@
    * @return This Gst::ChildProxy so more properties can be set.
    */
   Glib::RefPtr<ChildProxy> set_proxy_property(const Glib::ustring& name, const Glib::ValueBase& value);
-
-  //This doesn't seem useful: void set_proxy_valist(const Glib::ustring& first_prop_name, const va_list& var_args);
-  _IGNORE(gst_child_proxy_set_proxy_valist)
+  _IGNORE(gst_child_proxy_set_property, gst_child_proxy_set, gst_child_proxy_set_valist)
 
   /** Emits the "child-added" signal.
    * @param child The newly added child.
    */
   void child_added(const Glib::RefPtr<Gst::Object>& child);
+  _IGNORE(gst_child_proxy_child_added)
 
   /** Emits the "child-removed" signal.
    * @param child The newly added child.
    */
   void child_removed(const Glib::RefPtr<Gst::Object>& child);
+  _IGNORE(gst_child_proxy_child_removed)
 
 #m4 _CONVERSION(`GstObject*',`const Glib::RefPtr<Gst::Object>&',`Glib::wrap($3, true)')
 
@@ -103,9 +101,6 @@
   /** virtual method to get the children count
    */
   _WRAP_VFUNC(guint get_children_count() const, "get_children_count")
-
-  _IGNORE(gst_child_proxy_get, gst_child_proxy_set)
 };
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/clock.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/clock.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/clock.hg	Fri Sep 19 03:39:24 2008
@@ -78,8 +78,17 @@
   typedef sigc::slot< bool, const Glib::RefPtr<Clock>&, ClockTime, const Glib::RefPtr<ClockID>& > SlotClock;
 
   _WRAP_METHOD(ClockTime get_time() const, gst_clock_id_get_time)
-
   _WRAP_METHOD(ClockReturn wait(ClockTimeDiff& jitter), gst_clock_id_wait)
+
+  /** Perform a blocking wait without requiring a jitter argument.
+   * Gst::ClockID should have been created with
+   * Gst::Clock::create_single_shot_id() or Gst::Clock::create_periodic_id()
+   * and should not have been unscheduled with a call to unschedule().
+   * @return The result of the blocking wait. Gst::CLOCK_EARLY will be returned
+   * if the current clock time is past the time of Gst::ClockID, Gst::CLOCK_OK
+   * if Gst::ClockID was scheduled in time. Gst::CLOCK_UNSCHEDULED if
+   * Gst::ClockID was unscheduled with unschedule().
+   */
   ClockReturn wait();
 
   /** Register a slot on the given Gst::ClockID id with the given slot. When
@@ -91,6 +100,7 @@
    * @return The result of the non blocking wait. MT safe. 
    */
   ClockReturn wait_async(const SlotClock& slot);
+  _IGNORE(gst_clock_id_wait_async)
 
   _WRAP_METHOD(void unschedule(), gst_clock_id_unschedule)
 };
@@ -169,7 +179,8 @@
  * until it is unscheduled. To schedule a sync periodic callback,
  * Gst::ClockID::wait() should be called repeadedly.
  *
- * The async callbacks can happen from any thread, either provided by the core or from a streaming thread. The application should be prepared for this.
+ * The async callbacks can happen from any thread, either provided by the core
+ * or from a streaming thread. The application should be prepared for this.
  *
  * A Gst::ClockID that has been unscheduled cannot be used again for any wait
  * operation, a new Gst::ClockID should be created.
@@ -230,7 +241,6 @@
   _WRAP_METHOD(void get_calibration(ClockTime& internal, ClockTime& external, ClockTime& rate_num, ClockTime& rate_denom), gst_clock_get_calibration)
   _WRAP_METHOD(void set_calibration(ClockTime internal, ClockTime external, ClockTime rate_num, ClockTime rate_denom), gst_clock_set_calibration)
   
-
   _WRAP_PROPERTY("stats", bool)
   _WRAP_PROPERTY("timeout", guint64)
   _WRAP_PROPERTY("window-size", int)

Modified: gstreamermm/trunk/gstreamer/src/element.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/element.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/element.hg	Fri Sep 19 03:39:24 2008
@@ -134,7 +134,6 @@
   _CTOR_DEFAULT
 
 public:
-
   /** Links this source element to the @dest element.
    * The link must be from source to destination - the other direction will not be tried. 
    * The function looks for existing pads that aren't linked yet. It will request new pads
@@ -147,13 +146,18 @@
    * @throws std::runtime_error If the elements could not be linked.
    */
   Glib::RefPtr<Element> link(const Glib::RefPtr<Element>& dest);
+  _IGNORE(gst_element_link, gst_element_link_many)
 
   _WRAP_METHOD(bool add_pad(const Glib::RefPtr<Pad>& pad), gst_element_add_pad)
   _WRAP_METHOD(void create_all_pads(), gst_element_create_all_pads)
 
-  //TODO: Can these be const?
+  //TODO: Can this be const?
   Glib::RefPtr<Pad> create_compatible_pad(const Glib::RefPtr<Pad>& pad, const Glib::RefPtr<Caps>& caps);
+  _IGNORE(gst_element_get_compatible_pad)
+
+  //TODO: Can this be const?
   Glib::RefPtr<PadTemplate> get_compatible_pad_template(const Glib::RefPtr<PadTemplate>& padtemplate);
+  _IGNORE(gst_element_get_compatible_pad_template)
 
   //TODO: The documentation says "The pad should be released with gst_element_release_request_pad().", which is odd. murrayc
   _WRAP_METHOD(Glib::RefPtr<Pad> get_request_pad(const Glib::ustring& name), gst_element_get_request_pad)
@@ -167,6 +171,7 @@
   _WRAP_METHOD(Iterator<Pad> iterate_sink_pads(), gst_element_iterate_sink_pads)
   _WRAP_METHOD(Iterator<Pad> iterate_src_pads(), gst_element_iterate_src_pads)
   _WRAP_METHOD(void unlink(const Glib::RefPtr<Element>& other_element), gst_element_unlink)
+  _IGNORE(gst_element_unlink_many)
 
   //TODO: Make this like link()?
   _WRAP_METHOD(bool link_pads(const Glib::ustring& padname, const Glib::RefPtr<Element>& other_element, const Glib::ustring& others_padname), gst_element_link_pads)
@@ -177,8 +182,8 @@
   _WRAP_METHOD(bool link_pads_filtered(const Glib::ustring& padname, const Glib::RefPtr<Element>& other_element, const Glib::ustring& others_padname, const Glib::RefPtr<Caps>& filter), gst_element_link_pads_filtered)
 
   //TODO: Make this like link()?
-
   _WRAP_METHOD(bool link_filtered(const Glib::RefPtr<Element>& other_element, const Glib::RefPtr<Caps>& filter), gst_element_link_filtered)
+
   _WRAP_METHOD(void set_base_time(ClockTime time), gst_element_set_base_time)
   _WRAP_METHOD(ClockTime get_base_time() const, gst_element_get_base_time)
   _WRAP_METHOD(void set_bus(const Glib::RefPtr<Bus>& bus), gst_element_set_bus)
@@ -190,7 +195,6 @@
   _WRAP_METHOD(Glib::RefPtr<Index> get_index(), gst_element_get_index)
   _WRAP_METHOD(Glib::RefPtr<const Index > get_index() const, gst_element_get_index, constversion)
 
-
   _WRAP_METHOD(Glib::RefPtr<ElementFactory> get_factory(), gst_element_get_factory, refresult)
   _WRAP_METHOD(Glib::RefPtr<const ElementFactory> get_factory() const, gst_element_get_factory, refresult, constversion)
 
@@ -256,11 +260,10 @@
    * @return true if the event was handled. MT safe. 
    */
   bool send_event(const Glib::RefPtr<Event>& event);
+  _IGNORE(gst_element_send_event)
 
   _WRAP_METHOD(bool implements_interface(GType iface_type), gst_element_implements_interface)
 
-  _IGNORE(gst_element_link, gst_element_unlink_many, gst_element_get_compatible_pad, gst_element_get_compatible_pad_template, gst_element_link_many, gst_element_send_event)
-
   /** This signals that the element will not generate more dynamic pads.
    */
   _WRAP_SIGNAL(void no_more_pads(), "no-more-pads")
@@ -436,4 +439,3 @@
 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/elementfactory.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/elementfactory.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/elementfactory.hg	Fri Sep 19 03:39:24 2008
@@ -85,7 +85,8 @@
   _WRAP_METHOD(static Glib::RefPtr<Element> create_element(const Glib::ustring& factory_name, const Glib::ustring& name), gst_element_factory_make)
   
   /** Create a new element of the type defined by the given element factory, 
-   * with a guaranteed unique name consisting of the element factory name and a number.
+   * with a guaranteed unique name consisting of the element factory name and a
+   * number.
    * @param factoryname A named factory to instantiate.
    * @param name Name of new element.
    * @return New Gst::Element or an empty RefPtr if unable to create element.
@@ -109,9 +110,6 @@
 
 #m4 _CONVERSION(`const GList*', `Glib::ListHandle< Glib::RefPtr<const PadTemplate> >', `$2(const_cast<GList*>($3), Glib::OWNERSHIP_NONE)')
   _WRAP_METHOD(Glib::ListHandle< Glib::RefPtr<const PadTemplate> > get_static_pad_templates(), gst_element_factory_get_static_pad_templates)
-
-  _IGNORE(gst_element_register)
 };
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/event.ccg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/event.ccg	(original)
+++ gstreamermm/trunk/gstreamer/src/event.ccg	Fri Sep 19 03:39:24 2008
@@ -47,14 +47,6 @@
   return Gst::wrap(gst_event_copy(gobj()));
 }
 
-Structure Event::get_structure() const
-{
-  static Structure structure;
-
-  GstStructure* gst_structure = const_cast<GstStructure*>(gst_event_get_structure(const_cast<GstEvent*>(gobj())));
-  return Structure(gst_structure, true /* take_copy */);
-}
-
 Glib::RefPtr<Event> Event::create_writable()
 {
   return

Modified: gstreamermm/trunk/gstreamer/src/event.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/event.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/event.hg	Fri Sep 19 03:39:24 2008
@@ -128,10 +128,8 @@
    */
   Glib::RefPtr<Event> copy() const;
 
-  /** Get the structure of an event.
-   * @return The Gst::Structure of the event.
-   */
-  Structure get_structure() const;
+  _WRAP_METHOD(const Structure get_structure() const, gst_event_get_structure)
+  _WRAP_METHOD(bool has_name(const Glib::ustring& name), gst_event_has_name)
 
   /** Checks if an event is writable.  If not, a writable copy is made and
    * returned.
@@ -199,6 +197,7 @@
    * @param async A pointer to store the async-flag in.
    */
   void parse(Format& format, gint64& minsize, gint64& maxsize, bool& async);
+  _IGNORE(gst_event_parse_buffer_size)
 };
 
 /** An end of stream event. See create() for more details.
@@ -301,6 +300,7 @@
    * @param latency A pointer to store the latency in. 
    */
   void parse(ClockTime& latency);
+  _IGNORE(gst_event_parse_latency)
 };
 
 /** A Navigation event.  See create() for more details.
@@ -394,6 +394,7 @@
    * Since 0.10.6 
    */
   void parse(bool& update, double& rate, Format& format, gint64& start, gint64& stop, gint64& position, double& applied_rate);
+  _IGNORE(gst_event_parse_new_segment, gst_event_parse_new_segment_full)
 };
 
 /** A QOS event.  See create() for more details.
@@ -450,6 +451,7 @@
    * @param timestamp A pointer to store the timestamp in.
    */
   void parse(double& proportion, ClockTimeDiff& diff, ClockTime& timestamp);
+  _IGNORE(gst_event_parse_qos)
 };
 
 /** A seek event.  See create() for more details.
@@ -514,6 +516,7 @@
    * @param stop Result location for the stop postion expressed in format.
    */
   void parse(double& rate, Format& format, SeekFlags& flags, SeekType& start_type, gint64& start, SeekType& stop_type, gint64& stop);
+  _IGNORE(gst_event_parse_seek)
 };
 
 /** A tag event.
@@ -533,6 +536,7 @@
    * @return Metadata list.
    */
   TagList parse();
+  _IGNORE(gst_event_parse_tag)
 };
 
 } //namespace Gst

Modified: gstreamermm/trunk/gstreamer/src/filter.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/filter.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/filter.hg	Fri Sep 19 03:39:24 2008
@@ -28,7 +28,6 @@
  */
 class Filter
 {
-
 public:
   /** For example, bool on_filter(const Glib::RefPtr<Glib::Object>& object);.
    * The filter function should return true if object is a match, false

Modified: gstreamermm/trunk/gstreamer/src/ghostpad.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/ghostpad.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/ghostpad.hg	Fri Sep 19 03:39:24 2008
@@ -27,7 +27,8 @@
 {
 
 /** Gst::GhostPad â Pseudo link pads.
- * Gst::GhostPad are useful when organizing pipelines with Gst::Bin like elements.
+ * Gst::GhostPad are useful when organizing pipelines with Gst::Bin like
+ * elements.
  * The idea here is to create hierarchical element graphs. The bin element
  * contains a sub-graph. Now one would like to treat the bin-element like
  * another Gst::Element. This is where Gst::GhostPad come into play. A
@@ -102,4 +103,3 @@
 };
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/gst_docs_override.xml
==============================================================================
--- gstreamermm/trunk/gstreamer/src/gst_docs_override.xml	(original)
+++ gstreamermm/trunk/gstreamer/src/gst_docs_override.xml	Fri Sep 19 03:39:24 2008
@@ -51,4 +51,42 @@
 </return>
 </function>
 
+<function name="gst_clock_id_wait">
+<description>
+Perform a blocking wait on the Gst::ClockID. 
+The Gst::ClockID should have been created with
+Gst::Clock::create_single_shot_id() or Gst::Clock::create_periodic_id()
+and should not have been unscheduled with a call to unschedule(). 
+
+If this function returns #GST_CLOCK_OK or #GST_CLOCK_EARLY,
+the @jitter argument will contain the difference
+against the clock and the time of the Gst::ClockID when this method was
+called.
+Positive values indicate how late the Gst::ClockID was relative to the clock
+(in which case this function will return #GST_CLOCK_EARLY). 
+Negative values indicate how much time was spent waiting on the clock 
+before this function returned.
+
+
+</description>
+<parameters>
+<parameter name="id">
+<parameter_description> The #GstClockID to wait on
+</parameter_description>
+</parameter>
+<parameter name="jitter">
+<parameter_description> A pointer that will contain the jitter.
+</parameter_description>
+</parameter>
+</parameters>
+<return> the result of the blocking wait. #GST_CLOCK_EARLY will be returned
+if the current clock time is past the time of the Gst::ClockID, #GST_CLOCK_OK
+if Gst::ClockID was scheduled in time. #GST_CLOCK_UNSCHEDULED if Gst::ClockID
+was unscheduled with unschedule().
+
+MT safe.
+</return>
+</function>
+
+
 </root>

Modified: gstreamermm/trunk/gstreamer/src/indexfactory.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/indexfactory.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/indexfactory.hg	Fri Sep 19 03:39:24 2008
@@ -48,8 +48,8 @@
 
   _WRAP_METHOD(static Glib::RefPtr<Index> make(const Glib::ustring& factory_name), gst_index_factory_make)
 
+  //Destruction occurs in destructor.
   _IGNORE(gst_index_factory_destroy)
 };
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/interface.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/interface.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/interface.hg	Fri Sep 19 03:39:24 2008
@@ -42,6 +42,8 @@
   template <class T_CastTo>
   static Glib::RefPtr< ElementInterfaced<T_CastTo> > cast(const Glib::RefPtr<Element>& element);
 
+  //For some reason, gmmproc thinks that all of the GstElement functions (and
+  //signals) are also members of GstImplementsInterface.
   _IGNORE(gst_element_remove_pad,
           gst_element_change_state,
           gst_element_set_locked_state,

Modified: gstreamermm/trunk/gstreamer/src/iterator.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/iterator.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/iterator.hg	Fri Sep 19 03:39:24 2008
@@ -118,7 +118,7 @@
   IteratorBase<CppType>& operator=(const IteratorBase<CppType>& other);
 
 #ifndef DOXYGEN_SHOULD_SKIP_THIS
-  gpointer current;         // The current element the iterator is referencing.
+  void* current;         // The current element the iterator is referencing.
   IteratorResult current_result; // The current result of a next() call.
 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
 
@@ -322,7 +322,7 @@
   take_ownership = other.take_ownership;
   other.take_ownership = temp_take_ownership;
 
-  gpointer const temp_current = current;
+  void* const temp_current = current;
   current = other.current;
   other.current = temp_current;
 

Modified: gstreamermm/trunk/gstreamer/src/message.ccg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/message.ccg	(original)
+++ gstreamermm/trunk/gstreamer/src/message.ccg	Fri Sep 19 03:39:24 2008
@@ -47,14 +47,6 @@
   return Gst::wrap(gst_message_copy(gobj()));
 }
 
-Structure Message::get_structure() const
-{
-  static Structure structure;
-
-  GstStructure* gst_structure = const_cast<GstStructure*>(gst_message_get_structure(const_cast<GstMessage*>(gobj())));
-  return Structure(gst_structure, true /* take_copy */);
-}
-
 Glib::RefPtr<Message> Message::create_writable()
 {
   return Gst::wrap(gst_message_make_writable(gobj()));
@@ -249,14 +241,14 @@
     avg_out, buffering_left);
 }
 
-void MessageBuffering::get_stats(BufferingMode& mode, int& avg_in, int& avg_out,
-gint64& buffering_left)
+void MessageBuffering::parse_stats(BufferingMode& mode, int& avg_in,
+int& avg_out, gint64& buffering_left)
 {
   gst_message_parse_buffering_stats(gobj(), (GstBufferingMode*)(&mode),
     &avg_in, &avg_out, &buffering_left);
 }
 
-BufferingMode MessageBuffering::get_stats_buffering_mode()
+BufferingMode MessageBuffering::parse_stats_buffering_mode()
 {
   GstBufferingMode mode;
 
@@ -265,7 +257,7 @@
   return (BufferingMode)(mode);
 }
 
-int MessageBuffering::get_stats_avg_in()
+int MessageBuffering::parse_stats_avg_in()
 {
   int avg_in;
 
@@ -273,7 +265,7 @@
   return avg_in;
 }
 
-int MessageBuffering::get_stats_avg_out()
+int MessageBuffering::parse_stats_avg_out()
 {
   int avg_out;
 
@@ -281,7 +273,7 @@
   return avg_out;
 }
 
-gint64 MessageBuffering::get_stats_buffering_left()
+gint64 MessageBuffering::parse_stats_buffering_left()
 {
   gint64 buffering_left;
 

Modified: gstreamermm/trunk/gstreamer/src/message.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/message.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/message.hg	Fri Sep 19 03:39:24 2008
@@ -64,15 +64,19 @@
  _CLASS_GSTMINIOBJECT(Message, GstMessage, GST_MESSAGE, Gst::MiniObject, GstMiniObject)
  _IGNORE(gst_message_ref, gst_message_unref)
 public:
+  /** Wrap a GstMessage* in a C++ instance, creating an instance of a
+   *  derived Gst::Message.  Gst::wrap() would just create a Gst::Message
+   *  (rather than a derived one) because the derived Gst::Message classes
+   *  do not correspond to GType types in the GStreamer API.
+   */
+  static Glib::RefPtr<Message> wrap(GstMessage* message, bool take_copy=false);
+
   /** Creates a copy of the message.  MT safe.
    * @return A copy of the message.
    */
    Glib::RefPtr<Message> copy() const;
 
-  /** Get the structure of a message.
-   * @return The Gst::Structure of the message.
-   */
-  Structure get_structure() const;
+  _WRAP_METHOD(const Structure get_structure() const, gst_message_get_structure)
 
   /** Checks if a message is writable. If not, a writable copy is made and
    * returned.
@@ -80,14 +84,6 @@
    */
    Glib::RefPtr<Message> create_writable();
 
-public:
-  /** Wrap a GstMessage* in a C++ instance, creating an instance of a
-   *  derived Gst::Message.  Gst::wrap() would just create a Gst::Message
-   *  (rather than a derived one) because the derived Gst::Message classes
-   *  do not correspond to GType types in the GStreamer API.
-   */
-  static Glib::RefPtr<Message> wrap(GstMessage* message, bool take_copy=false);
-
   /** Get the GstMessageType of message.
    */
   _MEMBER_GET(message_type, type, MessageType, GstMessageType)
@@ -154,6 +150,7 @@
    * @param debug Location for the debug message.
    */
   void parse(Glib::Error& error, std::string& debug);
+  _IGNORE(gst_message_parse_error)
 
   /** Extracts and returns the Glib::Error from the Gst::MessageError.
    *
@@ -198,6 +195,7 @@
    * @param debug Location for the debug message.
    */
   void parse(Glib::Error& error, std::string& debug);
+  _IGNORE(gst_message_parse_warning)
 
   /** Extracts and returns the Glib::Error from the Gst::MessageWarning.
    *
@@ -243,6 +241,7 @@
    * @param debug Location for the debug message.
    */
   void parse(Glib::Error& error, std::string& debug);
+  _IGNORE(gst_message_parse_info)
 
   /** Extracts and returns the Glib::Error from the Gst::MessageInfo.
    *
@@ -285,6 +284,7 @@
    * @return A copy of the Gst::TagList.
    */
   TagList parse();
+  _IGNORE(gst_message_parse_tag)
 };
 
 /** A buffering message.
@@ -320,6 +320,7 @@
    * @return The percent as an integer.
    */
   int parse();
+  _IGNORE(gst_message_parse_buffering)
 
   /** Configures the buffering stats values in message.
    *
@@ -331,6 +332,7 @@
    * Since 0.10.20.
    */
   void set_stats(BufferingMode mode, int avg_in, int avg_out, gint64 buffering_left);
+  _IGNORE(gst_message_set_buffering_stats)
 
   /** Extracts the buffering stats values from message.
    *
@@ -341,32 +343,33 @@
    *
    * Since 0.10.20.
    */
-  void get_stats(BufferingMode& mode, int& avg_in, int& avg_out, gint64& buffering_left);
+  void parse_stats(BufferingMode& mode, int& avg_in, int& avg_out, gint64& buffering_left);
+  _IGNORE(gst_message_parse_buffering_stats)
 
   /** Extracts and returns the buffering mode from message.
    *
    * @return The buffering mode.
    */
-  BufferingMode get_stats_buffering_mode();
+  BufferingMode parse_stats_buffering_mode();
 
   /** Extracts and returns the average input rate from message.
    *
    * @return The average input rate.
    */
-  int get_stats_avg_in();
+  int parse_stats_avg_in();
 
   /** Extracts and returns the average output rate from message.
    *
    * @return The average output rate.
    */
-  int get_stats_avg_out();
+  int parse_stats_avg_out();
 
   /** Extracts and returns the buffering time in milliseconds remaining from
    * message.
    *
    * @return The buffering time remaining.
    */
-  gint64 get_stats_buffering_left();
+  gint64 parse_stats_buffering_left();
 };
 
 /** A state change message.
@@ -398,6 +401,7 @@
    * @param pending The pending (target) state.
    */
   void parse(State& oldstate, State& newstate, State& pending);
+  _IGNORE(gst_message_parse_state_changed)
 
   /** Extracts and returns the new state from the Gst::MessageStateChanged.
    *
@@ -472,6 +476,7 @@
    * @param ready Location in which to hold the ready flag.
    */
   void parse(Glib::RefPtr<Clock>& clock, bool& ready);
+  _IGNORE(gst_message_parse_clock_provide)
 
   /** Extracts and returns the clock from the Gst::MessageClockProvide. The
    * clock object returned remains valid until the message is freed.
@@ -517,6 +522,7 @@
    * @return The lost clock.
    */
   Glib::RefPtr<Clock> parse();
+  _IGNORE(gst_message_parse_clock_lost)
 };
 
 /** A new clock message.
@@ -544,6 +550,7 @@
    * @return The selected new clock.
    */
   Glib::RefPtr<Clock> parse();
+  _IGNORE(gst_message_parse_new_clock)
 };
 
 /** An application message.
@@ -664,6 +671,7 @@
    * @param position Result location for the position.
    */
   void parse(Format& format, gint64& position);
+  _IGNORE(gst_message_parse_segment_start)
 
   /** Extracts and returns the position from the segment start message.
    *
@@ -710,6 +718,7 @@
    * @param position Result location for the position.
    */
   void parse(Format& format, gint64& position);
+  _IGNORE(gst_message_parse_segment_done)
 
   /** Extracts and returns the position from the segment done message.
    *
@@ -762,6 +771,7 @@
    * @param position Result location for the position.
    */
   void parse(Format& format, gint64& position);
+  _IGNORE(gst_message_parse_duration)
 
   /** Extracts and returns the duration from the duration message. The duration
    * might be Gst::CLOCK_TIME_NONE, which indicates that the duration has
@@ -812,7 +822,9 @@
 public:
   explicit MessageAsyncStart(GstMessage* castitem);
 
-  /** Creates a new async message.  This message is posted by elements when they start an ASYNC state change. new_base_time is set to true when the element lost its state when it was PLAYING.
+  /** Creates a new async message.  This message is posted by elements when
+   * they start an ASYNC state change. new_base_time is set to true when the
+   * element lost its state when it was PLAYING.
    *
    * @param src The object originating the message.
    * @param new_base_time If a new base_time should be set on the element.
@@ -832,6 +844,7 @@
    * Since 0.10.13.
    */
   bool parse();
+  _IGNORE(gst_message_parse_async_start)
 };
 
 /** An asynchronous done message.

Modified: gstreamermm/trunk/gstreamer/src/pad.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/pad.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/pad.hg	Fri Sep 19 03:39:24 2008
@@ -119,6 +119,7 @@
    * @return The Gst::Caps of this pad template.
    */
   Glib::RefPtr<const Caps> get_pad_template_caps() const;
+  _IGNORE(gst_pad_get_pad_template_caps)
 
   _WRAP_METHOD(bool set_caps (const Glib::RefPtr<Caps>& caps), gst_pad_set_caps)
   _WRAP_METHOD(Glib::RefPtr<Pad> get_peer(), gst_pad_get_peer)
@@ -145,6 +146,7 @@
    * pad was already in the requested state. MT safe.
    */
   bool set_blocked_async(const SlotBlock& slot, bool blocked = true);
+  _IGNORE(gst_pad_set_blocked_async)
 
   _WRAP_METHOD(bool is_blocked() const, gst_pad_is_blocked)
   _WRAP_METHOD(bool is_blocking() const, gst_pad_is_blocking)
@@ -172,6 +174,7 @@
    * @return The handler id which may be used to remove the connection later.
    */
   gulong add_data_probe(const SlotData& slot);
+  _IGNORE(gst_pad_add_data_probe, gst_pad_add_data_probe_full)
 
   /** Adds a probe that will be called for all buffers passing through a pad.
    * See add_data_probe() for more information.
@@ -180,6 +183,7 @@
    * @return The handler id.
    */
   gulong add_buffer_probe(const SlotData& slot);
+  _IGNORE(gst_pad_add_buffer_probe, gst_pad_add_buffer_probe_full)
 
   /** Adds a probe that will be called for all events passing through a pad.
    * See add_data_probe() for more information.
@@ -188,63 +192,75 @@
    * @return The handler id.
    */
   gulong add_event_probe(const SlotData& slot);
-
-  _IGNORE(gst_pad_add_data_probe,
-          gst_pad_add_event_probe,
-          gst_pad_add_buffer_probe,
-          gst_pad_add_data_probe_full,
-          gst_pad_add_event_probe_full,
-          gst_pad_add_buffer_probe_full)
-
-  _IGNORE_SIGNAL(have_data)
+  _IGNORE(gst_pad_add_event_probe, gst_pad_add_event_probe_full)
 
   _WRAP_METHOD(void remove_data_probe(guint handler_id), gst_pad_remove_data_probe)
   _WRAP_METHOD(void remove_buffer_probe(guint handler_id), gst_pad_remove_buffer_probe)
   _WRAP_METHOD(void remove_event_probe(guint handler_id), gst_pad_remove_event_probe)
 
+  //This is handwritten because conversion from Glib::RefPtr<Buffer>& to
+  //GstBuffer** is difficult.
   FlowReturn alloc_buffer(guint64 offset, int size, const Glib::RefPtr<Caps>& caps, Glib::RefPtr<Buffer>& buf);
+  _IGNORE(gst_pad_alloc_buffer)
+
+  //This is handwritten because conversion from Glib::RefPtr<Buffer>& to
+  //GstBuffer** is difficult.
   FlowReturn alloc_buffer_and_set_caps(guint64 offset, int size, const Glib::RefPtr<Caps>& caps, Glib::RefPtr<Buffer>& buf);
+  _IGNORE(gst_pad_alloc_buffer_and_set_caps)
 
+  //This is handwritten because conversion from Glib::RefPtr<Buffer>& to
+  //GstBuffer** is difficult.
   FlowReturn get_range(guint64 offset, guint size, Glib::RefPtr<Buffer>& buffer);
+  _IGNORE(gst_pad_get_range)
 
   _WRAP_METHOD(bool accept_caps(const Glib::RefPtr<Caps>& caps), gst_pad_accept_caps)
-
   _WRAP_METHOD(Glib::RefPtr<Caps> proxy_getcaps(), gst_pad_proxy_getcaps)
   _WRAP_METHOD(Glib::RefPtr<const Caps > proxy_getcaps() const, gst_pad_proxy_getcaps, constversion)
-
   _WRAP_METHOD(bool proxy_setcaps(const Glib::RefPtr<Caps>& caps), gst_pad_proxy_setcaps)
-
   _WRAP_METHOD(void fixate_caps(const Glib::RefPtr<Caps>& caps), gst_pad_fixate_caps)
-
   _WRAP_METHOD(bool peer_accept_caps(const Glib::RefPtr<Caps>& caps), gst_pad_peer_accept_caps)
 
   // This method is written manually because an extra ref is necessary
   FlowReturn push(const Glib::RefPtr<Buffer>& buffer);
+  _IGNORE(gst_pad_push)
 
   // This method is written manually because an extra ref is necessary
   bool push_event(const Glib::RefPtr<Event>& event);
-
+  _IGNORE(gst_pad_push_event)
 
   _WRAP_METHOD(bool check_pull_range() const, gst_pad_check_pull_range)
+
   FlowReturn pull_range(guint64 offset, guint size, Glib::RefPtr<Buffer>& buffer);
+  _IGNORE(gst_pad_pull_range)
+
   _WRAP_METHOD(bool activate_pull(bool active = true), gst_pad_activate_pull)
   _WRAP_METHOD(bool activate_push(bool active = true), gst_pad_activate_push)
 
   // This method is written manually because an extra ref is necessary
   bool send_event(const Glib::RefPtr<Event>& event);
+  _IGNORE(gst_pad_send_event)
+
   _WRAP_METHOD(bool event_default(const Glib::RefPtr<Event>& event), gst_pad_event_default)
   _WRAP_METHOD(bool query(const Glib::RefPtr<Query>& query), gst_pad_query)
   _WRAP_METHOD(bool peer_query(const Glib::RefPtr<Query>& query), gst_pad_peer_query)
   _WRAP_METHOD(bool query_default(const Glib::RefPtr<Query>& query), gst_pad_query_default)
-  bool query_position(Format& format) const;
   _WRAP_METHOD(bool query_position(Format& format, gint64& position) const, gst_pad_query_position)
-  bool query_duration(Format& format) const;
+
+  bool query_position(Format& format) const;
+
   _WRAP_METHOD(bool query_duration(Format& format, gint64& duration) const, gst_pad_query_duration)
-  bool query_convert(Format src_format, gint64 src_value, Format& dst_format, gint64& dst_value) const;
-  bool query_peer_position(Format& format) const;
+
+  bool query_duration(Format& format) const;
+
+  _WRAP_METHOD(bool query_convert(Format src_format, gint64 src_value, Format& dst_format, gint64& dst_value) const, gst_pad_query_convert)
   _WRAP_METHOD(bool query_peer_position(Format& format, gint64& position) const, gst_pad_query_peer_position)
-  bool query_peer_duration(Format& format) const;
+
+  bool query_peer_position(Format& format) const;
+
    _WRAP_METHOD(bool query_peer_duration(Format& format, gint64& duration) const, gst_pad_query_peer_duration)
+
+  bool query_peer_duration(Format& format) const;
+
    _WRAP_METHOD(bool query_peer_convert(Format src_format, gint64 src_value, Format& dst_format, gint64& dst_value) const, gst_pad_query_peer_convert)
 
 #m4 _CONVERSION(`const GstQueryType*',`Glib::ArrayHandle<QueryType>',`Glib::ArrayHandle<QueryType>((QueryType*)($3), Glib::OWNERSHIP_SHALLOW)')
@@ -257,29 +273,37 @@
 
   // This method is written manually because an extra ref is necessary
   FlowReturn chain(const Glib::RefPtr<Buffer>& buffer);
+  _IGNORE(gst_pad_chain)
 
   _WRAP_METHOD(bool pause_task() , gst_pad_pause_task)
   _WRAP_METHOD(bool stop_task() , gst_pad_stop_task)
   _WRAP_METHOD(bool set_active(bool active = true), gst_pad_set_active)
 
-  _IGNORE(gst_pad_set_blocked_async, gst_pad_send_event,
-          gst_pad_query_position, gst_pad_query_duration,
-          gst_pad_query_convert, gst_pad_query_peer_position,
-          gst_pad_query_peer_duration, gst_pad_query_peer_convert,
-          gst_pad_push, gst_pad_push_event, gst_pad_chain,
-          gst_pad_alloc_buffer, gst_pad_alloc_buffer_and_set_caps,
-          gst_pad_get_range, gst_pad_pull_range,
-	  gst_pad_set_bufferalloc_function, gst_pad_set_activatepush_function,
-	  gst_pad_set_acceptcaps_function, gst_pad_set_event_function,
-	  gst_pad_set_getrange_function, gst_pad_set_unlink_function,
-	  gst_pad_set_activate_function, gst_pad_set_getcaps_function,
-	  gst_pad_set_setcaps_function, gst_pad_set_activatepull_function,
-	  gst_pad_set_query_type_function, gst_pad_set_checkgetrange_function,
-	  gst_pad_set_link_function, gst_pad_set_query_function,
-	  gst_pad_set_fixatecaps_function,gst_pad_set_chain_function,
-	  gst_pad_set_internal_link_function, gst_pad_get_pad_template_caps,
-          gst_pad_get_fixed_caps_func)
+    //C API specific pad callback setting functions are ignored.
+    _IGNORE(gst_pad_set_bufferalloc_function,
+            gst_pad_set_activatepush_function,
+	    gst_pad_set_acceptcaps_function,
+            gst_pad_set_event_function,
+	    gst_pad_set_getrange_function,
+            gst_pad_set_unlink_function,
+	    gst_pad_set_activate_function,
+            gst_pad_set_getcaps_function,
+	    gst_pad_set_setcaps_function,
+            gst_pad_set_activatepull_function,
+	    gst_pad_set_query_type_function,
+            gst_pad_set_checkgetrange_function,
+	    gst_pad_set_link_function,
+            gst_pad_set_query_function,
+	    gst_pad_set_fixatecaps_function,
+            gst_pad_set_chain_function,
+	    gst_pad_set_internal_link_function)
 
+  //C API helper function gst_pad_get_fixed_caps_func ignored.
+  _IGNORE(gst_pad_get_fixed_caps_func)
+
+  //The "have-data" signal never really emits so ignore it.  Adding data, event
+  //and buffer probes do emit.
+  _IGNORE_SIGNAL(have_data)
 
 #m4 _CONVERSION(`GstPad*',`const Glib::RefPtr<Pad>&',`Glib::wrap($3, true)')
   _WRAP_SIGNAL(void linked(const Glib::RefPtr<Pad>& peer_pad), "linked")
@@ -292,4 +316,3 @@
 };
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/padtemplate.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/padtemplate.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/padtemplate.hg	Fri Sep 19 03:39:24 2008
@@ -101,6 +101,8 @@
    */
   _WRAP_SIGNAL(void pad_created(const Glib::RefPtr<Pad>& pad), "pad-created")
 
+  //gst_pad_template_pad_created emits the "pad-created" signal.  It seems
+  //internal to C API (it is not found in API docs) so ignore it.
   _IGNORE(gst_pad_template_pad_created)
 };
 

Modified: gstreamermm/trunk/gstreamer/src/plugin.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/plugin.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/plugin.hg	Fri Sep 19 03:39:24 2008
@@ -112,8 +112,9 @@
     const Glib::ustring& package, const Glib::ustring& origin);
 */
 
+  //gst_plugin_name_filter is a C API convenience function which tells if a
+  //plugin has a given name so ignore it.
   _IGNORE(gst_plugin_name_filter)
 };
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/pluginfeature.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/pluginfeature.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/pluginfeature.hg	Fri Sep 19 03:39:24 2008
@@ -55,8 +55,9 @@
 
   _WRAP_METHOD(bool check_version(guint min_major, guint min_minor, guint min_micro) const, gst_plugin_feature_check_version)
 
+  //gst_plugin_feature_type_name_filter is a C API convenience function which
+  //tells if a plugin feature has a name and a type so ignore it.
   _IGNORE(gst_plugin_feature_type_name_filter)
 };
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/query.ccg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/query.ccg	(original)
+++ gstreamermm/trunk/gstreamer/src/query.ccg	Fri Sep 19 03:39:24 2008
@@ -69,12 +69,6 @@
   return Gst::wrap(gst_query_make_writable(gobj()));
 }
 
-Structure Query::get_structure() const
-{
-  GstStructure* gst_structure = const_cast<GstStructure*>(gst_query_get_structure(const_cast<GstQuery*>(gobj())));
-  return Structure(gst_structure, true /* take_copy */);
-}
-
 bool get_details(QueryType type, QueryTypeDefinition &def)
 {
   const GstQueryTypeDefinition* gstdef = gst_query_type_get_details(GstQueryType(type));

Modified: gstreamermm/trunk/gstreamer/src/query.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/query.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/query.hg	Fri Sep 19 03:39:24 2008
@@ -115,6 +115,13 @@
   _CLASS_GSTMINIOBJECT(Query, GstQuery, GST_QUERY, Gst::MiniObject, GstMiniObject)
 
 public:
+  /** Wrap a GstQuery* in a C++ instance, creating an instance of a derived
+   * Gst::Query. Gst::wrap() would just create a Gst::Query (rather than a
+   * derived one) because the derived Gst::Query classes do not correspond
+   * to GType types in the GStreamer API.
+   */
+  static Glib::RefPtr<Query> wrap(GstQuery* query, bool take_copy=false);
+
   /** Copies the given query using the query copy function.
    * @return The Gst::Query copy.
    */
@@ -126,23 +133,12 @@
     */
    Glib::RefPtr<Query> create_writable();
 
-  /** Get the structure of a query.
-   * @return The Structure of the query.
-   */
-  Structure get_structure() const;
+  _WRAP_METHOD(const Structure get_structure() const, gst_query_get_structure)
 
-public:
   /** Get the Gst::QueryType of the query.
    */
   _MEMBER_GET(query_type, type, QueryType, GstQueryType)
 
-  /** Wrap a GstQuery* in a C++ instance, creating an instance of a derived
-   * Gst::Query. Gst::wrap() would just create a Gst::Query (rather than a
-   * derived one) because the derived Gst::Query classes do not correspond
-   * to GType types in the GStreamer API.
-   */
-  static Glib::RefPtr<Query> wrap(GstQuery* query, bool take_copy=false);
-
   _WRAP_METHOD(static QueryType register_query_type(const Glib::ustring& nick, const Glib::ustring& description), gst_query_type_register)
   _WRAP_METHOD(static QueryType get_query_type(const Glib::ustring& nick), gst_query_type_get_by_nick)
 

Modified: gstreamermm/trunk/gstreamer/src/registry.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/registry.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/registry.hg	Fri Sep 19 03:39:24 2008
@@ -117,6 +117,8 @@
    *
    */
   Glib::ListHandle< Glib::RefPtr<Plugin> > get_plugin_list(const Plugin::SlotFilter& filter, bool first);
+  _IGNORE(gst_registry_plugin_filter)
+          
 
   /** Runs a filter against all features of the plugins in the registry and
    * returns a List with the results. If the first flag is set, only the first
@@ -128,6 +130,7 @@
    * @return A list of Gst::PluginFeature. MT safe.
    */
   Glib::ListHandle< Glib::RefPtr<PluginFeature> > get_feature_list(const PluginFeature::SlotFilter& filter, bool first);
+  _IGNORE(gst_registry_feature_filter)
 
   _WRAP_METHOD(Glib::RefPtr<Plugin> find_plugin(const Glib::ustring& name), gst_registry_find_plugin)
   _WRAP_METHOD(Glib::RefPtr<PluginFeature> find_feature(const Glib::ustring& name, GType type), gst_registry_find_feature)
@@ -144,6 +147,7 @@
    * @return true on success.
    */
   bool binary_read_cache(const Glib::ustring& location);
+  _IGNORE(gst_registry_xml_read_cache)
 
   /** Write the registry to a cache to file at given location.
    *
@@ -158,6 +162,7 @@
    * @return true on success. 
    */
   bool xml_read_cache(const Glib::ustring& location);
+  _IGNORE(gst_registry_xml_read_cache)
 
   /** Write registry in an XML format at the location given by location.
    * Directories are automatically created.
@@ -166,6 +171,7 @@
    * @return true on success.
    */
   bool xml_write_cache(const Glib::ustring& location);
+  _IGNORE(gst_registry_xml_write_cache)
 #endif
 
   _WRAP_METHOD(Glib::RefPtr<Plugin> lookup(const Glib::ustring& filename), gst_registry_lookup)
@@ -187,14 +193,6 @@
    * a previously-added one by the same name)
    */
   _WRAP_SIGNAL(void plugin_added(const Glib::RefPtr<Plugin>& plugin), "plugin-added")
-
-  _IGNORE(gst_registry_feature_filter,
-          gst_registry_plugin_filter,
-          gst_registry_xml_read_cache,
-          gst_registry_xml_write_cache,
-          gst_registry_binary_write_cache,
-          gst_registry_binary_read_cache)
 };
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/segment.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/segment.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/segment.hg	Fri Sep 19 03:39:24 2008
@@ -87,6 +87,7 @@
 class Segment
 {
   _CLASS_BOXEDTYPE(Segment, GstSegment, gst_segment_new, gst_segment_copy, gst_segment_free)
+  _IGNORE(gst_segment_free, gst_segment_copy)
 
 public:
   _WRAP_METHOD(bool clip(Format format, gint64 start, gint64 stop, gint64& clip_start, gint64& clip_stop), gst_segment_clip)
@@ -98,8 +99,6 @@
   _WRAP_METHOD(void set_seek(double rate, Format format, SeekFlags flags, SeekType start_type, gint64 start, SeekType stop_type, gint64 stop, bool& update), gst_segment_set_seek)
   _WRAP_METHOD(gint64 convert_to_running_time(Format format, gint64 position), gst_segment_to_running_time)
   _WRAP_METHOD(gint64 convert_to_stream_time(Format format, gint64 position), gst_segment_to_stream_time)
-
-  _IGNORE(gst_segment_free, gst_segment_copy)
 };
 
 } //namespace Gst

Modified: gstreamermm/trunk/gstreamer/src/structure.ccg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/structure.ccg	(original)
+++ gstreamermm/trunk/gstreamer/src/structure.ccg	Fri Sep 19 03:39:24 2008
@@ -402,4 +402,9 @@
   return Structure(gst_structure_from_string(the_string.c_str(), NULL)); 
 }
 
+bool Structure::fixate_nearest_fraction(const Glib::ustring& name, const Gst::Fraction& target)
+{
+  return gst_structure_fixate_field_nearest_fraction(gobj(), name.c_str(), target.num, target.denom);
+}
+
 } //namespace Gst

Modified: gstreamermm/trunk/gstreamer/src/structure.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/structure.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/structure.hg	Fri Sep 19 03:39:24 2008
@@ -46,8 +46,9 @@
 class Structure
 {
  _CLASS_BOXEDTYPE(Structure, GstStructure, NONE, gst_structure_copy, gst_structure_free)
-public:
+  _IGNORE(gst_structure_copy, gst_structure_free, gst_structure_set_parent_refcount)
 
+public:
   /** Creates a Structure with the given @a name.
    * You should then use set_field() to set field values.
    */
@@ -60,6 +61,7 @@
    * could not be parsed.
    */
   static Structure create_from_string(const Glib::ustring& the_string);
+  _IGNORE(gst_structure_from_string)
 
   /** Use this to discover if the Structure is a valid object.
    */
@@ -76,6 +78,7 @@
    * @param value The Value class in which to store the value.
    */
   void get_field(const Glib::ustring& fieldname, Glib::ValueBase& value) const;
+  _IGNORE(gst_structure_id_get_value, gst_structure_get_value)
 
   /** Sets the field with name @a fieldname to value. If the field does not
    * exist, it is created. If the field exists, the previous value is replaced
@@ -90,6 +93,7 @@
    * @param value The value to set the field to.
    */
   void set_field(const Glib::ustring& fieldname, const Glib::ValueBase& value);
+  _IGNORE(gst_structure_id_set_value, gst_structure_set_value, gst_structure_id_set_valist, gst_structure_set_valist)
 
   /** Sets the field with name @a fieldname to the boolean @a value. If the
    * field does not exist, it is created. If the field exists, the previous
@@ -261,6 +265,7 @@
    * @param fieldname The name of the field to remove.
    */
   void remove_field(const Glib::ustring& fieldname);
+  _IGNORE(gst_structure_remove_field, gst_structure_remove_fields, gst_structure_remove_fields_valist)
 
   _WRAP_METHOD(void remove_all_fields(), gst_structure_remove_all_fields)
   _WRAP_METHOD(GType get_field_type(const Glib::ustring& fieldname) const, gst_structure_get_field_type)
@@ -282,6 +287,7 @@
    * false otherwise.
    */
   bool foreach(const SlotForeach& slot);
+  _IGNORE(gst_structure_foreach)
 
   _WRAP_METHOD(int size() const, gst_structure_n_fields)
   _WRAP_METHOD(bool has_field(const Glib::ustring& fieldname) const, gst_structure_has_field)
@@ -490,39 +496,27 @@
    * false otherwise.
    */
   bool map_in_place(const SlotMap& slot);
+  _IGNORE(gst_structure_map_in_place)
 
   _WRAP_METHOD(Glib::ustring get_nth_field_name(guint index) const, gst_structure_nth_field_name)
   _WRAP_METHOD(Glib::ustring to_string() const, gst_structure_to_string)
+  _WRAP_METHOD(bool fixate_field_nearest_int(const Glib::ustring& name, int target), gst_structure_fixate_field_nearest_int)
+  _WRAP_METHOD(bool fixate_field_nearest_double(const Glib::ustring& name, double target), gst_structure_fixate_field_nearest_double)
 
+  /** Fixates a Gst::Structure by changing the given field to the nearest
+   * fraction to given Gst::Fraction that is a subset of the existing field.
+   *
+   * @param field_name A field in structure.
+   * @param target The target value of the fixation.
+   * @return true If the structure could be fixated.
+   */
+  bool fixate_nearest_fraction(const Glib::ustring& name, const Gst::Fraction& target);
+  _IGNORE(gst_structure_fixate_field_nearest_fraction)
 
-  _IGNORE(
-      gst_structure_get_date,
-      gst_structure_id_set,
-      gst_structure_id_get_value,
-      gst_structure_remove_fields_valist,
-      gst_structure_fixate_field_boolean,
-      gst_structure_id_set_value,
-      gst_structure_remove_all_fields,
-      gst_structure_remove_field,
-      gst_structure_has_field_typed,
-      gst_structure_fixate_field_nearest_int,
-      gst_structure_fixate_field_nearest_double,
-      gst_structure_remove_fields,
-      gst_structure_copy,
-      gst_structure_id_set_valist,
-      gst_structure_get_field_type,
-      gst_structure_map_in_place,
-      gst_structure_get_value,
-      gst_structure_free,
-      gst_structure_n_fields,
-      gst_structure_has_field,
-      gst_structure_set,
-      gst_structure_set_value,
-      gst_structure_foreach,
-      gst_structure_fixate_field_nearest_fraction,
-      gst_structure_set_valist,
-      gst_structure_set_parent_refcount)
+  _WRAP_METHOD(bool fixate_field_boolean(const Glib::ustring& name, bool target), gst_structure_fixate_field_boolean)
 
+  //Variable argument functions are ignored.
+  _IGNORE(gst_structure_set, gst_structure_id_set)
 };
 
 } //namespace Gst

Modified: gstreamermm/trunk/gstreamer/src/taglist.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/taglist.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/taglist.hg	Fri Sep 19 03:39:24 2008
@@ -265,6 +265,7 @@
 class TagList : public Structure
 {
   _CLASS_BOXEDTYPE_EXTRA(TagList, GstTagList, gst_tag_list_new, gst_tag_list_copy, gst_tag_list_free)
+  _IGNORE(gst_tag_list_copy, gst_tag_list_free)
 
 public:
   _WRAP_METHOD(static bool exists(const Glib::ustring& tag), gst_tag_exists)
@@ -304,6 +305,7 @@
    */
   template <class DataType>
   void add(const Glib::ustring& tag, const DataType& data, TagMergeMode mode=TAG_MERGE_PREPEND);
+  _IGNORE(gst_tag_list_add_valist, gst_tag_list_add_valist_values)
 
   _WRAP_METHOD(void remove_tag(const Glib::ustring& tag), gst_tag_list_remove_tag)
 
@@ -318,6 +320,7 @@
    * @param slot Slot to be called for each tag.
    */
   void foreach(const SlotForeach& slot);
+  _IGNORE(gst_tag_list_foreach)
 
   /** Gets the value that is at the given index for the given tag.
 
@@ -328,6 +331,7 @@
    * otherwise.
    */
   bool get(const Glib::ustring& tag, guint index, Glib::ValueBase& value);
+  _IGNORE(gst_tag_list_get_value_index)
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -337,6 +341,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, char& value);
+  _IGNORE(gst_tag_list_get_char)
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -346,6 +351,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, char& value);
+  _IGNORE(gst_tag_list_get_char_index)
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -355,6 +361,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guchar& value);
+  _IGNORE(gst_tag_list_get_uchar)
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -364,6 +371,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, guchar& value);
+  _IGNORE(gst_tag_list_get_uchar_index)
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -373,6 +381,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, bool& value);
+  _IGNORE(gst_tag_list_get_boolean)
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -382,6 +391,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, bool& value);
+  _IGNORE(gst_tag_list_get_boolean_index)
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -391,6 +401,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, int& value);
+  _IGNORE(gst_tag_list_get_int)
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -400,6 +411,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, int& value);
+  _IGNORE(gst_tag_list_get_int_index)
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -409,6 +421,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint& value);
+  _IGNORE(gst_tag_list_get_uint)
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -418,6 +431,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, guint& value);
+  _IGNORE(gst_tag_list_get_uint_index)
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -427,6 +441,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, long& value);
+  _IGNORE(gst_tag_list_get_long, gst_tag_list_get_int64)
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -436,6 +451,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, long& value);
+  _IGNORE(gst_tag_list_get_long_index, gst_tag_list_get_int64_index)
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -445,6 +461,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, gulong& value);
+  _IGNORE(gst_tag_list_get_ulong, gst_tag_list_get_uint64)
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -454,6 +471,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, gulong& value);
+  _IGNORE(gst_tag_list_get_ulong_index, gst_tag_list_get_uint64_index)
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -463,6 +481,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, float& value);
+  _IGNORE(gst_tag_list_get_float)
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -472,6 +491,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, float& value);
+  _IGNORE(gst_tag_list_get_float_index)
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -481,6 +501,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, double& value);
+  _IGNORE(gst_tag_list_get_double)
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -490,6 +511,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, double& value);
+  _IGNORE(gst_tag_list_get_double_index)
 
   /** Copies the contents for the given tag into the value, possibly merging
    * multiple values into one if multiple values are associated with the tag.
@@ -505,6 +527,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, Glib::ustring& value);
+  _IGNORE(gst_tag_list_get_string)
 
   /** Gets the value that is at the given index for the given tag in the given
    * list.
@@ -518,6 +541,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, Glib::ustring& value);
+  _IGNORE(gst_tag_list_get_string_index)
 
   /** Copies the contents for the given tag into the value, merging multiple
    * values into one if multiple values are associated with the tag.
@@ -527,6 +551,7 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, Glib::Date& value);
+  _IGNORE(gst_tag_list_get_date)
 
   /** Gets the value that is at the given index for the given tag.
    * @param tag The tag to read out.
@@ -536,6 +561,10 @@
    * given list.
    */
   bool get(const Glib::ustring& tag, guint index, Glib::Date& value);
+  _IGNORE(gst_tag_list_get_date_index)
+
+  //Variable argument functions are ignored.
+  _IGNORE(gst_tag_list_add, gst_tag_list_add_values)
 };
 
 #ifndef DOXYGEN_SHOULD_SKIP_THIS

Modified: gstreamermm/trunk/gstreamer/src/tagsetter.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/tagsetter.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/tagsetter.hg	Fri Sep 19 03:39:24 2008
@@ -58,6 +58,7 @@
    * @param mode The mode to use.
    */
    void add_tag(const Glib::ustring& tag, const Glib::ValueBase& value, TagMergeMode mode=TAG_MERGE_PREPEND);
+   _IGNORE(gst_tag_setter_add_tag_valist, gst_tag_setter_add_tag_valist_values)
 
   /** Adds the given value on the setter using the given merge mode. 
    *
@@ -68,14 +69,12 @@
    template <class DataType>
    void add_tag(const Glib::ustring& tag, const DataType& data, TagMergeMode mode=TAG_MERGE_PREPEND);
 
-   _IGNORE(gst_tag_setter_add_tag_valist_values,
-           gst_tag_setter_add_tag_valist,
-           gst_tag_setter_add_tags,
-           gst_tag_setter_add_tag_values)
-
    _WRAP_METHOD(TagList get_tag_list(), gst_tag_setter_get_tag_list)
    _WRAP_METHOD(void set_tag_merge_mode(TagMergeMode mode), gst_tag_setter_set_tag_merge_mode)
    _WRAP_METHOD(TagMergeMode qet_tag_merge_mode(), gst_tag_setter_get_tag_merge_mode)
+
+   //Variable argument functions are ignored.
+   _IGNORE(gst_tag_setter_add_tags, gst_tag_setter_add_tag_values)
 };
 
 #ifndef DOXYGEN_SHOULD_SKIP_THIS
@@ -97,4 +96,3 @@
 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/task.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/task.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/task.hg	Fri Sep 19 03:39:24 2008
@@ -96,4 +96,3 @@
 };
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/urihandler.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/urihandler.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/urihandler.hg	Fri Sep 19 03:39:24 2008
@@ -74,9 +74,6 @@
   /** This signal is emitted when the URI of the uri handler has changed.
    */
   _WRAP_SIGNAL(void new_uri(const Glib::ustring& uri), "new-uri")
-
-  _IGNORE(gst_uri_handler_new_uri)
 };
 
 } // namespace Gst
-

Modified: gstreamermm/trunk/gstreamer/src/xml.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/xml.hg	(original)
+++ gstreamermm/trunk/gstreamer/src/xml.hg	Fri Sep 19 03:39:24 2008
@@ -74,6 +74,7 @@
    * @return true on success.
    */
   bool parse_memory(const std::string& buffer, const Glib::ustring& root);
+  _IGNORE(gst_xml_parse_memory)
 
   //Note: gst_xml_get_element() returns a reference (GstElement*).
   _WRAP_METHOD(Glib::RefPtr<Element> get_element(const Glib::ustring& name), gst_xml_get_element)
@@ -87,11 +88,8 @@
 
   _WRAP_METHOD(static Glib::RefPtr<Element> make_element(xmlpp::Node* curr, const Glib::RefPtr<Gst::Object>& parent), gst_xml_make_element)
 
-  _IGNORE(gst_xml_parse_memory)
-
 #m4 _CONVERSION(`GstObject*',`const Glib::RefPtr<Gst::Object>&',`Glib::wrap($3, true)')
   _WRAP_SIGNAL(void object_loaded(const Glib::RefPtr<Gst::Object>& object, xmlNode* xml_node), "object-loaded")
 };
 
-
 } //namespace Gst

Modified: gstreamermm/trunk/tools/m4/class_boxedtype_extra.m4
==============================================================================
--- gstreamermm/trunk/tools/m4/class_boxedtype_extra.m4	(original)
+++ gstreamermm/trunk/tools/m4/class_boxedtype_extra.m4	Fri Sep 19 03:39:24 2008
@@ -65,16 +65,16 @@
 ifdef(`__BOOL_NO_WRAP_FUNCTION__',`dnl
 ',`dnl else
 
-/** A Glib::wrap() method for this object. The dummy boolean parameter is added to disambiguate Gst::TagList::wrap() from Gst::Structure::wrap() (GstTagList is in fact a GstStructure so wrap method becomes ambiguous).
+/** A Glib::wrap() method for this object. The dummy int parameter is added to disambiguate Gst::TagList::wrap() from Gst::Structure::wrap() (GstTagList is in fact a GstStructure so wrap method becomes ambiguous).
  * 
  * @param object The C instance.
+ * @param dummy An unused parameter to disambiguate Gst::TagList::wrap() from Gst::Structure::wrap().  The value of this parameter is irrelevant.
  * @param take_copy False if the result should take ownership of the C instance. True if it should take a new copy or ref.
- * @param dummy An unused parameter to disambiguate Gst::TagList::wrap() from Gst::Structure::wrap().
  * @result A C++ instance that wraps this C instance.
  *
  * @relates __NAMESPACE__::__CPPNAME__
  */
-__NAMESPACE__::__CPPNAME__ wrap(__CNAME__* object, bool take_copy = false, bool dummy = false);
+__NAMESPACE__::__CPPNAME__ wrap(__CNAME__* object, int dummy, bool take_copy = false);
 ')dnl endif __BOOL_NO_WRAP_FUNCTION__
 
 #ifndef DOXYGEN_SHOULD_SKIP_THIS
@@ -92,7 +92,7 @@
 namespace Glib
 {
 
-__NAMESPACE__::__CPPNAME__ wrap(__CNAME__* object, bool take_copy, bool dummy)
+__NAMESPACE__::__CPPNAME__ wrap(__CNAME__* object, int dummy, bool take_copy)
 {
   return __NAMESPACE__::__CPPNAME__`'(object, take_copy);
 }

Modified: gstreamermm/trunk/tools/m4/convert_gst.m4
==============================================================================
--- gstreamermm/trunk/tools/m4/convert_gst.m4	(original)
+++ gstreamermm/trunk/tools/m4/convert_gst.m4	Fri Sep 19 03:39:24 2008
@@ -134,12 +134,12 @@
 _CONVERSION(`GstRegistry*',`Glib::RefPtr<Registry>', `Glib::wrap($3)')
 
 #Structure
-_CONVERSION(`Structure&',`GstStructure*',`(($3).gobj())')
+_CONVERSION(`const GstStructure*',`const Structure',`Glib::wrap(const_cast<GstStructure*>($3), true)')
+_CONVERSION(`GstStructure*',`const Structure',`Glib::wrap(const_cast<GstStructure*>($3), true)')
 
 #TagList
 _CONVERSION(`const TagList&',`const GstTagList*',`(($3).gobj())')
-_CONVERSION(`GstTagList*',`TagList',`Glib::wrap($3, false, false)')
-_CONVERSION(`TagList&',`GstTagList*',`(($3).gobj())')
+_CONVERSION(`GstTagList*',`TagList',`Glib::wrap($3, 0)')
 _CONVERSION(`const TagList&',`GstTagList*',`const_cast<GstTagList*>(($3).gobj())')
 _CONVERSION(`const GstTagList*',`TagList',`Glib::wrap(const_cast<GstTagList*>($3), true, false)')
 



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