From: Jürg Billeter Date: Wed, 3 Sep 2008 20:04:53 +0000 (+0000) Subject: Improve Gst.Pad bindings, patch by Ali Sabil X-Git-Tag: VALA_0_4_0~96 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=219c68c949e69386447f5375a22e500dd4636d3b;p=platform%2Fupstream%2Fvala.git Improve Gst.Pad bindings, patch by Ali Sabil 2008-09-03 Jürg Billeter * vapi/packages/gstreamer-0.10/: Improve Gst.Pad bindings, patch by Ali Sabil * vapi/gstreamer-0.10.vapi: regenerated svn path=/trunk/; revision=1765 --- diff --git a/ChangeLog b/ChangeLog index c58f99b..9b98d92 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,11 @@ +2008-09-03 Jürg Billeter + + * vapi/packages/gstreamer-0.10/: + + Improve Gst.Pad bindings, patch by Ali Sabil + + * vapi/gstreamer-0.10.vapi: regenerated + 2008-08-26 Thijs Vermeir * vapi/glib-2.0.vapi: diff --git a/vapi/gstreamer-0.10.vapi b/vapi/gstreamer-0.10.vapi index 4ea8f65..bf5f258 100644 --- a/vapi/gstreamer-0.10.vapi +++ b/vapi/gstreamer-0.10.vapi @@ -617,6 +617,138 @@ namespace Gst { public void stamp (Gst.Buffer src); public static Gst.Buffer try_new_and_alloc (uint size); } + [CCode (cheader_filename = "gst/gst.h")] + public class Pad : Gst.Object { + public void* element_private; + public weak Gst.PadTemplate padtemplate; + public GLib.StaticRecMutex stream_rec_lock; + public weak Gst.Task task; + public weak GLib.Mutex preroll_lock; + public weak GLib.Cond preroll_cond; + public weak GLib.Cond block_cond; + public weak Gst.PadBlockCallback block_callback; + public void* block_data; + public weak Gst.PadGetCapsFunction getcapsfunc; + public weak Gst.PadSetCapsFunction setcapsfunc; + public weak Gst.PadAcceptCapsFunction acceptcapsfunc; + public weak Gst.PadFixateCapsFunction fixatecapsfunc; + public weak Gst.PadActivateFunction activatefunc; + public weak Gst.PadActivateModeFunction activatepushfunc; + public weak Gst.PadActivateModeFunction activatepullfunc; + public weak Gst.PadLinkFunction linkfunc; + public weak Gst.PadUnlinkFunction unlinkfunc; + public weak Gst.Pad peer; + public void* sched_private; + public weak Gst.PadChainFunction chainfunc; + public weak Gst.PadCheckGetRangeFunction checkgetrangefunc; + public weak Gst.PadGetRangeFunction getrangefunc; + public weak Gst.PadEventFunction eventfunc; + public Gst.ActivateMode mode; + public weak Gst.PadQueryFunction queryfunc; + public weak Gst.PadIntLinkFunction intlinkfunc; + public weak Gst.PadBufferAllocFunction bufferallocfunc; + public int do_buffer_signals; + public int do_event_signals; + [CCode (array_length_pos = 0, delegate_target_pos = 0)] + public Pad (string name, Gst.PadDirection direction); + public uint add_buffer_probe (Gst.BufferProbeCallback handler); + public uint add_buffer_probe_full (Gst.BufferProbeCallback handler, GLib.DestroyNotify notify); + public uint add_data_probe (Gst.DataProbeCallback handler); + public uint add_data_probe_full (Gst.DataProbeCallback handler, GLib.DestroyNotify notify); + public uint add_event_probe (Gst.EventProbeCallback handler); + public uint add_event_probe_full (Gst.EventProbeCallback handler, GLib.DestroyNotify notify); + public bool accept_caps (Gst.Caps caps); + public bool activate_pull (bool active); + public bool activate_push (bool active); + public Gst.FlowReturn alloc_buffer (uint64 offset, int size, Gst.Caps caps, out weak Gst.Buffer buf); + public Gst.FlowReturn alloc_buffer_and_set_caps (uint64 offset, int size, Gst.Caps caps, out weak Gst.Buffer buf); + public bool can_link (Gst.Pad sinkpad); + public Gst.FlowReturn chain (Gst.Buffer buffer); + public bool check_pull_range (); + public bool dispatcher (Gst.PadDispatcherFunction dispatch, void* data); + public bool event_default (Gst.Event event); + public void fixate_caps (Gst.Caps caps); + public Gst.Caps get_allowed_caps (); + public Gst.Caps get_caps (); + public Gst.PadDirection get_direction (); + public void* get_element_private (); + public weak Gst.Caps get_fixed_caps_func (); + public weak GLib.List get_internal_links (); + public weak GLib.List get_internal_links_default (); + public Gst.Caps get_negotiated_caps (); + public weak Gst.PadTemplate get_pad_template (); + public weak Gst.Caps get_pad_template_caps (); + public weak Gst.Element get_parent_element (); + public Gst.Pad get_peer (); + public Gst.QueryType get_query_types (); + public Gst.QueryType get_query_types_default (); + public Gst.FlowReturn get_range (uint64 offset, uint size, out weak Gst.Buffer buffer); + public bool is_active (); + public bool is_blocked (); + public bool is_blocking (); + public bool is_linked (); + public Gst.PadLinkReturn link (Gst.Pad sinkpad); + public void load_and_link (Gst.Object parent); + [CCode (array_length_pos = 0, delegate_target_pos = 0)] + public Pad.from_static_template (Gst.StaticPadTemplate templ, string name); + [CCode (array_length_pos = 0, delegate_target_pos = 0)] + public Pad.from_template (Gst.PadTemplate templ, string name); + public bool pause_task (); + public bool peer_accept_caps (Gst.Caps caps); + public Gst.Caps peer_get_caps (); + public bool peer_query (Gst.Query query); + public weak Gst.Caps proxy_getcaps (); + public bool proxy_setcaps (Gst.Caps caps); + public Gst.FlowReturn pull_range (uint64 offset, uint size, out weak Gst.Buffer buffer); + public Gst.FlowReturn push (Gst.Buffer# buffer); + public bool push_event (Gst.Event# event); + public bool query (Gst.Query query); + public bool query_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val); + public bool query_default (Gst.Query query); + public bool query_duration (Gst.Format format, int64 duration); + public bool query_peer_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val); + public bool query_peer_duration (Gst.Format format, int64 duration); + public bool query_peer_position (Gst.Format format, int64 cur); + public bool query_position (Gst.Format format, int64 cur); + public void remove_buffer_probe (uint handler_id); + public void remove_data_probe (uint handler_id); + public void remove_event_probe (uint handler_id); + public bool send_event (Gst.Event# event); + public void set_acceptcaps_function (Gst.PadAcceptCapsFunction acceptcaps); + public void set_activate_function (Gst.PadActivateFunction activate); + public void set_activatepull_function (Gst.PadActivateModeFunction activatepull); + public void set_activatepush_function (Gst.PadActivateModeFunction activatepush); + public bool set_active (bool active); + public bool set_blocked (bool blocked); + public bool set_blocked_async (bool blocked, Gst.PadBlockCallback callback); + public void set_bufferalloc_function (Gst.PadBufferAllocFunction bufalloc); + public bool set_caps (Gst.Caps caps); + public void set_chain_function (Gst.PadChainFunction chain); + public void set_checkgetrange_function (Gst.PadCheckGetRangeFunction check); + public void set_element_private (void* priv); + public void set_event_function (Gst.PadEventFunction event); + public void set_fixatecaps_function (Gst.PadFixateCapsFunction fixatecaps); + public void set_getcaps_function (Gst.PadGetCapsFunction getcaps); + public void set_getrange_function (Gst.PadGetRangeFunction get); + public void set_internal_link_function (Gst.PadIntLinkFunction intlink); + public void set_link_function (Gst.PadLinkFunction link); + public void set_query_function (Gst.PadQueryFunction query); + public void set_setcaps_function (Gst.PadSetCapsFunction setcaps); + public void set_unlink_function (Gst.PadUnlinkFunction unlink); + public bool start_task (Gst.TaskFunction func, void* data); + public bool stop_task (); + public bool unlink (Gst.Pad sinkpad); + public void use_fixed_caps (); + public Gst.Caps caps { get; } + [NoAccessorMethod] + public Gst.PadDirection direction { get; construct; } + [NoAccessorMethod] + public Gst.PadTemplate template { get; set; } + public virtual signal bool have_data (Gst.MiniObject data); + public virtual signal void linked (Gst.Pad peer); + public virtual signal void request_link (); + public virtual signal void unlinked (Gst.Pad peer); + } [CCode (ref_function = "gst_caps_ref", unref_function = "gst_caps_unref", cheader_filename = "gst/gst.h")] public class Caps { public GLib.Type type; @@ -1504,138 +1636,6 @@ namespace Gst { public IndexFactory (string name, string longdesc, GLib.Type type); } [CCode (cheader_filename = "gst/gst.h")] - public class Pad : Gst.Object { - public void* element_private; - public weak Gst.PadTemplate padtemplate; - public GLib.StaticRecMutex stream_rec_lock; - public weak Gst.Task task; - public weak GLib.Mutex preroll_lock; - public weak GLib.Cond preroll_cond; - public weak GLib.Cond block_cond; - public weak Gst.PadBlockCallback block_callback; - public void* block_data; - public weak Gst.PadGetCapsFunction getcapsfunc; - public weak Gst.PadSetCapsFunction setcapsfunc; - public weak Gst.PadAcceptCapsFunction acceptcapsfunc; - public weak Gst.PadFixateCapsFunction fixatecapsfunc; - public weak Gst.PadActivateFunction activatefunc; - public weak Gst.PadActivateModeFunction activatepushfunc; - public weak Gst.PadActivateModeFunction activatepullfunc; - public weak Gst.PadLinkFunction linkfunc; - public weak Gst.PadUnlinkFunction unlinkfunc; - public weak Gst.Pad peer; - public void* sched_private; - public weak Gst.PadChainFunction chainfunc; - public weak Gst.PadCheckGetRangeFunction checkgetrangefunc; - public weak Gst.PadGetRangeFunction getrangefunc; - public weak Gst.PadEventFunction eventfunc; - public Gst.ActivateMode mode; - public weak Gst.PadQueryFunction queryfunc; - public weak Gst.PadIntLinkFunction intlinkfunc; - public weak Gst.PadBufferAllocFunction bufferallocfunc; - public int do_buffer_signals; - public int do_event_signals; - public bool accept_caps (Gst.Caps caps); - public bool activate_pull (bool active); - public bool activate_push (bool active); - public ulong add_buffer_probe (GLib.Callback handler, void* data); - public ulong add_buffer_probe_full (GLib.Callback handler, void* data, GLib.DestroyNotify notify); - public ulong add_data_probe (GLib.Callback handler, void* data); - public ulong add_data_probe_full (GLib.Callback handler, void* data, GLib.DestroyNotify notify); - public ulong add_event_probe (GLib.Callback handler, void* data); - public ulong add_event_probe_full (GLib.Callback handler, void* data, GLib.DestroyNotify notify); - public Gst.FlowReturn alloc_buffer (uint64 offset, int size, Gst.Caps caps, out weak Gst.Buffer buf); - public Gst.FlowReturn alloc_buffer_and_set_caps (uint64 offset, int size, Gst.Caps caps, out weak Gst.Buffer buf); - public bool can_link (Gst.Pad sinkpad); - public Gst.FlowReturn chain (Gst.Buffer buffer); - public bool check_pull_range (); - public bool dispatcher (Gst.PadDispatcherFunction dispatch, void* data); - public bool event_default (Gst.Event event); - public void fixate_caps (Gst.Caps caps); - public Gst.Caps get_allowed_caps (); - public Gst.Caps get_caps (); - public Gst.PadDirection get_direction (); - public void* get_element_private (); - public weak Gst.Caps get_fixed_caps_func (); - public weak GLib.List get_internal_links (); - public weak GLib.List get_internal_links_default (); - public Gst.Caps get_negotiated_caps (); - public weak Gst.PadTemplate get_pad_template (); - public weak Gst.Caps get_pad_template_caps (); - public weak Gst.Element get_parent_element (); - public Gst.Pad get_peer (); - public Gst.QueryType get_query_types (); - public Gst.QueryType get_query_types_default (); - public Gst.FlowReturn get_range (uint64 offset, uint size, out weak Gst.Buffer buffer); - public bool is_active (); - public bool is_blocked (); - public bool is_blocking (); - public bool is_linked (); - public Gst.PadLinkReturn link (Gst.Pad sinkpad); - public void load_and_link (Gst.Object parent); - [CCode (array_length_pos = 0, delegate_target_pos = 0)] - public Pad (string name, Gst.PadDirection direction); - [CCode (array_length_pos = 0, delegate_target_pos = 0)] - public Pad.from_static_template (Gst.StaticPadTemplate templ, string name); - [CCode (array_length_pos = 0, delegate_target_pos = 0)] - public Pad.from_template (Gst.PadTemplate templ, string name); - public bool pause_task (); - public bool peer_accept_caps (Gst.Caps caps); - public Gst.Caps peer_get_caps (); - public bool peer_query (Gst.Query query); - public weak Gst.Caps proxy_getcaps (); - public bool proxy_setcaps (Gst.Caps caps); - public Gst.FlowReturn pull_range (uint64 offset, uint size, out weak Gst.Buffer buffer); - public Gst.FlowReturn push (Gst.Buffer# buffer); - public bool push_event (Gst.Event# event); - public bool query (Gst.Query query); - public bool query_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val); - public bool query_default (Gst.Query query); - public bool query_duration (Gst.Format format, int64 duration); - public bool query_peer_convert (Gst.Format src_format, int64 src_val, Gst.Format dest_format, int64 dest_val); - public bool query_peer_duration (Gst.Format format, int64 duration); - public bool query_peer_position (Gst.Format format, int64 cur); - public bool query_position (Gst.Format format, int64 cur); - public void remove_buffer_probe (uint handler_id); - public void remove_data_probe (uint handler_id); - public void remove_event_probe (uint handler_id); - public bool send_event (Gst.Event# event); - public void set_acceptcaps_function (Gst.PadAcceptCapsFunction acceptcaps); - public void set_activate_function (Gst.PadActivateFunction activate); - public void set_activatepull_function (Gst.PadActivateModeFunction activatepull); - public void set_activatepush_function (Gst.PadActivateModeFunction activatepush); - public bool set_active (bool active); - public bool set_blocked (bool blocked); - public bool set_blocked_async (bool blocked, Gst.PadBlockCallback callback); - public void set_bufferalloc_function (Gst.PadBufferAllocFunction bufalloc); - public bool set_caps (Gst.Caps caps); - public void set_chain_function (Gst.PadChainFunction chain); - public void set_checkgetrange_function (Gst.PadCheckGetRangeFunction check); - public void set_element_private (void* priv); - public void set_event_function (Gst.PadEventFunction event); - public void set_fixatecaps_function (Gst.PadFixateCapsFunction fixatecaps); - public void set_getcaps_function (Gst.PadGetCapsFunction getcaps); - public void set_getrange_function (Gst.PadGetRangeFunction get); - public void set_internal_link_function (Gst.PadIntLinkFunction intlink); - public void set_link_function (Gst.PadLinkFunction link); - public void set_query_function (Gst.PadQueryFunction query); - public void set_setcaps_function (Gst.PadSetCapsFunction setcaps); - public void set_unlink_function (Gst.PadUnlinkFunction unlink); - public bool start_task (Gst.TaskFunction func, void* data); - public bool stop_task (); - public bool unlink (Gst.Pad sinkpad); - public void use_fixed_caps (); - public Gst.Caps caps { get; } - [NoAccessorMethod] - public Gst.PadDirection direction { get; construct; } - [NoAccessorMethod] - public Gst.PadTemplate template { get; set; } - public virtual signal bool have_data (Gst.MiniObject data); - public virtual signal void linked (Gst.Pad peer); - public virtual signal void request_link (); - public virtual signal void unlinked (Gst.Pad peer); - } - [CCode (cheader_filename = "gst/gst.h")] public class PadTemplate : Gst.Object { public weak string name_template; public Gst.PadDirection direction; @@ -1939,6 +1939,12 @@ namespace Gst { public Gst.Caps get_caps (); } [CCode (cheader_filename = "gst/gst.h")] + public delegate bool BufferProbeCallback (Gst.Pad pad, Gst.Buffer buffer); + [CCode (cheader_filename = "gst/gst.h")] + public delegate bool EventProbeCallback (Gst.Pad pad, Gst.Event event); + [CCode (cheader_filename = "gst/gst.h")] + public delegate bool DataProbeCallback (Gst.Pad pad, Gst.MiniObject data); + [CCode (cheader_filename = "gst/gst.h")] public delegate bool BusFunc (Gst.Bus bus, Gst.Message message); [CCode (cheader_filename = "gst/gst.h")] public delegate Gst.BusSyncReply BusSyncHandler (Gst.Bus bus, Gst.Message message); diff --git a/vapi/packages/gstreamer-0.10/gstreamer-0.10-custom.vala b/vapi/packages/gstreamer-0.10/gstreamer-0.10-custom.vala index 4dd628f..e212a12 100644 --- a/vapi/packages/gstreamer-0.10/gstreamer-0.10-custom.vala +++ b/vapi/packages/gstreamer-0.10/gstreamer-0.10-custom.vala @@ -49,6 +49,26 @@ namespace Gst { public void flag_unset (BufferFlag flag); } + [CCode (cheader_filename = "gst/gst.h")] + public class Pad { + [CCode (array_length_pos = 0, delegate_target_pos = 0)] + public Pad (string name, Gst.PadDirection direction); + + public uint add_buffer_probe (BufferProbeCallback handler); + public uint add_buffer_probe_full (BufferProbeCallback handler, GLib.DestroyNotify notify); + public uint add_data_probe (DataProbeCallback handler); + public uint add_data_probe_full (DataProbeCallback handler, GLib.DestroyNotify notify); + public uint add_event_probe (EventProbeCallback handler); + public uint add_event_probe_full (EventProbeCallback handler, GLib.DestroyNotify notify); + } + + [CCode (cname="GCallback")] + public delegate bool BufferProbeCallback (Gst.Pad pad, Gst.Buffer buffer); + [CCode (cname="GCallback")] + public delegate bool EventProbeCallback (Gst.Pad pad, Gst.Event event); + [CCode (cname="GCallback")] + public delegate bool DataProbeCallback (Gst.Pad pad, Gst.MiniObject data); + public class Caps { public weak Caps @ref (); public void unref (); diff --git a/vapi/packages/gstreamer-0.10/gstreamer-0.10.metadata b/vapi/packages/gstreamer-0.10/gstreamer-0.10.metadata index 693dcd7..7db1090 100644 --- a/vapi/packages/gstreamer-0.10/gstreamer-0.10.metadata +++ b/vapi/packages/gstreamer-0.10/gstreamer-0.10.metadata @@ -130,6 +130,13 @@ gst_object_sink hidden="1" gst_object_ref hidden="1" gst_object_unref hidden="1" GstPad.querytypefunc hidden="1" +gst_pad_new hidden="1" +gst_pad_add_buffer_probe hidden="1" +gst_pad_add_buffer_probe_full hidden="1" +gst_pad_add_data_probe hidden="1" +gst_pad_add_data_probe_full hidden="1" +gst_pad_add_event_probe hidden="1" +gst_pad_add_event_probe_full hidden="1" gst_pad_get_caps transfer_ownership="1" gst_pad_get_allowed_caps transfer_ownership="1" gst_pad_get_negotiated_caps transfer_ownership="1"