From: Tim-Philipp Müller Date: Sat, 19 May 2012 14:51:53 +0000 (+0100) Subject: elementfactory: make object struct opaque for now X-Git-Tag: RELEASE-0.11.92~84 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=a9d19a69130f7524fb94633d39a678a67ea7887d;p=platform%2Fupstream%2Fgstreamer.git elementfactory: make object struct opaque for now Make GstElementFactory opaque until we have time to clean it up a little. It's not something anyone would need to derive from. --- diff --git a/gst/gst_private.h b/gst/gst_private.h index f44c6f3..4bf226e 100644 --- a/gst/gst_private.h +++ b/gst/gst_private.h @@ -319,6 +319,31 @@ struct _GstTypeFindFactoryClass { gpointer _gst_reserved[GST_PADDING]; }; +struct _GstElementFactory { + GstPluginFeature parent; + + GType type; /* unique GType of element or 0 if not loaded */ + + gpointer metadata; + + GList * staticpadtemplates; /* GstStaticPadTemplate list */ + guint numpadtemplates; + + /* URI interface stuff */ + GstURIType uri_type; + gchar ** uri_protocols; + + GList * interfaces; /* interface type names this element implements */ + + /*< private >*/ + gpointer _gst_reserved[GST_PADDING]; +}; + +struct _GstElementFactoryClass { + GstPluginFeatureClass parent_class; + + gpointer _gst_reserved[GST_PADDING]; +}; G_END_DECLS #endif /* __GST_PRIVATE_H__ */ diff --git a/gst/gstelementfactory.h b/gst/gstelementfactory.h index 3618f88..601c9d6 100644 --- a/gst/gstelementfactory.h +++ b/gst/gstelementfactory.h @@ -24,16 +24,19 @@ #ifndef __GST_ELEMENT_FACTORY_H__ #define __GST_ELEMENT_FACTORY_H__ +/** + * GstElementFactory: + * + * The opaque #GstElementFactory data structure. + */ typedef struct _GstElementFactory GstElementFactory; typedef struct _GstElementFactoryClass GstElementFactoryClass; #include #include -#include +#include #include #include -#include -#include #include G_BEGIN_DECLS @@ -47,37 +50,6 @@ G_BEGIN_DECLS #define GST_IS_ELEMENT_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_ELEMENT_FACTORY)) #define GST_ELEMENT_FACTORY_CAST(obj) ((GstElementFactory *)(obj)) -/** - * GstElementFactory: - * - * The opaque #GstElementFactory data structure. - */ -struct _GstElementFactory { - GstPluginFeature parent; - - GType type; /* unique GType of element or 0 if not loaded */ - - gpointer metadata; - - GList * staticpadtemplates; /* GstStaticPadTemplate list */ - guint numpadtemplates; - - /* URI interface stuff */ - GstURIType uri_type; - gchar ** uri_protocols; - - GList * interfaces; /* interface type names this element implements */ - - /*< private >*/ - gpointer _gst_reserved[GST_PADDING]; -}; - -struct _GstElementFactoryClass { - GstPluginFeatureClass parent_class; - - gpointer _gst_reserved[GST_PADDING]; -}; - GType gst_element_factory_get_type (void); GstElementFactory * gst_element_factory_find (const gchar *name); diff --git a/tests/check/gst/gstelementfactory.c b/tests/check/gst/gstelementfactory.c index cd57387..52a668f 100644 --- a/tests/check/gst/gstelementfactory.c +++ b/tests/check/gst/gstelementfactory.c @@ -18,6 +18,7 @@ * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * Boston, MA 02111-1307, USA. */ +#include "../../gst/gst_private.h" #include