gnomemm r1330 - in gstreamermm/trunk: . gstreamer/src tools/m4
- From: jaalburqu svn gnome org
- To: svn-commits-list gnome org
- Subject: gnomemm r1330 - in gstreamermm/trunk: . gstreamer/src tools/m4
- Date: Fri, 8 Feb 2008 03:47:37 +0000 (GMT)
Author: jaalburqu
Date: Fri Feb 8 03:47:36 2008
New Revision: 1330
URL: http://svn.gnome.org/viewvc/gnomemm?rev=1330&view=rev
Log:
2008-02-07 Josà Alburquerque <jaalburqu svn gnome org>
* gstreamer/src/bin.hg: Bin (and its descendant Pipeline) implements
ChildProxy interface
* gstreamer/src/childproxy.hg: Removed unused _PINCLUDEs; Wrapped up
API
* tools/m4/convert_gst.m4: Added conversion from const
Glib::RefPtr<Gst::Object>& to GstObject*; Used Glib::unwrap(...)
instead of __CONVERT_REFPTR_TO_P
Modified:
gstreamermm/trunk/ChangeLog
gstreamermm/trunk/gstreamer/src/bin.hg
gstreamermm/trunk/gstreamer/src/childproxy.hg
gstreamermm/trunk/tools/m4/convert_gst.m4
Modified: gstreamermm/trunk/gstreamer/src/bin.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/bin.hg (original)
+++ gstreamermm/trunk/gstreamer/src/bin.hg Fri Feb 8 03:47:36 2008
@@ -19,19 +19,22 @@
#include <gstreamermm/element.h>
#include <gstreamermm/enums.h>
+#include <gstreamermm/childproxy.h>
_DEFS(gstreamermm,gst)
_PINCLUDE(glibmm/private/object_p.h)
_PINCLUDE(gstreamermm/private/element_p.h)
-
namespace Gst
{
class Pad;
-class Bin : public Element
+class Bin
+: public Element,
+ public ChildProxy
{
_CLASS_GOBJECT(Bin, GstBin, GST_BIN, Element, GstElement)
+ _IMPLEMENTS_INTERFACE(ChildProxy)
protected:
_CTOR_DEFAULT
Modified: gstreamermm/trunk/gstreamer/src/childproxy.hg
==============================================================================
--- gstreamermm/trunk/gstreamer/src/childproxy.hg (original)
+++ gstreamermm/trunk/gstreamer/src/childproxy.hg Fri Feb 8 03:47:36 2008
@@ -24,8 +24,6 @@
#include <gstreamermm/object.h>
_DEFS(gstreamermm,gst)
-_PINCLUDE(glibmm/private/interface_p.h)
-_PINCLUDE(gstreamermm/private/object_p.h)
namespace Gst
{
@@ -48,6 +46,25 @@
class ChildProxy : public Glib::Interface
{
_CLASS_INTERFACE(ChildProxy, GstChildProxy, GST_CHILD_PROXY, GstChildProxyInterface)
+
+public:
+ _WRAP_METHOD(guint children_count(), gst_child_proxy_get_children_count)
+ _WRAP_METHOD(Glib::RefPtr<Gst::Object> get_child(const Glib::ustring& name), gst_child_proxy_get_child_by_name)
+ _WRAP_METHOD(Glib::RefPtr<Gst::Object> get_child(guint index), gst_child_proxy_get_child_by_index)
+
+ //TODO: should gst_child_proxy_lookup() be wrapped?
+
+ _WRAP_METHOD(static void get_property(const Glib::RefPtr<Gst::Object>& object, const Glib::ustring& name, Glib::ValueBase& value), gst_child_proxy_get_property)
+ _WRAP_METHOD(static void get_valist(const Glib::RefPtr<Gst::Object>& object, const Glib::ustring& first_prop_name, const va_list& var_args), gst_child_proxy_get_valist)
+ _WRAP_METHOD(static void set_property(const Glib::RefPtr<Gst::Object>& object, const Glib::ustring& name, const Glib::ValueBase& value), gst_child_proxy_set_property)
+ _WRAP_METHOD(static void set_valist(const Glib::RefPtr<Gst::Object>& object, const Glib::ustring& first_prop_name, const va_list& var_args), gst_child_proxy_set_valist)
+ _WRAP_METHOD(static void child_added(const Glib::RefPtr<Gst::Object>& object, const Glib::RefPtr<Gst::Object>& child), gst_child_proxy_added)
+ _WRAP_METHOD(static void child_removed(const Glib::RefPtr<Gst::Object>& object, const Glib::RefPtr<Gst::Object>& child), gst_child_proxy_removed)
+
+ _WRAP_SIGNAL(void child_added(const Glib::RefPtr<Gst::Object>& object), "child_added")
+ _WRAP_SIGNAL(void child_removed(const Glib::RefPtr<Gst::Object>& object), "child_removed")
+
+ _IGNORE(gst_child_proxy_get, gst_child_proxy_set)
};
} // namespace Gst
Modified: gstreamermm/trunk/tools/m4/convert_gst.m4
==============================================================================
--- gstreamermm/trunk/tools/m4/convert_gst.m4 (original)
+++ gstreamermm/trunk/tools/m4/convert_gst.m4 Fri Feb 8 03:47:36 2008
@@ -10,8 +10,9 @@
_CONVERSION(`GstObject*',`Glib::RefPtr<Gst::Object>',`Glib::wrap($3)')
_CONVERSION(`GstObject*',`Glib::RefPtr<const Gst::Object>',`Glib::wrap($3)')
+_CONVERSION(`const Glib::RefPtr<Gst::Object>&',`GstObject*',`Glib::unwrap($3)')
-#_CONVERSION(`Glib::RefPtr<Object>&',`GstObject*',__CONVERT_REFPTR_TO_P)
+#_CONVERSION(`Glib::RefPtr<Object>&',`GstObject*', `Glib::unwrap($3)')
_CONVERSION(`State&',`GstState*',`((GstState*) (&($3)))')
_CONVERSION(`GstClockTime',`ClockTime',`$3')
_CONVERSION(`ClockTime',`GstClockTime',`(GstClockTime ($3))')
@@ -23,7 +24,7 @@
_CONVERSION(`const Format&',`GstFormat*',`((GstFormat*) (&($3)))')
_CONVERSION(`const gint64&',`gint64*',`((gint64*) (&($3)))')
_CONVERSION(`const std::string&',`const guchar*',`(const guchar*) ($3.c_str())')
-_CONVERSION(`Glib::RefPtr<Element>',`GstElement*',__CONVERT_REFPTR_TO_P)
+_CONVERSION(`Glib::RefPtr<Element>',`GstElement*', `Glib::unwrap($3)')
_CONVERSION(`GstPad*',`Glib::RefPtr<Pad>',`Glib::wrap($3)')
_CONVERSION(`GstPad*',`Glib::RefPtr<const Pad>',`Glib::wrap($3)')
_CONVERSION(`GstCaps*',`Glib::RefPtr<Caps>',`Glib::wrap($3)')
@@ -31,25 +32,25 @@
_CONVERSION(`GstElement*',`Glib::RefPtr<const Element>',`Glib::wrap($3)')
_CONVERSION(`GstClock*',`Glib::RefPtr<Clock>',`Glib::wrap($3)')
_CONVERSION(`GstClock*',`Glib::RefPtr<const Clock>',`Glib::wrap($3)')
-#_CONVERSION(`Glib::RefPtr<Pad>',`GstPad*',__CONVERT_REFPTR_TO_P)
-_CONVERSION(`const Glib::RefPtr<Pad>&',`GstPad*',__CONVERT_REFPTR_TO_P)
-_CONVERSION(`const Glib::RefPtr<Element>&',`GstElement*',__CONVERT_REFPTR_TO_P)
-_CONVERSION(`const Glib::RefPtr<Clock>&',`GstClock*',__CONVERT_REFPTR_TO_P)
+#_CONVERSION(`Glib::RefPtr<Pad>',`GstPad*', `Glib::unwrap($3)')
+_CONVERSION(`const Glib::RefPtr<Pad>&',`GstPad*', `Glib::unwrap($3)')
+_CONVERSION(`const Glib::RefPtr<Element>&',`GstElement*', `Glib::unwrap($3)')
+_CONVERSION(`const Glib::RefPtr<Clock>&',`GstClock*', `Glib::unwrap($3)')
_CONVERSION(`GstMessage*',`Glib::RefPtr<Message>',`Gst::Message::wrap($3)')
_CONVERSION(`GstMessage*',`Glib::RefPtr<const Message>',`Gst::Message::wrap($3)')
-_CONVERSION(`const Glib::RefPtr<Message>&',`GstMessage*',__CONVERT_REFPTR_TO_P)
-_CONVERSION(`const Glib::RefPtr<Event>&',`GstEvent*',__CONVERT_REFPTR_TO_P)
-_CONVERSION(`const Glib::RefPtr<Query>&',`GstQuery*',__CONVERT_REFPTR_TO_P)
-_CONVERSION(`const Glib::RefPtr<Caps>&',`GstCaps*',__CONVERT_REFPTR_TO_P)
-_CONVERSION(`const Glib::RefPtr<Bus>&',`GstBus*',__CONVERT_REFPTR_TO_P)
+_CONVERSION(`const Glib::RefPtr<Message>&',`GstMessage*', `Glib::unwrap($3)')
+_CONVERSION(`const Glib::RefPtr<Event>&',`GstEvent*', `Glib::unwrap($3)')
+_CONVERSION(`const Glib::RefPtr<Query>&',`GstQuery*', `Glib::unwrap($3)')
+_CONVERSION(`const Glib::RefPtr<Caps>&',`GstCaps*', `Glib::unwrap($3)')
+_CONVERSION(`const Glib::RefPtr<Bus>&',`GstBus*', `Glib::unwrap($3)')
_CONVERSION(`GstBuffer*',`Glib::RefPtr<Buffer>',`wrap($3)')
-_CONVERSION(`const Glib::RefPtr<Buffer>&',`GstBuffer*',__CONVERT_REFPTR_TO_P)
-_CONVERSION(`const Glib::RefPtr<Buffer>&',`const GstBuffer*',__CONVERT_REFPTR_TO_P)
-_CONVERSION(`Glib::RefPtr<Buffer>',`GstBuffer*',__CONVERT_REFPTR_TO_P)
+_CONVERSION(`const Glib::RefPtr<Buffer>&',`GstBuffer*', `Glib::unwrap($3)')
+_CONVERSION(`const Glib::RefPtr<Buffer>&',`const GstBuffer*', `Glib::unwrap($3)')
+_CONVERSION(`Glib::RefPtr<Buffer>',`GstBuffer*', `Glib::unwrap($3)')
_CONVERSION(`Structure&',`GstStructure*',`((GstStructure*)(&($3)))')
_CONVERSION(`GstStructure*',`Structure*',`((Structure*) ($3))')
-_CONVERSION(`const Glib::RefPtr<Caps>&',`const GstCaps*',__CONVERT_REFPTR_TO_P)
+_CONVERSION(`const Glib::RefPtr<Caps>&',`const GstCaps*', `Glib::unwrap($3)')
_CONVERSION(`const xmlNodePtr&',`xmlNodePtr',`$3')
_CONVERSION(`const va_list&',`va_list',`const_cast<va_list&>($3)')
_CONVERSION(`GstBus*',`Glib::RefPtr<Bus>',`Glib::wrap($3)')
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]