Gst::PluginFeature Class Reference

A base class for anything that can be added to a Gst::Plugin. More...

`#include <gstreamermm/pluginfeature.h>`

Inheritance diagram for Gst::PluginFeature:
[legend]

## Public Types

typedef sigc::slot< bool, const Glib::RefPtr< Gst::PluginFeature >&> | SlotFilter
| For example, bool on_filter(const Glib::RefPtr<Gst::PluginFeature>& feature);. More...

## Public Member Functions

| 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...
Public Member Functions inherited from Gst::Object
| 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

## Static Public Member Functions

static GType | get_type ()
| Get the GType for this class, for use with the underlying GObject type system. More...
Static Public Member Functions inherited from Gst::Object
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...

## Related Functions

(Note that these are not member functions.)
Glib::RefPtr< Gst::PluginFeature > | wrap (GstPluginFeature* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...
Related Functions inherited from Gst::Object
Glib::RefPtr< Gst::Object > | wrap (GstObject* object, bool take_copy=false)
| A Glib::wrap() method for this object. More...

## Additional Inherited Members

Protected Member Functions inherited from Gst::Object
virtual void | on_deep_notify (const Glib::RefPtr< Gst::Object >& prop_object, GParamSpec* prop)
| This is a default handler for the signal signal_deep_notify(). More...

## Detailed Description

A base class for anything that can be added to a Gst::Plugin.

Last reviewed on 2016-06-06 (1.8.0)

## Member Typedef Documentation

## SlotFilter

typedef sigc::slot< bool, const Glib::RefPtr<Gst::PluginFeature>& > Gst::PluginFeature::SlotFilter

For example, bool on_filter(const Glib::RefPtr<Gst::PluginFeature>& feature);.

The filter function should return true if the feature is a match, false otherwise.

## Constructor & Destructor Documentation

## PluginFeature()

Gst::PluginFeature::PluginFeature | ( | PluginFeature&& | src | ) |

noexcept

## ~PluginFeature()

Gst::PluginFeature::~PluginFeature | ( |  | ) |

override noexcept

## Member Function Documentation

## check_version()

bool Gst::PluginFeature::check_version | ( | guint | min_major,
|  | guint | min_minor,
|  | guint | min_micro
| ) |  | const

Checks whether the given plugin feature is at least the required version.

Parameters

  min_major | Minimum required major version.
  min_minor | Minimum required minor version.
  min_micro | Minimum required micro version.

Returns
  `true` if the plugin feature has at least the required version, otherwise `false`.

## get_plugin()

Glib::RefPtr<Gst::Plugin> Gst::PluginFeature::get_plugin | ( |  | ) | const

Get the plugin that provides this feature.

Returns
  The plugin that provides this feature, or `nullptr`. Unref with Gst::Object::unref() when no longer needed.

## get_plugin_name()

Glib::ustring Gst::PluginFeature::get_plugin_name | ( |  | ) | const

Get the name of the plugin that provides this feature.

Returns
  The name of the plugin that provides this feature, or `nullptr` if the feature is not associated with a plugin.

## get_rank()

guint Gst::PluginFeature::get_rank | ( |  | ) | const

Gets the rank of a plugin feature.

Returns
  The rank of the feature.

## get_type()

static GType Gst::PluginFeature::get_type | ( |  | ) |

static

Get the GType for this class, for use with the underlying GObject type system.

## gobj() [1/2]

GstPluginFeature* Gst::PluginFeature::gobj | ( |  | ) |

inline

Provides access to the underlying C GObject.

## gobj() [2/2]

const GstPluginFeature* Gst::PluginFeature::gobj | ( |  | ) | const

inline

Provides access to the underlying C GObject.

## gobj_copy()

GstPluginFeature* Gst::PluginFeature::gobj_copy | ( |  | ) |

Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.

## load()

Glib::RefPtr<Gst::PluginFeature> Gst::PluginFeature::load | ( |  | ) |

Loads the plugin containing feature if it's not already loaded.

feature is unaffected; use the return value instead.

Normally this function is used like this:

[C example ellipted]

Returns
  A reference to the loaded feature, or `nullptr` on error.

## operator=()

PluginFeature& Gst::PluginFeature::operator= | ( | PluginFeature&& | src | ) |

noexcept

## set_rank()

void Gst::PluginFeature::set_rank | ( | guint | rank | ) |

Specifies a rank for a plugin feature, so that autoplugging uses the most appropriate feature.

Parameters

  rank | Rank value - higher number means more priority rank.

## Friends And Related Function Documentation

## wrap()

Glib::RefPtr< Gst::PluginFeature > wrap | ( | GstPluginFeature * | object,
|  | bool | take_copy = `false`
| ) |  |

related

A Glib::wrap() method for this object.

Parameters

  object | The C instance.
  take_copy | False if the result should take ownership of the C instance. True if it should take a new copy or ref.

Returns
  A C++ instance that wraps this C instance.