tee: Check for the removed pad flag also in the slow pushing path
[platform/upstream/gstreamer.git] / gst / gsttypefindfactory.h
index 3d8ff31..d0a7e1d 100644 (file)
@@ -15,8 +15,8 @@
  *
  * You should have received a copy of the GNU Library General Public
  * License along with this library; if not, write to the
- * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
+ * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ * Boston, MA 02110-1301, USA.
  */
 
 #ifndef __GST_TYPE_FIND_FACTORY_H__
@@ -36,46 +36,39 @@ G_BEGIN_DECLS
 #define GST_IS_TYPE_FIND_FACTORY_CLASS(klass)      (G_TYPE_CHECK_CLASS_TYPE ((klass), GST_TYPE_TYPE_FIND_FACTORY))
 #define GST_TYPE_FIND_FACTORY_GET_CLASS(obj)       (G_TYPE_INSTANCE_GET_CLASS ((obj), GST_TYPE_TYPE_FIND_FACTORY, GstTypeFindFactoryClass))
 
-typedef struct _GstTypeFindFactory GstTypeFindFactory;
-typedef struct _GstTypeFindFactoryClass GstTypeFindFactoryClass;
-
 /**
  * GstTypeFindFactory:
  *
- * Object that stores information about a typefind function.
+ * Opaque object that stores information about a typefind function.
  */
-struct _GstTypeFindFactory {
-  GstPluginFeature              feature;
-  /* <private> */
-
-  GstTypeFindFunction           function;
-  gchar **                      extensions;
-  GstCaps *                     caps; /* FIXME: not yet saved in registry */
-
-  gpointer                      user_data;
-  GDestroyNotify                user_data_notify;
-
-  gpointer _gst_reserved[GST_PADDING];
-};
-
-struct _GstTypeFindFactoryClass {
-  GstPluginFeatureClass         parent;
-  /* <private> */
-
-  gpointer _gst_reserved[GST_PADDING];
-};
+typedef struct _GstTypeFindFactory GstTypeFindFactory;
+typedef struct _GstTypeFindFactoryClass GstTypeFindFactoryClass;
 
 /* typefinding interface */
 
+GST_API
 GType           gst_type_find_factory_get_type          (void);
 
+GST_API
 GList *         gst_type_find_factory_get_list          (void);
 
-gchar **        gst_type_find_factory_get_extensions    (GstTypeFindFactory *factory);
+GST_API
+const gchar * const * gst_type_find_factory_get_extensions (GstTypeFindFactory *factory);
+
+GST_API
 GstCaps *       gst_type_find_factory_get_caps          (GstTypeFindFactory *factory);
+
+GST_API
+gboolean        gst_type_find_factory_has_function      (GstTypeFindFactory *factory);
+
+GST_API
 void            gst_type_find_factory_call_function     (GstTypeFindFactory *factory,
                                                          GstTypeFind *find);
 
+#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstTypeFindFactory, gst_object_unref)
+#endif
+
 G_END_DECLS
 
 #endif /* __GST_TYPE_FIND_FACTORY_H__ */