|  | 
|  | ElementFactory (ElementFactory&& src) noexcept | 
|  | 
| ElementFactory& | operator= (ElementFactory&& src) noexcept | 
|  | 
|  | ~ElementFactory () noexcept override | 
|  | 
| GstElementFactory* | gobj () | 
|  | Provides access to the underlying C GObject.  More... 
 | 
|  | 
| const GstElementFactory* | gobj () const | 
|  | Provides access to the underlying C GObject.  More... 
 | 
|  | 
| GstElementFactory* | gobj_copy () | 
|  | Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.  More... 
 | 
|  | 
| Glib::RefPtr< Gst::Element > | create (const Glib::ustring& name) | 
|  | Create a new element of the type defined by the given elementfactory.  More... 
 | 
|  | 
| Glib::RefPtr< Gst::Element > | create () | 
|  | A create() convenience overload.  More... 
 | 
|  | 
| bool | can_sink_all_caps (const Glib::RefPtr< const Gst::Caps >& caps) const | 
|  | Checks if the factory can sink all possible capabilities.  More... 
 | 
|  | 
| bool | can_src_all_caps (const Glib::RefPtr< const Gst::Caps >& caps) const | 
|  | Checks if the factory can src all possible capabilities.  More... 
 | 
|  | 
| bool | can_sink_any_caps (const Glib::RefPtr< const Gst::Caps >& caps) const | 
|  | Checks if the factory can sink any possible capability.  More... 
 | 
|  | 
| bool | can_src_any_caps (const Glib::RefPtr< const Gst::Caps >& caps) const | 
|  | Checks if the factory can src any possible capability.  More... 
 | 
|  | 
| GType | get_element_type () const | 
|  | Get the Type for elements managed by this factory.  More... 
 | 
|  | 
| std::vector< Glib::ustring > | get_metadata_keys () const | 
|  | Get the available keys for the metadata on factory.  More... 
 | 
|  | 
| Glib::ustring | get_metadata (const Glib::ustring& key) const | 
|  | Get the metadata on factory with key.  More... 
 | 
|  | 
| guint | get_num_pad_templates () const | 
|  | Gets the number of pad_templates in this factory.  More... 
 | 
|  | 
| URIType | get_uri_type () const | 
|  | Gets the type of URIs the element supports or Gst::URI_UNKNOWN if none.  More... 
 | 
|  | 
| std::vector< Glib::ustring > | get_uri_protocols () const | 
|  | Gets a nullptr-terminated array of protocols this element supports ornullptrif no protocols are supported.  More...
 | 
|  | 
| bool | has_interface (const Glib::ustring& name) const | 
|  | Check if factory implements the interface with name name.  More... 
 | 
|  | 
| std::vector< Gst::StaticPadTemplate > | get_static_pad_templates () const | 
|  | Gets the List of Gst::StaticPadTemplate for this factory.  More... 
 | 
|  | 
| bool | is_type (ElementFactoryListType type) const | 
|  | Check if factory is of the given types.  More... 
 | 
|  | 
|  | PluginFeature (PluginFeature&& src) noexcept | 
|  | 
| PluginFeature& | operator= (PluginFeature&& src) noexcept | 
|  | 
|  | ~PluginFeature () noexcept override | 
|  | 
| GstPluginFeature* | gobj () | 
|  | Provides access to the underlying C GObject.  More... 
 | 
|  | 
| const GstPluginFeature* | gobj () const | 
|  | Provides access to the underlying C GObject.  More... 
 | 
|  | 
| GstPluginFeature* | gobj_copy () | 
|  | Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.  More... 
 | 
|  | 
| void | set_rank (guint rank) | 
|  | Specifies a rank for a plugin feature, so that autoplugging uses the most appropriate feature.  More... 
 | 
|  | 
| guint | get_rank () const | 
|  | Gets the rank of a plugin feature.  More... 
 | 
|  | 
| Glib::RefPtr< Gst::PluginFeature > | load () | 
|  | Loads the plugin containing feature if it's not already loaded.  More... 
 | 
|  | 
| Glib::RefPtr< Gst::Plugin > | get_plugin () const | 
|  | Get the plugin that provides this feature.  More... 
 | 
|  | 
| Glib::ustring | get_plugin_name () const | 
|  | Get the name of the plugin that provides this feature.  More... 
 | 
|  | 
| bool | check_version (guint min_major, guint min_minor, guint min_micro) const | 
|  | Checks whether the given plugin feature is at least the required version.  More... 
 | 
|  | 
|  | Object (Object&& src) noexcept | 
|  | 
| Object& | operator= (Object&& src) noexcept | 
|  | 
|  | ~Object () noexcept override | 
|  | 
| GstObject* | gobj () | 
|  | Provides access to the underlying C GObject.  More... 
 | 
