tee: Check for the removed pad flag also in the slow pushing path
[platform/upstream/gstreamer.git] / gst / gstdynamictypefactory.h
1 /* GStreamer
2  * Copyright (C) 2015 Jan Schmidt <jan@centricular.com>
3  *
4  * gstdynamictypefactory.h: Header for GstDynamicTypeFactory
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Library General Public
8  * License as published by the Free Software Foundation; either
9  * version 2 of the License, or (at your option) any later version.
10  *
11  * This library is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14  * Library General Public License for more details.
15  *
16  * You should have received a copy of the GNU Library General Public
17  * License along with this library; if not, write to the
18  * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
19  * Boston, MA 02110-1301, USA.
20  */
21
22 #ifndef __GST_DYNAMIC_TYPE_FACTORY_H__
23 #define __GST_DYNAMIC_TYPE_FACTORY_H__
24
25 /**
26  * GstDynamicTypeFactory:
27  *
28  * The opaque #GstDynamicTypeFactory data structure.
29  */
30 typedef struct _GstDynamicTypeFactory GstDynamicTypeFactory;
31 typedef struct _GstDynamicTypeFactoryClass GstDynamicTypeFactoryClass;
32
33 #include <gst/gstconfig.h>
34 #include <gst/gstplugin.h>
35 #include <gst/gstpluginfeature.h>
36
37 G_BEGIN_DECLS
38
39 #define GST_TYPE_DYNAMIC_TYPE_FACTORY           (gst_dynamic_type_factory_get_type())
40 #define GST_DYNAMIC_TYPE_FACTORY(obj)           (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_DYNAMIC_TYPE_FACTORY,\
41                                                  GstDynamicTypeFactory))
42 #define GST_DYNAMIC_TYPE_CLASS(klass)           (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_DYNAMIC_TYPE_FACTORY,\
43                                                  GstDynamicTypeFactoryClass))
44 #define GST_IS_DYNAMIC_TYPE_FACTORY(obj)        (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DYNAMIC_TYPE_FACTORY))
45 #define GST_IS_DYNAMIC_TYPE_FACTORY_CLASS(klass)   (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_DYNAMIC_TYPE_FACTORY))
46 #define GST_DYNAMIC_TYPE_FACTORY_CAST(obj)      ((GstDynamicTypeFactory *)(obj))
47
48 GST_API
49 GType  gst_dynamic_type_factory_get_type        (void);
50
51 GST_API
52 GType  gst_dynamic_type_factory_load            (const gchar *factoryname);
53
54 GST_API
55 gboolean gst_dynamic_type_register              (GstPlugin *plugin, GType type);
56
57 G_END_DECLS
58
59 #endif