mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-02-19 20:46:22 +00:00
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.
This commit is contained in:
parent
36acfbd619
commit
a9d19a6913
3 changed files with 32 additions and 34 deletions
|
@ -319,6 +319,31 @@ struct _GstTypeFindFactoryClass {
|
||||||
gpointer _gst_reserved[GST_PADDING];
|
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
|
G_END_DECLS
|
||||||
#endif /* __GST_PRIVATE_H__ */
|
#endif /* __GST_PRIVATE_H__ */
|
||||||
|
|
|
@ -24,16 +24,19 @@
|
||||||
#ifndef __GST_ELEMENT_FACTORY_H__
|
#ifndef __GST_ELEMENT_FACTORY_H__
|
||||||
#define __GST_ELEMENT_FACTORY_H__
|
#define __GST_ELEMENT_FACTORY_H__
|
||||||
|
|
||||||
|
/**
|
||||||
|
* GstElementFactory:
|
||||||
|
*
|
||||||
|
* The opaque #GstElementFactory data structure.
|
||||||
|
*/
|
||||||
typedef struct _GstElementFactory GstElementFactory;
|
typedef struct _GstElementFactory GstElementFactory;
|
||||||
typedef struct _GstElementFactoryClass GstElementFactoryClass;
|
typedef struct _GstElementFactoryClass GstElementFactoryClass;
|
||||||
|
|
||||||
#include <gst/gstconfig.h>
|
#include <gst/gstconfig.h>
|
||||||
#include <gst/gstelement.h>
|
#include <gst/gstelement.h>
|
||||||
#include <gst/gstobject.h>
|
#include <gst/gstpad.h>
|
||||||
#include <gst/gstplugin.h>
|
#include <gst/gstplugin.h>
|
||||||
#include <gst/gstpluginfeature.h>
|
#include <gst/gstpluginfeature.h>
|
||||||
#include <gst/gstpadtemplate.h>
|
|
||||||
#include <gst/gstiterator.h>
|
|
||||||
#include <gst/gsturi.h>
|
#include <gst/gsturi.h>
|
||||||
|
|
||||||
G_BEGIN_DECLS
|
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_IS_ELEMENT_FACTORY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_ELEMENT_FACTORY))
|
||||||
#define GST_ELEMENT_FACTORY_CAST(obj) ((GstElementFactory *)(obj))
|
#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);
|
GType gst_element_factory_get_type (void);
|
||||||
|
|
||||||
GstElementFactory * gst_element_factory_find (const gchar *name);
|
GstElementFactory * gst_element_factory_find (const gchar *name);
|
||||||
|
|
|
@ -18,6 +18,7 @@
|
||||||
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
* Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||||
* Boston, MA 02111-1307, USA.
|
* Boston, MA 02111-1307, USA.
|
||||||
*/
|
*/
|
||||||
|
#include "../../gst/gst_private.h"
|
||||||
|
|
||||||
#include <gst/check/gstcheck.h>
|
#include <gst/check/gstcheck.h>
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue