GstPad
<!-- ##### SECTION Short_Description ##### -->
-The connection between Elements
+Object contained by elements that allows links to other elements
<!-- ##### SECTION Long_Description ##### -->
<para>
-A #GstElement is connected to other elements via "pads", which are extremely
-light-weight generic connections points.
+A #GstElement is linked to other elements via "pads", which are extremely
+light-weight generic link points.
After two pads are retrieved from an element with gst_element_get_pad(),
-the pads can be connected with gst_pad_connect(). (For quick connections,
-you can also use gst_element_connect(), which will make the obvious
-connection for you if it's straightforward).
+the pads can be link with gst_pad_link(). (For quick links,
+you can also use gst_element_link(), which will make the obvious
+link for you if it's straightforward.)
</para>
<para>
Pads are typically created from a #GstPadTemplate with
#GstPadTemplate, #GstElement, #GstEvent
</para>
-<!-- ##### MACRO GST_PAD_NAME ##### -->
+<!-- ##### MACRO GST_IS_PAD_FAST ##### -->
+<para>
+
+</para>
+
+@obj:
+
+
+<!-- ##### MACRO GST_PAD_CLASS ##### -->
+<para>
+
+</para>
+
+@klass:
+
+
+<!-- ##### MACRO GST_TYPE_REAL_PAD ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO GST_IS_REAL_PAD ##### -->
+<para>
+
+</para>
+
+@obj:
+
+
+<!-- ##### MACRO GST_IS_REAL_PAD_FAST ##### -->
+<para>
+
+</para>
+
+@obj:
+
+
+<!-- ##### MACRO GST_IS_REAL_PAD_CLASS ##### -->
+<para>
+
+</para>
+
+@klass:
+<!-- # Unused Parameters # -->
+@obj:
+
+
+<!-- ##### MACRO GST_REAL_PAD ##### -->
+<para>
+
+</para>
+
+@obj:
+
+
+<!-- ##### MACRO GST_REAL_PAD_CLASS ##### -->
+<para>
+
+</para>
+
+@klass:
+
+
+<!-- ##### MACRO GST_TYPE_GHOST_PAD ##### -->
+<para>
+
+</para>
+
+
+
+<!-- ##### MACRO GST_IS_GHOST_PAD ##### -->
+<para>
+
+</para>
+
+@obj:
+
+
+<!-- ##### MACRO GST_IS_GHOST_PAD_FAST ##### -->
+<para>
+
+</para>
+
+@obj:
+
+
+<!-- ##### MACRO GST_IS_GHOST_PAD_CLASS ##### -->
+<para>
+
+</para>
+
+@klass:
+<!-- # Unused Parameters # -->
+@obj:
+
+
+<!-- ##### MACRO GST_GHOST_PAD ##### -->
+<para>
+
+</para>
+
+@obj:
+
+
+<!-- ##### MACRO GST_GHOST_PAD_CLASS ##### -->
+<para>
+
+</para>
+
+@klass:
+
+
+<!-- ##### STRUCT GstStaticPadTemplate ##### -->
+<para>
+
+</para>
+
+@name_template:
+@direction:
+@presence:
+@static_caps:
+
+<!-- ##### STRUCT GstPadLink ##### -->
+<para>
+
+</para>
+
+
+<!-- ##### ENUM GstPadLinkReturn ##### -->
+<para>
+The result of a pad link.
+</para>
+
+@GST_PAD_LINK_REFUSED: the link was refused.
+@GST_PAD_LINK_DELAYED: the link was delayed, probably because the
+ element needs more specific pad capabilitiess.
+@GST_PAD_LINK_OK: the link succeeded.
+@GST_PAD_LINK_DONE: the link succeeded,
+ any more attempts are not needed.
+
+<!-- ##### MACRO GST_PAD_LINK_FAILED ##### -->
+<para>
+
+</para>
+
+@ret:
+
+
+<!-- ##### MACRO GST_PAD_LINK_SUCCESSFUL ##### -->
+<para>
+
+</para>
+
+@ret:
+
+
+<!-- ##### MACRO GST_PAD_QUERY_TYPE_FUNCTION ##### -->
+<para>
+A convenience macro to construct query type functions
+</para>
+
+@functionname: the name of the function
+@...: query types, 0 to mark the last element
+
+
+<!-- ##### MACRO GST_PAD_FORMATS_FUNCTION ##### -->
+<para>
+Convenience function to define an array of formats that can be used
+as #GstPadGetFormatsFunction.
+</para>
+
+@functionname: The name of the function
+@...: comma separated list of formats, 0 to mark the end
+
+
+<!-- ##### MACRO GST_PAD_EVENT_MASK_FUNCTION ##### -->
+<para>
+Convenience function to define an array of event masks that can be used
+as #GstPadGetEventMaskFunction.
+</para>
+
+@functionname: The name of the function
+@...: comma separated list of event maks, { 0, } to mark the end
+
+
+<!-- ##### USER_FUNCTION GstPadChainFunction ##### -->
+<para>
+A function that will be called when chaining buffers.
+</para>
+
+@pad: the #GstPad that performed the chain.
+@data:
+<!-- # Unused Parameters # -->
+@buf: the #GstBuffer that is chained.
+
+
+<!-- ##### USER_FUNCTION GstPadGetFunction ##### -->
+<para>
+A function that will be called when pulling a buffer.
+</para>
+
+@pad: the #GstPad to get a buffer from.
+@Returns: the #GstBuffer pulled.
+
+
+<!-- ##### USER_FUNCTION GstPadEventFunction ##### -->
+<para>
+Function signature to handle an event for the pad.
+</para>
+
+@pad: the #GstPad to handle the event.
+@event: the #GstEvent to handle.
+@Returns: TRUE if the pad could handle the event.
+
+
+<!-- ##### USER_FUNCTION GstPadConvertFunction ##### -->
+<para>
+The signature of a convert function.
+</para>
+
+@pad: the #GstPad to perform the convert on.
+@src_format: the source #GstFormat of the conversion.
+@src_value: the source value of the conversion.
+@dest_format: a pointer to the destination #GstFormat.
+@dest_value: a pointer to the destination value.
+@Returns: TRUE if the conversion could be performed.
+
+
+<!-- ##### USER_FUNCTION GstPadQueryFunction ##### -->
+<para>
+The signature of the query function.
+</para>
+
+@pad: the #GstPad to query.
+@type: the #GstPadQueryType.
+@format: a pointer to the target #GstFormat.
+@value: a pointer to the target value.
+@Returns: TRUE if the query could be performed.
+
+
+<!-- ##### USER_FUNCTION GstPadIntLinkFunction ##### -->
+<para>
+The signature of the internal pad link function.
+</para>
+
+@pad: The #GstPad to query.
+@Returns: a newly allocated #GList of pads that are linked to
+ the given pad on the inside of the parent element.
+ The caller must call g_list_free() on it after use.
+
+
+<!-- ##### USER_FUNCTION GstPadFormatsFunction ##### -->
+<para>
+The signature of the formats function.
+</para>
+
+@pad: a #GstPad to query
+@Returns: an array of formats
+
+
+<!-- ##### USER_FUNCTION GstPadEventMaskFunction ##### -->
+<para>
+The signature of the eventmask function.
+</para>
+
+@pad: the #GstPad to query
+@Returns: an array of event masks
+
+
+<!-- ##### USER_FUNCTION GstPadQueryTypeFunction ##### -->
+<para>
+The signature of the query types function.
+</para>
+
+@pad: a #GstPad to query
+@Returns: an array of query types
+
+
+<!-- ##### USER_FUNCTION GstPadLinkFunction ##### -->
+<para>
+Function signature to handle a new link on the pad.
+</para>
+
+@pad: the #GstPad that is linked.
+@caps: the peer's #GstCaps.
+@Returns: the result of the link with the specified caps.
+
+
+<!-- ##### USER_FUNCTION GstPadUnlinkFunction ##### -->
+<para>
+
+</para>
+
+@pad:
+
+
+<!-- ##### USER_FUNCTION GstPadGetCapsFunction ##### -->
+<para>
+Returns the capabilities of the specified pad. By default this function
+will return the pad template capabilities, but can optionally be overridden.
+</para>
+
+@pad: the #GstPad to get the capabilities of.
+@Returns: the #GstCaps of the pad.
+<!-- # Unused Parameters # -->
+@caps: the peer's #GstCaps, can be used to filter the capabilities.
+
+
+<!-- ##### USER_FUNCTION GstPadFixateFunction ##### -->
+<para>
+
+</para>
+
+@pad:
+@caps:
+@Returns:
+
+
+<!-- ##### USER_FUNCTION GstPadBufferAllocFunction ##### -->
+<para>
+
+</para>
+
+@pad:
+@offset:
+@size:
+@Returns:
+
+
+<!-- ##### USER_FUNCTION GstPadDispatcherFunction ##### -->
+<para>
+A dispatcher function is called for all internally linked pads, see
+gst_pad_dispatcher().
+</para>
+
+@pad: the #GstPad that is dispatched.
+@data: the gpointer to optional user data.
+@Returns: TRUE if the dispatching procedure has to be stopped.
+
+
+<!-- ##### ENUM GstPadDirection ##### -->
<para>
-Gets the name of the pad.
+The direction of a pad.
</para>
-@pad: a #GstPad to get the name of.
-@Returns: the pad's name.
+@GST_PAD_UNKNOWN: direction is unknown.
+@GST_PAD_SRC: the pad is a source pad.
+@GST_PAD_SINK: the pad is a sink pad.
+<!-- ##### ENUM GstPadFlags ##### -->
+<para>
+Flags for the pad.
+</para>
-<!-- ##### MACRO GST_PAD_ELEMENT_PRIVATE ##### -->
+@GST_PAD_DISABLED: the pad is disabled.
+@GST_PAD_NEGOTIATING:
+@GST_PAD_FLAG_LAST: subclasses can use this number to enumerate their flags.
+
+<!-- ##### MACRO GST_PAD_NAME ##### -->
<para>
-Gets the private data set by the element that owns the pad.
+Gets the name of the pad.
</para>
-@pad: a #GstPad to get the private data of.
-#Returns: a gpointer to the private data.
+@pad: a #GstPad to get the name of.
+@Returns: the pad's name.
<!-- ##### MACRO GST_PAD_PARENT ##### -->
@Returns: the parent #GstElement of this pad.
+<!-- ##### MACRO GST_PAD_ELEMENT_PRIVATE ##### -->
+<para>
+Gets the private data set by the element that owns the pad.
+</para>
+
+@pad: a #GstPad to get the private data of.
+#Returns: a gpointer to the private data.
+
+
<!-- ##### MACRO GST_PAD_PAD_TEMPLATE ##### -->
<para>
Gets the pad template that was used to create this pad.
used.
+<!-- ##### MACRO GST_RPAD_DIRECTION ##### -->
+<para>
+Get the direction of the real pad.
+</para>
+
+@pad: the realpad to query.
+
+
+<!-- ##### MACRO GST_RPAD_CAPS ##### -->
+<para>
+Get the caps of the real pad.
+</para>
+
+@pad: the real pad to query.
+
+
+<!-- ##### MACRO GST_RPAD_APPFILTER ##### -->
+<para>
+Get the application filter for this pad
+</para>
+
+@pad: the pad to query
+
+
+<!-- ##### MACRO GST_RPAD_PEER ##### -->
+<para>
+Get the peer element of the real pad.
+</para>
+
+@pad: the real pad to query.
+
+
+<!-- ##### MACRO GST_RPAD_CHAINFUNC ##### -->
+<para>
+Get the chain function of the real pad.
+</para>
+
+@pad: the real pad to query.
+
+
+<!-- ##### MACRO GST_RPAD_CHAINHANDLER ##### -->
+<para>
+Get the eventhandler function from the real pad.
+</para>
+
+@pad: the real pad to query.
+
+
+<!-- ##### MACRO GST_RPAD_GETFUNC ##### -->
+<para>
+Get get getfunction of the real pad.
+</para>
+
+@pad: the real pad to query.
+
+
+<!-- ##### MACRO GST_RPAD_GETHANDLER ##### -->
+<para>
+Get the gethandler function of this real pad.
+</para>
+
+@pad: the real pad to query.
+
+
+<!-- ##### MACRO GST_RPAD_EVENTFUNC ##### -->
+<para>
+Get the event function of this real pad.
+</para>
+
+@pad: the real pad to query.
+
+
+<!-- ##### MACRO GST_RPAD_EVENTHANDLER ##### -->
+<para>
+Get the eventhandler function of this real pad.
+</para>
+
+@pad: the real pad to query.
+
+
+<!-- ##### MACRO GST_RPAD_CONVERTFUNC ##### -->
+<para>
+Get the convert function of this pad
+</para>
+
+@pad: the pad to query
+
+
+<!-- ##### MACRO GST_RPAD_QUERYFUNC ##### -->
+<para>
+Get the query function of this pad
+</para>
+
+@pad: the pad to query
+
+
+<!-- ##### MACRO GST_RPAD_INTLINKFUNC ##### -->
+<para>
+Get the internal link function of this pad
+</para>
+
+@pad: the pad to query
+
+
+<!-- ##### MACRO GST_RPAD_FORMATSFUNC ##### -->
+<para>
+Get the formats function of this pad
+</para>
+
+@pad: the pad to query
+
+
+<!-- ##### MACRO GST_RPAD_QUERYTYPEFUNC ##### -->
+<para>
+Get the query types function of this pad
+</para>
+
+@pad: the pad to query
+
+
+<!-- ##### MACRO GST_RPAD_EVENTMASKFUNC ##### -->
+<para>
+Get the event mask function of this pad
+</para>
+
+@pad: the pad to query
+
+
+<!-- ##### MACRO GST_RPAD_LINKFUNC ##### -->
+<para>
+Get the link function of the pad
+</para>
+
+@pad: the pad to query
+
+
+<!-- ##### MACRO GST_RPAD_UNLINKFUNC ##### -->
+<para>
+
+</para>
+
+@pad:
+
+
+<!-- ##### MACRO GST_RPAD_GETCAPSFUNC ##### -->
+<para>
+Get the getcaps function of this pad
+</para>
+
+@pad: the pad to query
+
+
+<!-- ##### MACRO GST_RPAD_FIXATEFUNC ##### -->
+<para>
+
+</para>
+
+@pad:
+
+
+<!-- ##### MACRO GST_RPAD_BUFFERALLOCFUNC ##### -->
+<para>
+
+</para>
+
+@pad:
+
+
+<!-- ##### MACRO GST_RPAD_LINK ##### -->
+<para>
+
+</para>
+
+@pad:
+
+
+<!-- ##### MACRO GST_RPAD_EXPLICIT_CAPS ##### -->
+<para>
+
+</para>
+
+@pad:
+
+
+<!-- ##### MACRO GST_GPAD_REALPAD ##### -->
+<para>
+Get the real pad of this ghost pad.
+</para>
+
+@pad: the real pad to query.
+
+
<!-- ##### MACRO GST_PAD_REALIZE ##### -->
<para>
Returns the real pad of this pad.
<!-- ##### MACRO GST_PAD_PEER ##### -->
<para>
Gets the peer pad of this pad. The peer pad is the pad on to which the parent
-element is connected through this pad.
+element is linked through this pad.
</para>
@pad: a #GstPad to get the peer pad of.
@Returns: the peer #GstPad.
-<!-- ##### MACRO GST_PAD_CAN_PULL ##### -->
-<para>
-Checks if buffers can be pulled from this buffer.
-</para>
-
-@pad: a #GstPad to check on if a buffer can be pulled from it.
-
-
-<!-- ##### MACRO GST_PAD_IS_SINK ##### -->
+<!-- ##### MACRO GST_PAD_IS_LINKED ##### -->
<para>
-Checks if the pad is a sink pad.
+Checks if the pad is linked.
</para>
@pad: a #GstPad to check.
-<!-- ##### MACRO GST_PAD_IS_SRC ##### -->
+<!-- ##### MACRO GST_PAD_IS_ACTIVE ##### -->
<para>
-Checks if the pad is a source pad.
+Checks if the pad is active.
</para>
-@pad: a #GstPad to check.
+@pad: a #GstPad to check
-<!-- ##### MACRO GST_PAD_IS_CONNECTED ##### -->
+<!-- ##### MACRO GST_PAD_IS_NEGOTIATING ##### -->
<para>
-Checks if the pad is connected.
+
</para>
-@pad: a #GstPad to check.
+@pad:
-<!-- ##### MACRO GST_PAD_IS_ACTIVE ##### -->
+<!-- ##### MACRO GST_PAD_IS_USABLE ##### -->
<para>
-Checks if the pad is active.
+Checks if a pad is usable. A usable pad is both linked and active.
</para>
@pad: a #GstPad to check
-<!-- ##### MACRO GST_PAD_IS_USABLE ##### -->
+<!-- ##### MACRO GST_PAD_CAN_PULL ##### -->
<para>
-Checks if a pad is usable. A usable pad both connected and active.
+Checks if buffers can be pulled from this buffer.
</para>
-@pad: a #GstPad to check
+@pad: a #GstPad to check on if a buffer can be pulled from it.
-<!-- ##### STRUCT GstPad ##### -->
+<!-- ##### MACRO GST_PAD_IS_SRC ##### -->
<para>
-The GstPad object
+Checks if the pad is a source pad.
</para>
+@pad: a #GstPad to check.
-<!-- ##### USER_FUNCTION GstPadChainFunction ##### -->
+
+<!-- ##### MACRO GST_PAD_IS_SINK ##### -->
<para>
-A function that will be called when chaining buffers.
+Checks if the pad is a sink pad.
</para>
-@pad: the #GstPad that performed the chain.
-@buf: the #GstBuffer that is chained.
+@pad: a #GstPad to check.
-<!-- ##### USER_FUNCTION GstPadGetFunction ##### -->
+<!-- ##### MACRO GST_TYPE_PAD_TEMPLATE ##### -->
<para>
-A function that will be called when pulling a buffer.
+
</para>
-@pad: the #GstPad to get a buffer from.
-@Returns: the #GstBuffer pulled.
-<!-- ##### USER_FUNCTION GstPadBufferPoolFunction ##### -->
+<!-- ##### MACRO GST_PAD_TEMPLATE ##### -->
<para>
-A function that will be called when a buffer pool is requested
-from this pad.
+
</para>
-@pad: the #GstPad to which the buffer pool is associated.
-@Returns: the #GstBufferPool associated with this pad.
+@obj:
-<!-- ##### USER_FUNCTION GstPadGetCapsFunction ##### -->
+<!-- ##### MACRO GST_PAD_TEMPLATE_CLASS ##### -->
<para>
-Returns the capabilities of the specified pad. By default this function
-will return the pad template capabilities, but can optionally be overridden.
+
</para>
-@pad: the #GstPad to get the capabilities of.
-@caps: the peer's #GstCaps, can be used to filter the capabilities.
-@Returns: the #GstCaps of the pad.
+@klass:
-<!-- ##### USER_FUNCTION GstPadEventFunction ##### -->
+<!-- ##### MACRO GST_IS_PAD_TEMPLATE ##### -->
<para>
-Function signature to handle an event for the pad.
+
</para>
-@pad: the #GstPad to handle the event.
-@event: the #GstEvent to handle.
-@Returns: TRUE if the pad could handle the event.
+@obj:
-<!-- ##### USER_FUNCTION GstPadConnectFunction ##### -->
+<!-- ##### MACRO GST_IS_PAD_TEMPLATE_CLASS ##### -->
<para>
-Function signature to handle a new connection on the pad.
+
</para>
-@pad: the #GstPad that is connected.
-@caps: the peer's #GstCaps.
-@Returns: the result of the connection with the specified caps.
+@klass:
+<!-- # Unused Parameters # -->
+@obj:
-<!-- ##### ENUM GstPadConnectReturn ##### -->
+<!-- ##### ENUM GstPadPresence ##### -->
<para>
-The result of a pad connection.
+Indicates when this pad will become available.
</para>
-@GST_PAD_CONNECT_REFUSED: the connection was refused.
-@GST_PAD_CONNECT_DELAYED: the connection was delayed, probably because the
- element needs more specific pad capabilitiess.
-@GST_PAD_CONNECT_OK: the connection succeeded.
-@GST_PAD_CONNECT_DONE: the connection succeeded,
- any more attempts are not needed.
+@GST_PAD_ALWAYS: the pad is always available
+@GST_PAD_SOMETIMES: the pad will become available depending on the media stream
+@GST_PAD_REQUEST: th pad is only available on request with
+gst_element_request_pad_by_name() or gst_element_request_compatible_pad().
-<!-- ##### USER_FUNCTION GstPadConvertFunction ##### -->
+<!-- ##### MACRO GST_PAD_TEMPLATE_NAME_TEMPLATE ##### -->
<para>
-The signature of a convert function.
+Get the nametemplate of the padtemplate.
</para>
-@pad: the #GstPad to perform the convert on.
-@src_format: the source #GstFormat of the conversion.
-@src_value: the source value of the conversion.
-@dest_format: a pointer to the destination #GstFormat.
-@dest_value: a pointer to the destination value.
-@Returns: TRUE if the conversion could be performed.
+@templ: the template to query
-<!-- ##### USER_FUNCTION GstPadDispatcherFunction ##### -->
+<!-- ##### MACRO GST_PAD_TEMPLATE_DIRECTION ##### -->
<para>
-A dispatcher function is called for all internally connected pads, see
-gst_pad_dispatcher().
+Get the direction of the padtemplate.
</para>
-@pad: the #GstPad that is dispatched.
-@data: the gpointer to optional user data.
-@Returns: TRUE if the dispatching procedure has to be stopped.
+@templ: the template to query
-<!-- ##### USER_FUNCTION GstPadIntConnFunction ##### -->
+<!-- ##### MACRO GST_PAD_TEMPLATE_PRESENCE ##### -->
<para>
-The signature of the internal pad connection function.
+Get the presence of the padtemplate.
</para>
-@pad: The #GstPad to query.
-@Returns: a newly allocated #GList of pads that are connected to
- the given pad on the inside of the parent element.
- The caller must call g_list_free() on it after use.
+@templ: the template to query
-<!-- ##### ENUM GstPadQueryType ##### -->
+<!-- ##### MACRO GST_PAD_TEMPLATE_CAPS ##### -->
<para>
-The different supported query types.
+Get a handle to the padtemplate #GstCaps
</para>
-@GST_PAD_QUERY_NONE:
-@GST_PAD_QUERY_TOTAL: Query the total stream time.
-@GST_PAD_QUERY_POSITION: Query the current stream position.
-@GST_PAD_QUERY_LATENCY: Query the latency on the pad.
-@GST_PAD_QUERY_JITTER: Query the average jitter beteen optimal processing
- and current processing.
-@GST_PAD_QUERY_START: Query for the configured start time for segmented seek
-@GST_PAD_QUERY_SEGMENT_END: Query the end position of the currently
- executing segment.
-@GST_PAD_QUERY_RATE: Query at which rate this pad will process data.
+@templ: the template to query
-<!-- ##### USER_FUNCTION GstPadQueryFunction ##### -->
+
+<!-- ##### ENUM GstPadTemplateFlags ##### -->
<para>
-The signature of the query function.
+Flags for the padtemplate
</para>
-@pad: the #GstPad to query.
-@type: the #GstPadQueryType.
-@format: a pointer to the target #GstFormat.
-@value: a pointer to the target value.
-@Returns: TRUE if the query could be performed.
-
+@GST_PAD_TEMPLATE_FIXED: The padtemplate has no variable properties
+@GST_PAD_TEMPLATE_FLAG_LAST: first flag that can be used by subclasses.
-<!-- ##### USER_FUNCTION GstPadEventMaskFunction ##### -->
+<!-- ##### MACRO GST_PAD_TEMPLATE_IS_FIXED ##### -->
<para>
-The signature of the eventmask function.
+Check if the properties of the padtemplate are fixed
</para>
-@pad: the #GstPad to query
-@Returns: an array of event masks
+@templ: the template to query
-<!-- ##### USER_FUNCTION GstPadFormatsFunction ##### -->
+<!-- ##### MACRO GST_STATIC_PAD_TEMPLATE ##### -->
<para>
-The signature of the formats function.
+
</para>
-@pad: a #GstPad to query
-@Returns: an array of formats
+@padname:
+@dir:
+@pres:
+@caps:
-<!-- ##### USER_FUNCTION GstPadQueryTypeFunction ##### -->
+<!-- ##### FUNCTION gst_real_pad_get_type ##### -->
<para>
-The signature of the query types function.
+
</para>
-@pad: a #GstPad to query
-@Returns: an array of query types
+@Returns:
-<!-- ##### MACRO GST_PAD_QUERY_TYPE_FUNCTION ##### -->
+<!-- ##### FUNCTION gst_ghost_pad_get_type ##### -->
<para>
-A convenience macro to construct query type functions
+
</para>
-@functionname: the name of the function
-@...: query types, 0 to mark the last element
+@Returns:
-<!-- ##### ENUM GstPadDirection ##### -->
+<!-- ##### FUNCTION gst_pad_new ##### -->
<para>
-The direction of a pad.
-</para>
-
-@GST_PAD_UNKNOWN: direction is unknown.
-@GST_PAD_SRC: the pad is a source pad.
-@GST_PAD_SINK: the pad is a sink pad.
-<!-- ##### ENUM GstPadFlags ##### -->
-<para>
-Flags for the pad.
</para>
-@GST_PAD_DISABLED: the pad is disabled.
-@GST_PAD_EOS: the pad is in end of stream state.
-@GST_PAD_FLAG_LAST: subclasses can use this number to enumerate their flags.
+@name:
+@direction:
+@Returns:
-<!-- ##### FUNCTION gst_pad_new ##### -->
+
+<!-- ##### FUNCTION gst_pad_new_from_template ##### -->
<para>
</para>
+@templ:
@name:
-@direction:
@Returns:
@Returns:
-<!-- ##### MACRO gst_pad_destroy ##### -->
+<!-- ##### FUNCTION gst_pad_set_name ##### -->
<para>
-Destroy the pad.
+
</para>
-@pad: the pad to destroy
+@pad:
+@name:
-<!-- ##### FUNCTION gst_pad_new_from_template ##### -->
+<!-- ##### FUNCTION gst_pad_get_name ##### -->
<para>
</para>
-@templ:
-@name:
+@pad:
@Returns:
@Returns:
-<!-- ##### FUNCTION gst_pad_set_chain_function ##### -->
+<!-- ##### FUNCTION gst_pad_set_active ##### -->
<para>
</para>
@pad:
-@chain:
+@active:
-<!-- ##### FUNCTION gst_pad_set_get_function ##### -->
+<!-- ##### FUNCTION gst_pad_is_active ##### -->
<para>
</para>
@pad:
-@get:
+@Returns:
-<!-- ##### FUNCTION gst_pad_set_bufferpool_function ##### -->
+<!-- ##### FUNCTION gst_pad_set_element_private ##### -->
<para>
</para>
@pad:
-@bufpool:
+@priv:
-<!-- ##### FUNCTION gst_pad_set_connect_function ##### -->
+<!-- ##### FUNCTION gst_pad_get_element_private ##### -->
<para>
</para>
@pad:
-@connect:
+@Returns:
-<!-- ##### FUNCTION gst_pad_set_getcaps_function ##### -->
+<!-- ##### FUNCTION gst_pad_set_parent ##### -->
<para>
</para>
@pad:
-@getcaps:
+@parent:
-<!-- ##### FUNCTION gst_pad_try_set_caps ##### -->
+<!-- ##### FUNCTION gst_pad_get_parent ##### -->
<para>
</para>
@pad:
-@caps:
@Returns:
-<!-- ##### FUNCTION gst_pad_get_caps ##### -->
+<!-- ##### FUNCTION gst_pad_get_real_parent ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_check_compatibility ##### -->
+<!-- ##### FUNCTION gst_pad_get_scheduler ##### -->
<para>
</para>
-@srcpad:
-@sinkpad:
+@pad:
@Returns:
-<!-- ##### FUNCTION gst_pad_set_name ##### -->
+<!-- ##### FUNCTION gst_pad_add_ghost_pad ##### -->
<para>
</para>
@pad:
-@name:
+@ghostpad:
-<!-- ##### FUNCTION gst_pad_get_name ##### -->
+<!-- ##### FUNCTION gst_pad_remove_ghost_pad ##### -->
<para>
</para>
@pad:
-@Returns:
+@ghostpad:
-<!-- ##### FUNCTION gst_pad_set_element_private ##### -->
+<!-- ##### FUNCTION gst_pad_get_ghost_pad_list ##### -->
<para>
</para>
@pad:
-@priv:
+@Returns:
-<!-- ##### FUNCTION gst_pad_get_element_private ##### -->
+<!-- ##### FUNCTION gst_pad_get_pad_template ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_set_parent ##### -->
+<!-- ##### FUNCTION gst_pad_set_bufferalloc_function ##### -->
<para>
</para>
@pad:
-@parent:
+@bufalloc:
+<!-- # Unused Parameters # -->
+@bufferalloc:
-<!-- ##### FUNCTION gst_pad_get_parent ##### -->
+<!-- ##### FUNCTION gst_pad_alloc_buffer ##### -->
<para>
</para>
@pad:
+@offset:
+@size:
@Returns:
-<!-- ##### FUNCTION gst_pad_get_real_parent ##### -->
+<!-- ##### FUNCTION gst_pad_set_chain_function ##### -->
<para>
</para>
@pad:
-@Returns:
+@chain:
-<!-- ##### FUNCTION gst_pad_add_ghost_pad ##### -->
+<!-- ##### FUNCTION gst_pad_set_get_function ##### -->
<para>
</para>
@pad:
-@ghostpad:
+@get:
-<!-- ##### FUNCTION gst_pad_remove_ghost_pad ##### -->
+<!-- ##### FUNCTION gst_pad_set_event_function ##### -->
<para>
</para>
@pad:
-@ghostpad:
+@event:
-<!-- ##### FUNCTION gst_pad_get_ghost_pad_list ##### -->
+<!-- ##### FUNCTION gst_pad_set_event_mask_function ##### -->
<para>
</para>
@pad:
-@Returns:
+@mask_func:
-<!-- ##### FUNCTION gst_pad_get_peer ##### -->
+<!-- ##### FUNCTION gst_pad_get_event_masks ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_connect ##### -->
+<!-- ##### FUNCTION gst_pad_get_event_masks_default ##### -->
<para>
</para>
-@srcpad:
-@sinkpad:
+@pad:
@Returns:
-<!-- ##### FUNCTION gst_pad_connect_filtered ##### -->
+<!-- ##### FUNCTION gst_pad_set_link_function ##### -->
<para>
</para>
-@srcpad:
-@sinkpad:
-@filtercaps:
-@Returns:
+@pad:
+@link:
-<!-- ##### FUNCTION gst_pad_reconnect_filtered ##### -->
+<!-- ##### FUNCTION gst_pad_can_link ##### -->
<para>
</para>
@srcpad:
@sinkpad:
-@filtercaps:
@Returns:
-<!-- ##### FUNCTION gst_pad_try_reconnect_filtered ##### -->
+<!-- ##### FUNCTION gst_pad_can_link_filtered ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_disconnect ##### -->
+<!-- ##### FUNCTION gst_pad_set_unlink_function ##### -->
<para>
</para>
-@srcpad:
-@sinkpad:
+@pad:
+@unlink:
-<!-- ##### FUNCTION gst_pad_can_connect ##### -->
+<!-- ##### FUNCTION gst_pad_link ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_can_connect_filtered ##### -->
+<!-- ##### FUNCTION gst_pad_link_filtered ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_push ##### -->
+<!-- ##### FUNCTION gst_pad_unlink ##### -->
<para>
</para>
-@pad:
-@buf:
+@srcpad:
+@sinkpad:
-<!-- ##### FUNCTION gst_pad_pull ##### -->
+<!-- ##### FUNCTION gst_pad_is_linked ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_get_bufferpool ##### -->
+<!-- ##### FUNCTION gst_pad_get_peer ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_load_and_connect ##### -->
+<!-- ##### FUNCTION gst_pad_get_negotiated_caps ##### -->
<para>
</para>
-@self:
-@parent:
+@pad:
+@Returns:
-<!-- ##### FUNCTION gst_pad_proxy_connect ##### -->
+<!-- ##### FUNCTION gst_pad_is_negotiated ##### -->
<para>
</para>
@pad:
-@caps:
@Returns:
-<!-- ##### FUNCTION gst_pad_get_pad_template ##### -->
+<!-- ##### FUNCTION gst_pad_get_caps ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_get_allowed_caps ##### -->
+<!-- ##### FUNCTION gst_pad_try_set_caps ##### -->
<para>
</para>
@pad:
+@caps:
@Returns:
-<!-- ##### FUNCTION gst_pad_recalc_allowed_caps ##### -->
+<!-- ##### FUNCTION gst_pad_try_set_caps_nonfixed ##### -->
<para>
</para>
@pad:
+@caps:
@Returns:
-<!-- ##### FUNCTION gst_pad_perform_negotiate ##### -->
+<!-- ##### FUNCTION gst_pad_check_compatibility ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_ghost_pad_save_thyself ##### -->
-<para>
-
-</para>
-
-@pad:
-@parent:
-@Returns:
-
-
-<!-- ##### FUNCTION gst_pad_select ##### -->
-<para>
-
-</para>
-
-@padlist:
-@Returns:
-
-
-<!-- ##### FUNCTION gst_pad_selectv ##### -->
-<para>
-
-</para>
-
-@pad:
-@Varargs:
-@Returns:
-
-
-<!-- ##### FUNCTION gst_pad_dispatcher ##### -->
-<para>
-
-</para>
-
-@pad:
-@dispatch:
-@data:
-@Returns:
-
-
-<!-- ##### FUNCTION gst_pad_send_event ##### -->
-<para>
-
-</para>
-
-@pad:
-@event:
-@Returns:
-
-
-<!-- ##### FUNCTION gst_pad_event_default ##### -->
-<para>
-
-</para>
-
-@pad:
-@event:
-@Returns:
-
-
-<!-- ##### FUNCTION gst_pad_set_event_function ##### -->
+<!-- ##### FUNCTION gst_pad_set_getcaps_function ##### -->
<para>
</para>
@pad:
-@event:
+@getcaps:
-<!-- ##### FUNCTION gst_pad_get_event_masks ##### -->
+<!-- ##### FUNCTION gst_pad_set_fixate_function ##### -->
<para>
</para>
@pad:
-@Returns:
+@fixate:
-<!-- ##### FUNCTION gst_pad_get_event_masks_default ##### -->
+<!-- ##### FUNCTION gst_pad_proxy_getcaps ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_handles_event ##### -->
+<!-- ##### FUNCTION gst_pad_proxy_pad_link ##### -->
<para>
</para>
@pad:
-@mask:
+@caps:
@Returns:
-<!-- ##### FUNCTION gst_pad_set_event_mask_function ##### -->
+<!-- ##### FUNCTION gst_pad_proxy_fixate ##### -->
<para>
</para>
@pad:
-@mask_func:
+@caps:
+@Returns:
-<!-- ##### FUNCTION gst_pad_set_convert_function ##### -->
+<!-- ##### FUNCTION gst_pad_proxy_link ##### -->
<para>
</para>
@pad:
-@convert:
+@caps:
+@Returns:
-<!-- ##### FUNCTION gst_pad_convert ##### -->
+<!-- ##### FUNCTION gst_pad_set_explicit_caps ##### -->
<para>
</para>
@pad:
-@src_format:
-@src_value:
-@dest_format:
-@dest_value:
+@caps:
@Returns:
-<!-- ##### FUNCTION gst_pad_convert_default ##### -->
+<!-- ##### FUNCTION gst_pad_use_explicit_caps ##### -->
<para>
</para>
@pad:
-@src_format:
-@src_value:
-@dest_format:
-@dest_value:
-@Returns:
-<!-- ##### FUNCTION gst_pad_get_formats ##### -->
+<!-- ##### FUNCTION gst_pad_relink_filtered ##### -->
<para>
</para>
-@pad:
+@srcpad:
+@sinkpad:
+@filtercaps:
@Returns:
-<!-- ##### FUNCTION gst_pad_get_formats_default ##### -->
+<!-- ##### FUNCTION gst_pad_perform_negotiate ##### -->
<para>
</para>
-@pad:
+@srcpad:
+@sinkpad:
@Returns:
-<!-- ##### FUNCTION gst_pad_handles_format ##### -->
+<!-- ##### FUNCTION gst_pad_renegotiate ##### -->
<para>
</para>
@pad:
-@format:
@Returns:
-<!-- ##### FUNCTION gst_pad_set_formats_function ##### -->
+<!-- ##### FUNCTION gst_pad_unnegotiate ##### -->
<para>
</para>
@pad:
-@formats:
-<!-- ##### FUNCTION gst_pad_get_internal_connections ##### -->
+<!-- ##### FUNCTION gst_pad_try_relink_filtered ##### -->
<para>
</para>
-@pad:
+@srcpad:
+@sinkpad:
+@filtercaps:
@Returns:
-<!-- ##### FUNCTION gst_pad_get_internal_connections_default ##### -->
+<!-- ##### FUNCTION gst_pad_get_allowed_caps ##### -->
<para>
</para>
@Returns:
-<!-- ##### FUNCTION gst_pad_set_internal_connection_function ##### -->
+<!-- ##### FUNCTION gst_pad_caps_change_notify ##### -->
<para>
</para>
@pad:
-@intconn:
-<!-- ##### FUNCTION gst_pad_set_query_function ##### -->
+<!-- ##### FUNCTION gst_pad_recover_caps_error ##### -->
<para>
</para>
@pad:
-@query:
+@allowed:
+@Returns:
-<!-- ##### FUNCTION gst_pad_query ##### -->
+<!-- ##### FUNCTION gst_pad_push ##### -->
<para>
</para>
@pad:
-@type:
-@format:
-@value:
-@Returns:
+@data:
+<!-- # Unused Parameters # -->
+@buf:
-<!-- ##### FUNCTION gst_pad_query_default ##### -->
+<!-- ##### FUNCTION gst_pad_pull ##### -->
<para>
</para>
@pad:
-@type:
-@format:
-@value:
@Returns:
-<!-- ##### FUNCTION gst_pad_get_query_types ##### -->
+<!-- ##### FUNCTION gst_pad_send_event ##### -->
<para>
</para>
@pad:
+@event:
@Returns:
-<!-- ##### FUNCTION gst_pad_get_query_types_default ##### -->
+<!-- ##### FUNCTION gst_pad_event_default ##### -->
<para>
</para>
@pad:
+@event:
@Returns:
-<!-- ##### FUNCTION gst_pad_set_query_type_function ##### -->
+<!-- ##### FUNCTION gst_pad_selectv ##### -->
<para>
</para>
+@padlist:
+@Returns:
+<!-- # Unused Parameters # -->
@pad:
-@type_func:
+@Varargs:
-<!-- ##### MACRO gst_pad_add_probe ##### -->
+<!-- ##### FUNCTION gst_pad_select ##### -->
<para>
-Adds the probe to the given pad
-</para>
-
-@pad: The pad to add the probe to
-@probe: The probe to add to the pad
-
-<!-- ##### MACRO gst_pad_remove_probe ##### -->
-<para>
-Remove the probe from the pad
</para>
-@pad: The pad to remove the probe of
-@probe: The probe to remove
+@pad:
+@Varargs:
+@Returns:
+<!-- # Unused Parameters # -->
+@padlist:
-<!-- ##### FUNCTION gst_pad_is_active ##### -->
+<!-- ##### FUNCTION gst_pad_select_valist ##### -->
<para>
</para>
@pad:
+@varargs:
@Returns:
-<!-- ##### FUNCTION gst_pad_set_active ##### -->
+<!-- ##### FUNCTION gst_pad_set_formats_function ##### -->
<para>
</para>
@pad:
-@active:
+@formats:
-<!-- ##### FUNCTION gst_pad_get_scheduler ##### -->
+<!-- ##### FUNCTION gst_pad_get_formats ##### -->
<para>
</para>
@Returns:
-<!-- ##### STRUCT GstRealPad ##### -->
+<!-- ##### FUNCTION gst_pad_get_formats_default ##### -->
<para>
-The realpad object
+
</para>
@pad:
-@caps:
-@filter:
-@appfilter:
-@getcapsfunc:
-@direction:
-@connectfunc:
-@peer:
-@sched_private:
-@chainfunc:
-@chainhandler:
-@getfunc:
-@gethandler:
-@eventfunc:
-@eventhandler:
-@eventmaskfunc:
-@ghostpads:
-@convertfunc:
-@queryfunc:
-@formatsfunc:
-@querytypefunc:
-@intconnfunc:
-@bufferpoolfunc:
-@probedisp:
+@Returns:
-<!-- ##### MACRO GST_RPAD_DIRECTION ##### -->
+
+<!-- ##### FUNCTION gst_pad_set_convert_function ##### -->
<para>
-Get the direction of the real pad.
+
</para>
-@pad: the realpad to query.
+@pad:
+@convert:
-<!-- ##### MACRO GST_RPAD_CAPS ##### -->
+<!-- ##### FUNCTION gst_pad_convert ##### -->
<para>
-Get the caps of the real pad.
+
</para>
-@pad: the real pad to query.
+@pad:
+@src_format:
+@src_value:
+@dest_format:
+@dest_value:
+@Returns:
-<!-- ##### MACRO GST_RPAD_PEER ##### -->
+<!-- ##### FUNCTION gst_pad_convert_default ##### -->
<para>
-Get the peer element of the real pad.
+
</para>
-@pad: the real pad to query.
+@pad:
+@src_format:
+@src_value:
+@dest_format:
+@dest_value:
+@Returns:
-<!-- ##### MACRO GST_RPAD_CHAINFUNC ##### -->
+<!-- ##### FUNCTION gst_pad_set_query_function ##### -->
<para>
-Get the chain function of the real pad.
+
</para>
-@pad: the real pad to query.
+@pad:
+@query:
-<!-- ##### MACRO GST_RPAD_FILTER ##### -->
+<!-- ##### FUNCTION gst_pad_set_query_type_function ##### -->
<para>
-Get the filter from the pad
+
</para>
-@pad: the pad to query
+@pad:
+@type_func:
-<!-- ##### MACRO GST_RPAD_APPFILTER ##### -->
+<!-- ##### FUNCTION gst_pad_get_query_types ##### -->
<para>
-Get the application filter for this pad
+
</para>
-@pad: the pad to query
+@pad:
+@Returns:
-<!-- ##### MACRO GST_RPAD_GETFUNC ##### -->
+<!-- ##### FUNCTION gst_pad_get_query_types_default ##### -->
<para>
-Get get getfunction of the real pad.
+
</para>
-@pad: the real pad to query.
+@pad:
+@Returns:
-<!-- ##### MACRO GST_RPAD_BUFFERPOOLFUNC ##### -->
+<!-- ##### FUNCTION gst_pad_query ##### -->
<para>
-Get the bufferpoolfunction from the real pad.
+
</para>
-@pad: the real pad to query.
+@pad:
+@type:
+@format:
+@value:
+@Returns:
-<!-- ##### MACRO GST_RPAD_CHAINHANDLER ##### -->
+<!-- ##### FUNCTION gst_pad_query_default ##### -->
<para>
-Get the eventhandler function from the real pad.
+
</para>
-@pad: the real pad to query.
+@pad:
+@type:
+@format:
+@value:
+@Returns:
-<!-- ##### MACRO GST_RPAD_EVENTFUNC ##### -->
+<!-- ##### FUNCTION gst_pad_set_internal_link_function ##### -->
<para>
-Get the event function of this real pad.
+
</para>
-@pad: the real pad to query.
+@pad:
+@intlink:
-<!-- ##### MACRO GST_RPAD_EVENTHANDLER ##### -->
+<!-- ##### FUNCTION gst_pad_get_internal_links ##### -->
<para>
-Get the eventhandler function of this real pad.
+
</para>
-@pad: the real pad to query.
+@pad:
+@Returns:
-<!-- ##### MACRO GST_RPAD_GETHANDLER ##### -->
+<!-- ##### FUNCTION gst_pad_get_internal_links_default ##### -->
<para>
-Get the gethandler function of this real pad.
+
</para>
-@pad: the real pad to query.
+@pad:
+@Returns:
-<!-- ##### MACRO GST_RPAD_CONNECTFUNC ##### -->
+<!-- ##### FUNCTION gst_pad_dispatcher ##### -->
<para>
-Get the connect function of the pad
+
</para>
-@pad: the pad to query
+@pad:
+@dispatch:
+@data:
+@Returns:
-<!-- ##### MACRO GST_RPAD_GETCAPSFUNC ##### -->
+<!-- ##### MACRO gst_pad_add_probe ##### -->
<para>
-Get the getcaps function of this pad
+Adds the probe to the given pad
</para>
-@pad: the pad to query
+@pad: The pad to add the probe to
+@probe: The probe to add to the pad
-<!-- ##### MACRO GST_RPAD_CONVERTFUNC ##### -->
+<!-- ##### MACRO gst_pad_remove_probe ##### -->
<para>
-Get the convert function of this pad
+Remove the probe from the pad
</para>
-@pad: the pad to query
+@pad: The pad to remove the probe of
+@probe: The probe to remove
-<!-- ##### MACRO GST_RPAD_INTCONNFUNC ##### -->
+<!-- ##### FUNCTION gst_pad_load_and_link ##### -->
<para>
-Get the internal connection function of this pad
+
</para>
-@pad: the pad to query
+@self:
+@parent:
-<!-- ##### MACRO GST_RPAD_QUERYFUNC ##### -->
+<!-- ##### FUNCTION gst_ghost_pad_new ##### -->
<para>
-Get the query function of this pad
+
</para>
-@pad: the pad to query
+@name:
+@pad:
+@Returns:
-<!-- ##### MACRO GST_RPAD_EVENTMASKFUNC ##### -->
+<!-- ##### FUNCTION gst_pad_template_get_type ##### -->
<para>
-Get the event mask function of this pad
+
</para>
-@pad: the pad to query
+@Returns:
-<!-- ##### MACRO GST_RPAD_FORMATSFUNC ##### -->
+<!-- ##### FUNCTION gst_pad_template_new ##### -->
<para>
-Get the formats function of this pad
+
</para>
-@pad: the pad to query
+@name_template:
+@direction:
+@presence:
+@caps:
+@Returns:
+<!-- # Unused Parameters # -->
+@Varargs:
-<!-- ##### MACRO GST_RPAD_QUERYTYPEFUNC ##### -->
+<!-- ##### FUNCTION gst_static_pad_template_get ##### -->
<para>
-Get the query types function of this pad
+
</para>
-@pad: the pad to query
+@pad_template:
+@Returns:
+<!-- # Unused Parameters # -->
+@templ:
-<!-- ##### MACRO GST_GPAD_REALPAD ##### -->
+<!-- ##### FUNCTION gst_pad_template_get_caps ##### -->
<para>
-Get the real pad of this ghost pad.
+
</para>
-@pad: the real pad to query.
+@templ:
+@Returns:
-<!-- ##### STRUCT GstGhostPad ##### -->
+<!-- ##### FUNCTION gst_pad_template_get_caps_by_name ##### -->
<para>
-The Ghostpad object
+
</para>
+@templ:
+@name:
+@Returns:
-<!-- ##### FUNCTION gst_ghost_pad_new ##### -->
+
+<!-- ##### FUNCTION gst_ghost_pad_save_thyself ##### -->
<para>
</para>
-@name:
@pad:
+@parent:
@Returns: