Module: Gst::ChildProxy
- Defined in:
- (unknown)
Overview
This interface abstracts handling of property sets for elements with children. Imagine elements such as mixers or polyphonic generators. They all have multiple Gst::Pad or some kind of voice objects. Another use case are container elements like Gst::Bin. The element implementing the interface acts as a parent for those child objects.
By implementing this interface the child properties can be accessed from the parent element by using gst_child_proxy_get() and gst_child_proxy_set().
Property names are written as child-name::property-name. The whole naming
scheme is recursive. Thus child1::child2::property is valid too, if
child1 and child2 implement the Gst::ChildProxy interface.
Instance Method Summary collapse
-
#child_added(child, name) ⇒ nil
Emits the Gst::ChildProxy::child-added signal.
-
#child_removed(child, name) ⇒ nil
Emits the Gst::ChildProxy::child-removed signal.
-
#children_count ⇒ Integer
Gets the number of child objects this parent contains.
-
#get(first_property_name, array) ⇒ nil
Gets properties of the parent object and its children.
-
#get_child_by_index(index) ⇒ GObject::Object
Fetches a child by its number.
-
#get_child_by_name(name) ⇒ GObject::Object
Looks up a child element by the given name.
-
#get_child_by_name_recurse(name) ⇒ GObject::Object
Looks up a child element by the given full-path name.
-
#get_property(name, value) ⇒ nil
Gets a single property using the GstChildProxy mechanism.
-
#get_valist(first_property_name, var_args) ⇒ nil
Gets properties of the parent object and its children.
-
#lookup(name, target, pspec) ⇒ Boolean
Looks up which object and GParam::Spec would be effected by the given name.
-
#set(first_property_name, array) ⇒ nil
Sets properties of the parent object and its children.
-
#set_property(name, value) ⇒ nil
Sets a single property using the GstChildProxy mechanism.
-
#set_valist(first_property_name, var_args) ⇒ nil
Sets properties of the parent object and its children.
Instance Method Details
#child_added(child, name) ⇒ nil
Emits the Gst::ChildProxy::child-added signal.
#child_removed(child, name) ⇒ nil
Emits the Gst::ChildProxy::child-removed signal.
#children_count ⇒ Integer
Gets the number of child objects this parent contains.
#get(first_property_name, array) ⇒ nil
Gets properties of the parent object and its children.
#get_child_by_index(index) ⇒ GObject::Object
Fetches a child by its number.
#get_child_by_name(name) ⇒ GObject::Object
Looks up a child element by the given name.
This virtual method has a default implementation that uses Gst::Object together with gst_object_get_name(). If the interface is to be used with #GObjects, this methods needs to be overridden.
#get_child_by_name_recurse(name) ⇒ GObject::Object
Looks up a child element by the given full-path name.
Similar to gst_child_proxy_get_child_by_name(), this method searches and returns a child given a name. The difference is that this method allows a hierarchical path in the form of child1::child2::child3. In the later example this method would return a reference to child3, if found. The name should be made of element names only and should not contain any property names.
#get_property(name, value) ⇒ nil
Gets a single property using the GstChildProxy mechanism. You are responsible for freeing it by calling g_value_unset()
#get_valist(first_property_name, var_args) ⇒ nil
Gets properties of the parent object and its children.
#lookup(name, target, pspec) ⇒ Boolean
Looks up which object and GParam::Spec would be effected by the given name. case the values for pspec and target are not modified. Unref target after usage. For plain #GObject target is the same as object.
#set(first_property_name, array) ⇒ nil
Sets properties of the parent object and its children.
#set_property(name, value) ⇒ nil
Sets a single property using the GstChildProxy mechanism.
#set_valist(first_property_name, var_args) ⇒ nil
Sets properties of the parent object and its children.