| Top |
| GstElement * | gst_bin_new () |
| gboolean | gst_bin_add () |
| gboolean | gst_bin_remove () |
| GstElement * | gst_bin_get_by_name () |
| GstElement * | gst_bin_get_by_name_recurse_up () |
| GstElement * | gst_bin_get_by_interface () |
| GstIterator * | gst_bin_iterate_elements () |
| GstIterator * | gst_bin_iterate_recurse () |
| GstIterator * | gst_bin_iterate_sinks () |
| GstIterator * | gst_bin_iterate_sorted () |
| GstIterator * | gst_bin_iterate_sources () |
| GstIterator * | gst_bin_iterate_all_by_interface () |
| gboolean | gst_bin_recalculate_latency () |
| void | gst_bin_add_many () |
| void | gst_bin_remove_many () |
| GstPad * | gst_bin_find_unlinked_pad () |
| gboolean | gst_bin_sync_children_states () |
| #define | GST_BIN_IS_NO_RESYNC() |
| #define | GST_BIN_CHILDREN() |
| #define | GST_BIN_CHILDREN_COOKIE() |
| #define | GST_BIN_NUMCHILDREN() |
GObject ╰── GInitiallyUnowned ╰── GstObject ╰── GstElement ╰── GstBin ╰── GstPipeline
GstElement * gst_bin_get_by_name_recurse_up (GstBin *bin,const gchar *name);
GstIterator * gst_bin_iterate_all_by_interface (GstBin *bin,GType iface);
GstPad * gst_bin_find_unlinked_pad (GstBin *bin,GstPadDirection direction);
#define GST_BIN_IS_NO_RESYNC(bin) (GST_OBJECT_FLAG_IS_SET(bin,GST_BIN_FLAG_NO_RESYNC))
struct GstBin {
/* our children, subclass are supposed to update these
* fields to reflect their state with _iterate_*() */
gint numchildren;
GList *children;
guint32 children_cookie;
GstBus *child_bus;
GList *messages;
gboolean polling;
gboolean state_dirty;
gboolean clock_dirty;
GstClock *provided_clock;
GstElement *clock_provider;
};
struct GstBinClass {
GstElementClass parent_class;
/* virtual methods for subclasses */
gboolean (*add_element) (GstBin *bin, GstElement *element);
gboolean (*remove_element) (GstBin *bin, GstElement *element);
void (*handle_message) (GstBin *bin, GstMessage *message);
/* signal */
void (*deep_element_added) (GstBin *bin, GstBin *sub_bin, GstElement *child);
void (*deep_element_removed) (GstBin *bin, GstBin *sub_bin, GstElement *child);
};
“async-handling” property“async-handling” gboolean
The bin will handle Asynchronous state changes.
Flags: Read / Write
Default value: FALSE
“message-forward” property“message-forward” gboolean
Forwards all children messages.
Flags: Read / Write
Default value: FALSE
“deep-element-added” signalvoid user_function (GstBin *gstbin, GstBin *arg1, GstElement *arg2, gpointer user_data)
Flags: Run First
“deep-element-removed” signalvoid user_function (GstBin *gstbin, GstBin *arg1, GstElement *arg2, gpointer user_data)
Flags: Run First
“element-added” signalvoid user_function (GstBin *gstbin, GstElement *arg1, gpointer user_data)
Flags: Run First
“element-removed” signalvoid user_function (GstBin *gstbin, GstElement *arg1, gpointer user_data)
Flags: Run First