# Gst::PluginFeature Class Reference

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

`#include <pluginfeature.h>`

Inheritance diagram for Gst::PluginFeature:

List of all members.

## Public Types
typedef sigc::slot< bool, const Glib::RefPtr <Gst::PluginFeature >&> | SlotFilter
| For example, bool on_filter(const Glib::RefPtr<Gst::PluginFeature>& feature);.
## Public Member Functions
virtual | ~PluginFeature ()
GstPluginFeature* | gobj ()
| Provides access to the underlying C GObject.
const GstPluginFeature* | gobj () const
| Provides access to the underlying C GObject.
GstPluginFeature* | gobj_copy ()
| Provides access to the underlying C instance. The caller is responsible for unrefing it. Use when directly setting fields in structs.
void | set_rank (guint rank)
| Specifies a rank for a plugin feature, so that autoplugging uses the most appropriate feature.
void | set_name (const Glib::ustring& name)
| Sets the name of a plugin feature.
guint | get_rank () const
| Gets the rank of a plugin feature.
Glib::ustring | get_name () const
| Gets the name of a plugin feature.
Glib::RefPtr<Gst::PluginFeature> | load ()
| Loads the plugin containing feature if it's not already loaded.
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.
## 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.

## Detailed Description

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

## Member Typedef Documentation

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

virtual Gst::PluginFeature::~PluginFeature | ( |  | ) | `[virtual]`

## Member Function Documentation

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`.

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

Gets the name of a plugin feature.

Returns:
  The name.

Reimplemented from Gst::Object.

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

Gets the rank of a plugin feature.

Returns:
  The rank of the feature.

const GstPluginFeature* Gst::PluginFeature::gobj | ( |  | ) | const`[inline]`

Provides access to the underlying C GObject.

Reimplemented from Gst::Object.

Reimplemented in Gst::ElementFactory, and Gst::IndexFactory.

GstPluginFeature* Gst::PluginFeature::gobj | ( |  | ) | `[inline]`

Provides access to the underlying C GObject.

Reimplemented from Gst::Object.

Reimplemented in Gst::ElementFactory, and Gst::IndexFactory.

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.

Reimplemented from Gst::Object.

Reimplemented in Gst::ElementFactory, and Gst::IndexFactory.

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: |[ GstPluginFeature *loaded_feature;

loaded_feature = gst_plugin_feature_load (feature); // presumably, we're no longer interested in the potentially-unloaded feature gst_object_unref (feature); feature = loaded_feature; ]|

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

void Gst::PluginFeature::set_name | ( | const Glib::ustring & | name | ) |

Sets the name of a plugin feature.

The name uniquely identifies a feature within all features of the same type. Renaming a plugin feature is not allowed. A copy is made of the name so you should free the supplied name after calling this function.

Parameters:

  | name | The name to set.

Reimplemented from Gst::Object.

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

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.

The documentation for this class was generated from the following file:

- pluginfeature.h