mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-07 04:11:26 +00:00
ghostpad: Implement iterate internal links
The internally linked pad of the ghost pad is its proxy pad, which is the pad that is linked to the ghost pads target.
This commit is contained in:
parent
28493b04ec
commit
15229ab669
1 changed files with 17 additions and 0 deletions
|
@ -763,6 +763,21 @@ gst_ghost_pad_do_setcaps (GstPad * pad, GstCaps * caps)
|
|||
return gst_proxy_pad_do_setcaps (pad, caps);
|
||||
}
|
||||
|
||||
static GstIterator *
|
||||
gst_ghost_pad_do_iterate_internal_links (GstPad * pad)
|
||||
{
|
||||
GstIterator *res = NULL;
|
||||
GstPad *internal = GST_PROXY_PAD_INTERNAL (GST_GHOST_PAD_CAST (pad));
|
||||
|
||||
if (internal) {
|
||||
res =
|
||||
gst_iterator_new_single (GST_TYPE_PAD, internal,
|
||||
(GstCopyFunction) gst_object_ref, (GFreeFunc) gst_object_unref);
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
static void
|
||||
gst_ghost_pad_init (GstGhostPad * pad)
|
||||
{
|
||||
|
@ -775,6 +790,8 @@ gst_ghost_pad_init (GstGhostPad * pad)
|
|||
GST_DEBUG_FUNCPTR (gst_ghost_pad_do_activate_pull));
|
||||
gst_pad_set_activatepush_function (GST_PAD_CAST (pad),
|
||||
GST_DEBUG_FUNCPTR (gst_ghost_pad_do_activate_push));
|
||||
gst_pad_set_iterate_internal_links_function (GST_PAD_CAST (pad),
|
||||
GST_DEBUG_FUNCPTR (gst_ghost_pad_do_iterate_internal_links));
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Reference in a new issue