|  | 
| const GstObject* | gobj () const | 
|  | Provides access to the underlying C GObject.  More... 
 | 
|  | 
| GstObject* | gobj_copy () | 
|  | Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.  More... 
 | 
|  | 
| bool | is_element () const | 
|  | 
| bool | is_element_factory () const | 
|  | 
| bool | is_pad () const | 
|  | 
| bool | is_pad_template () const | 
|  | 
| bool | is_bin () const | 
|  | 
| guint32 | get_flags () const | 
|  | Returns the entire set of flags for the object.  More... 
 | 
|  | 
| bool | set_name (const Glib::ustring& name) | 
|  | Sets the name of object, or gives object a guaranteed unique name (if name is nullptr).  More...
 | 
|  | 
| Glib::ustring | get_name () const | 
|  | Returns a copy of the name of object.  More... 
 | 
|  | 
| bool | set_parent (const Glib::RefPtr< Gst::Object >& parent) | 
|  | Sets the parent of object to parent.  More... 
 | 
|  | 
| Glib::RefPtr< Gst::Object > | get_parent () | 
|  | Returns the parent of object.  More... 
 | 
|  | 
| Glib::RefPtr< const Gst::Object > | get_parent () const | 
|  | Returns the parent of object.  More... 
 | 
|  | 
| void | unparent () | 
|  | Clear the parent of object, removing the associated reference.  More... 
 | 
|  | 
| void | set_control_rate (Gst::ClockTime control_rate) | 
|  | Change the control-rate for this object.  More... 
 | 
|  | 
| Gst::ClockTime | get_control_rate () const | 
|  | Obtain the control-rate for this object.  More... 
 | 
|  | 
| Gst::ClockTime | suggest_next_sync () const | 
|  | Returns a suggestion for timestamps where buffers should be split to get best controller results.  More... 
 | 
|  | 
| bool | sync_values (Gst::ClockTime timestamp) | 
|  | Sets the properties of the object, according to the Gst::ControlSources that (maybe) handle them and for the given timestamp.  More... 
 | 
|  | 
| void | set_control_bindings_disabled (bool disabled) | 
|  | This function is used to disable all controlled properties of the object for some time, i.e. sync_values() will do nothing.  More... 
 | 
|  | 
| bool | has_asctive_control_bindings () const | 
|  | Check if the object has an active controlled properties.  More... 
 | 
|  | 
| bool | has_ancestor (const Glib::RefPtr< const Gst::Object >& ancestor) const | 
|  | Check if object has an ancestor ancestor somewhere up in the hierarchy.  More... 
 | 
|  | 
| bool | has_as_ancestor (const Glib::RefPtr< Gst::Object >& ancestor) const | 
|  | Check if object has an ancestor ancestor somewhere up in the hierarchy.  More... 
 | 
|  | 
| bool | has_as_parent (const Glib::RefPtr< Gst::Object >& parent) const | 
|  | Check if parent is the parent of object.  More... 
 | 
|  | 
| Glib::ustring | get_path_string () | 
|  | Generates a string describing the path of object in the object hierarchy.  More... 
 | 
|  | 
| Glib::PropertyProxy< Glib::ustring > | property_name () | 
|  | The name of the object.  More... 
 | 
|  | 
| Glib::PropertyProxy_ReadOnly< Glib::ustring > | property_name () const | 
|  | The name of the object.  More... 
 | 
|  | 
| Glib::PropertyProxy< Glib::RefPtr< Gst::Object > > | property_parent () | 
|  | The parent of the object.  More... 
 | 
|  | 
| Glib::PropertyProxy_ReadOnly< Glib::RefPtr< Gst::Object > > | property_parent () const | 
|  | The parent of the object.  More... 
 | 
