*
* 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.
*/
gpointer _gst_reserved[1];
};
-GType gst_proxy_pad_get_type (void);
+GST_API
+GType gst_proxy_pad_get_type (void);
-GstProxyPad* gst_proxy_pad_get_internal (GstProxyPad *pad);
+GST_API
+GstProxyPad * gst_proxy_pad_get_internal (GstProxyPad *pad);
-gboolean gst_proxy_pad_event_default (GstPad *pad, GstObject *parent,
- GstEvent *event);
-gboolean gst_proxy_pad_query_default (GstPad *pad, GstObject *parent,
- GstQuery *query);
-GstIterator* gst_proxy_pad_iterate_internal_links_default (GstPad *pad, GstObject *parent);
+GST_API
+GstIterator* gst_proxy_pad_iterate_internal_links_default (GstPad *pad, GstObject *parent) G_GNUC_MALLOC;
+
+GST_API
GstFlowReturn gst_proxy_pad_chain_default (GstPad *pad, GstObject *parent,
GstBuffer *buffer);
+GST_API
GstFlowReturn gst_proxy_pad_chain_list_default (GstPad *pad, GstObject *parent,
GstBufferList *list);
+GST_API
GstFlowReturn gst_proxy_pad_getrange_default (GstPad *pad, GstObject *parent,
guint64 offset, guint size,
GstBuffer **buffer);
-void gst_proxy_pad_unlink_default (GstPad * pad);
#define GST_TYPE_GHOST_PAD (gst_ghost_pad_get_type ())
#define GST_IS_GHOST_PAD(obj) (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GST_TYPE_GHOST_PAD))
};
+GST_API
GType gst_ghost_pad_get_type (void);
-GstPad* gst_ghost_pad_new (const gchar *name, GstPad *target);
-GstPad* gst_ghost_pad_new_no_target (const gchar *name, GstPadDirection dir);
+GST_API
+GstPad* gst_ghost_pad_new (const gchar *name, GstPad *target) G_GNUC_MALLOC;
+
+GST_API
+GstPad* gst_ghost_pad_new_no_target (const gchar *name, GstPadDirection dir) G_GNUC_MALLOC;
+
+GST_API
+GstPad* gst_ghost_pad_new_from_template (const gchar *name, GstPad * target, GstPadTemplate * templ) G_GNUC_MALLOC;
-GstPad* gst_ghost_pad_new_from_template (const gchar *name, GstPad * target, GstPadTemplate * templ);
-GstPad* gst_ghost_pad_new_no_target_from_template (const gchar *name, GstPadTemplate * templ);
+GST_API
+GstPad* gst_ghost_pad_new_no_target_from_template (const gchar *name, GstPadTemplate * templ) G_GNUC_MALLOC;
+GST_API
GstPad* gst_ghost_pad_get_target (GstGhostPad *gpad);
+
+GST_API
gboolean gst_ghost_pad_set_target (GstGhostPad *gpad, GstPad *newtarget);
+GST_API
gboolean gst_ghost_pad_construct (GstGhostPad *gpad);
-void gst_ghost_pad_unlink_default (GstPad * pad);
-GstPadLinkReturn gst_ghost_pad_link_default (GstPad * pad, GstPad * peer);
-gboolean gst_ghost_pad_activate_pull_default (GstPad * pad, gboolean active);
-gboolean gst_ghost_pad_activate_push_default (GstPad * pad, gboolean active);
+GST_API
+gboolean gst_ghost_pad_activate_mode_default (GstPad * pad, GstObject * parent,
+ GstPadMode mode, gboolean active);
+GST_API
+gboolean gst_ghost_pad_internal_activate_mode_default (GstPad * pad, GstObject * parent,
+ GstPadMode mode, gboolean active);
+
+#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstGhostPad, gst_object_unref)
+#endif
-gboolean gst_ghost_pad_internal_activate_push_default (GstPad * pad, gboolean active);
-gboolean gst_ghost_pad_internal_activate_pull_default (GstPad * pad, gboolean active);
+#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC
+G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstProxyPad, gst_object_unref)
+#endif
G_END_DECLS