* @add_element: method to add an element to a bin
* @remove_element: method to remove an element from a bin
* @handle_message: method to handle a message from the children
+ * @deep_element_added: method called when an element was added somewhere
+ * in the bin hierarchy
+ * @deep_element_removed: method called when an element was removed somewhere
+ * in the bin hierarchy
*
* Subclasses can override the @add_element and @remove_element to
* update the list of children in the bin.
* message handling. @handle_message takes ownership of the message, just like
* #gst_element_post_message.
*
- * The @element_added_deep vfunc will be called when a new element has been
+ * The @deep_element_added vfunc will be called when a new element has been
* added to any bin inside this bin, so it will also be called if a new child
* was added to a sub-bin of this bin. #GstBin implementations that override
* this message should chain up to the parent class implementation so the
gpointer _gst_reserved[GST_PADDING-2];
};
+GST_API
GType gst_bin_get_type (void);
+
+GST_API
GstElement* gst_bin_new (const gchar *name);
/* add and remove elements from the bin */
+
+GST_API
gboolean gst_bin_add (GstBin *bin, GstElement *element);
+
+GST_API
gboolean gst_bin_remove (GstBin *bin, GstElement *element);
/* retrieve a single child */
+
+GST_API
GstElement* gst_bin_get_by_name (GstBin *bin, const gchar *name);
+
+GST_API
GstElement* gst_bin_get_by_name_recurse_up (GstBin *bin, const gchar *name);
+
+GST_API
GstElement* gst_bin_get_by_interface (GstBin *bin, GType iface);
/* retrieve multiple children */
+
+GST_API
GstIterator* gst_bin_iterate_elements (GstBin *bin);
+
+GST_API
GstIterator* gst_bin_iterate_sorted (GstBin *bin);
+
+GST_API
GstIterator* gst_bin_iterate_recurse (GstBin *bin);
+GST_API
GstIterator* gst_bin_iterate_sinks (GstBin *bin);
+
+GST_API
GstIterator* gst_bin_iterate_sources (GstBin *bin);
+
+GST_API
GstIterator* gst_bin_iterate_all_by_interface (GstBin *bin, GType iface);
/* latency */
+
+GST_API
gboolean gst_bin_recalculate_latency (GstBin * bin);
/* set and get suppressed flags */
+
+GST_API
void gst_bin_set_suppressed_flags (GstBin * bin, GstElementFlags flags);
+
+GST_API
GstElementFlags gst_bin_get_suppressed_flags (GstBin * bin);
#ifdef G_DEFINE_AUTOPTR_CLEANUP_FUNC