for (i = 0; i < GST_EVENT_MAX_STICKY; i++)
gst_event_replace (&context->events[i], NULL);
}
+
+/**
+ * gst_context_foreach:
+ * @context: a #GstContext
+ * @func: a #GFunc
+ * @user_data: user data
+ *
+ * Call @func with the non NULL event and @user_data.
+ */
+void
+gst_context_foreach (GstContext * context, GFunc func, gpointer user_data)
+{
+ guint i;
+ GstEvent *event;
+
+ for (i = 0; i < GST_EVENT_MAX_STICKY; i++)
+ if ((event = context->events[i]))
+ func (event, user_data);
+}
GstContext * gst_context_new (void);
+/* updating and setting events */
void gst_context_update (GstContext *context, GstEvent *event);
GstEvent * gst_context_get (GstContext *context, GstEventType type);
void gst_context_clear (GstContext *context);
+/* foreach */
+void gst_context_foreach (GstContext *context, GFunc func, gpointer user_data);
+
G_END_DECLS
#endif /* __GST_CONTEXT_H__ */