|  | 
| Glib::SignalProxy< void, const Glib::RefPtr< Gst::Object >&, GParamSpec*> | signal_deep_notify () | 
|  | 
| int | get_refcount () const | 
|  | 
|  | Object (const Object &)=delete | 
|  | 
| Object & | operator= (const Object &)=delete | 
|  | 
|  | Object (Object &&src) noexcept | 
|  | 
| Object & | operator= (Object &&src) noexcept | 
|  | 
| void * | get_data (const QueryQuark &key) | 
|  | 
| void | set_data (const Quark &key, void *data) | 
|  | 
| void | set_data (const Quark &key, void *data, DestroyNotify notify) | 
|  | 
| void | remove_data (const QueryQuark &quark) | 
|  | 
| void * | steal_data (const QueryQuark &quark) | 
|  | 
| Glib::RefPtr< Glib::Object > | wrap (GObject *object, bool take_copy=false) | 
|  | 
|  | ObjectBase (const ObjectBase &)=delete | 
|  | 
| ObjectBase & | operator= (const ObjectBase &)=delete | 
|  | 
| void | set_property_value (const Glib::ustring &property_name, const Glib::ValueBase &value) | 
|  | 
| void | get_property_value (const Glib::ustring &property_name, Glib::ValueBase &value) const | 
|  | 
| void | set_property (const Glib::ustring &property_name, const PropertyType &value) | 
|  | 
| void | get_property (const Glib::ustring &property_name, PropertyType &value) const | 
|  | 
| void | connect_property_changed (const Glib::ustring &property_name, const sigc::slot< void > &slot) | 
|  | 
| void | connect_property_changed (const Glib::ustring &property_name, sigc::slot< void > &&slot) | 
|  | 
| sigc::connection | connect_property_changed_with_return (const Glib::ustring &property_name, const sigc::slot< void > &slot) | 
|  | 
| sigc::connection | connect_property_changed_with_return (const Glib::ustring &property_name, sigc::slot< void > &&slot) | 
|  | 
| void | freeze_notify () | 
|  | 
| void | thaw_notify () | 
|  | 
| virtual void | reference () const | 
|  | 
| virtual void | unreference () const | 
|  | 
| GObject * | gobj () | 
|  | 
| const GObject * | gobj () const | 
|  | 
| GObject * | gobj_copy () const | 
|  | 
|  | trackable () noexcept | 
|  | 
|  | trackable (const trackable &src) noexcept | 
|  | 
|  | trackable (trackable &&src) | 
|  | 
|  | ~trackable () | 
|  | 
| void | add_destroy_notify_callback (void *data, func_destroy_notify func) const | 
|  | 
| void | notify_callbacks () | 
|  | 
| trackable & | operator= (const trackable &src) | 
|  | 
| trackable & | operator= (trackable &&src) | 
|  | 
| void | remove_destroy_notify_callback (void *data) const | 
|  | 
|  | 
| static GType | get_type () | 
|  | Get the GType for this class, for use with the underlying GObject type system.  More... 
 | 
|  | 
| static bool | register_element (const Glib::RefPtr< Gst::Plugin >& plugin, const Glib::ustring& name, guint rank, GType type) | 
|  | Create a new elementfactory capable of instantiating objects of the type and add the factory to plugin.  More... 
 | 
|  | 
| static Glib::RefPtr< Gst::ElementFactory > | find (const Glib::ustring& name) | 
|  | Search for an element factory of the given name.  More... 
 | 
|  | 
| static Glib::RefPtr< Gst::Element > | create_element (const Glib::ustring& factory_name, const Glib::ustring& name) | 
|  | Create a new element of the type defined by the given element factory.  More... 
 | 
|  | 
| static Glib::RefPtr< Gst::Element > | create_element (const Glib::ustring& factory_name) | 
|  | A create_element() convenience overload.  More... 
 | 
|  | 
| static std::vector< Glib::RefPtr< Gst::ElementFactory > > | filter (const std::vector< Glib::RefPtr< Gst::ElementFactory > >& list, const Glib::RefPtr< const Gst::Caps >& caps, PadDirection direction, bool subsetonly) | 
|  | Filter out all the elementfactories in list that can handle caps in the given direction.  More... 
 | 
|  | 
| static std::vector< Glib::RefPtr< Gst::ElementFactory > > | get_elements (ElementFactoryListType type, Rank minrank) | 
|  | Get a list of factories that match the given type.  More... 
 | 
|  | 
| static GType | get_type () | 
|  | Get the GType for this class, for use with the underlying GObject type system.  More... 
 | 
|  | 
| static GType | get_type () | 
|  | Get the GType for this class, for use with the underlying GObject type system.  More... 
 | 
|  | 
| static bool | check_uniqueness (const Glib::ListHandle< const Gst::Object >& list, const Glib::ustring& name) | 
|  | Checks to see if there is any object named name in list.  More... 
 | 
|  | 
Create Gst::Element 's from a factory. 
Gst::ElementFactory is used to create instances of elements. A Gst::ElementFactory can be added to a Gst::Plugin as it is also a Gst::PluginFeature.
Use the find() and create() functions to create element instances or use create_element() as a convenient shortcut.
The following code example shows you how to create a 'filesrc' element.
#include <gstreamermm.h>
#include <iostream>
int main (int argc, char *argc[])
{
  if(!srcfactory)
  {
    std::cout << 
"Could not find factory 'filesrc'" << 
std::endl;
    exit(1);
  }
  src = srcfactory->
create(
"src");
  if(!src)
  {
    std::cout << 
"Could not create element 'src'" << 
std::endl;
    exit(1);
  }
  ...
}
Last reviewed on 2016-05-21 (1.8.0).