flowcombiner: add a gst_flow_combiner_reset() method

https://bugzilla.gnome.org/show_bug.cgi?id=744572

API: gst_flow_combiner_reset()
This commit is contained in:
Mark Nauwelaerts 2015-02-15 20:52:10 +01:00
parent bfaa7d1b9f
commit 8ec7272d99
2 changed files with 26 additions and 0 deletions

View file

@ -158,6 +158,30 @@ gst_flow_combiner_clear (GstFlowCombiner * combiner)
combiner->last_ret = GST_FLOW_OK;
}
/**
* gst_flow_combiner_reset:
* @combiner: the #GstFlowCombiner to clear
*
* Removes all pads from a #GstFlowCombiner and resets it to its initial state.
*
* Since: 1.6
*/
void
gst_flow_combiner_reset (GstFlowCombiner * combiner)
{
GList *iter;
g_return_if_fail (combiner != NULL);
GST_DEBUG ("Reset flow returns");
for (iter = combiner->pads.head; iter; iter = iter->next) {
GST_PAD_LAST_FLOW_RETURN (iter->data) = GST_FLOW_OK;
}
combiner->last_ret = GST_FLOW_OK;
}
static GstFlowReturn
gst_flow_combiner_get_flow (GstFlowCombiner * combiner)
{

View file

@ -53,6 +53,8 @@ void gst_flow_combiner_remove_pad (GstFlowCombiner * combiner, GstP
void gst_flow_combiner_clear (GstFlowCombiner * combiner);
void gst_flow_combiner_reset (GstFlowCombiner * combiner);
GType gst_flow_combiner_get_type (void);
G_END_DECLS