|  |  |  | GStreamer 0.10 Core Reference Manual |  | 
|---|---|---|---|---|
#include <gst/gst.h>
                    GstPluginFeature;
#define             GST_PLUGIN_FEATURE_NAME             (feature)
                    GstTypeNameData;
gboolean            (*GstPluginFeatureFilter)           (GstPluginFeature *feature,
                                                         gpointer user_data);
enum                GstRank;
gboolean            gst_plugin_feature_type_name_filter (GstPluginFeature *feature,
                                                         GstTypeNameData *data);
void                gst_plugin_feature_set_rank         (GstPluginFeature *feature,
                                                         guint rank);
void                gst_plugin_feature_set_name         (GstPluginFeature *feature,
                                                         const gchar *name);
guint               gst_plugin_feature_get_rank         (GstPluginFeature *feature);
const gchar*        gst_plugin_feature_get_name         (GstPluginFeature *feature);
GstPluginFeature*   gst_plugin_feature_load             (GstPluginFeature *feature);
void                gst_plugin_feature_list_free        (GList *list);
gboolean            gst_plugin_feature_check_version    (GstPluginFeature *feature,
                                                         guint min_major,
                                                         guint min_minor,
                                                         guint min_micro);
GObject +----GstObject +----GstPluginFeature +----GstElementFactory +----GstTypeFindFactory +----GstIndexFactory
typedef struct _GstPluginFeature GstPluginFeature;
Opaque GstPluginFeature structure.
#define GST_PLUGIN_FEATURE_NAME(feature) (GST_PLUGIN_FEATURE (feature)->name)
Get the name of the feature
| feature: | The feature to query | 
typedef struct {
  const gchar 	*name;
  GType		 type;
} GstTypeNameData;
Structure used for filtering based on name and type.
| const gchar * name; | a name | 
| GType type; | a GType | 
gboolean (*GstPluginFeatureFilter) (GstPluginFeature *feature, gpointer user_data);
A function that can be used with e.g. gst_registry_feature_filter()
to get a list of pluginfeature that match certain criteria.
| feature: | the pluginfeature to check | 
| user_data: | the user_data that has been passed on e.g. gst_registry_feature_filter() | 
| Returns : | TRUEfor a positive match,FALSEotherwise | 
typedef enum {
  GST_RANK_NONE                 = 0,
  GST_RANK_MARGINAL             = 64,
  GST_RANK_SECONDARY            = 128,
  GST_RANK_PRIMARY              = 256
} GstRank;
Element priority ranks. Defines the order in which the autoplugger (or similar rank-picking mechanisms) will choose this element over an alternative one with the same function.
The rank is a unsigned integer ranging from 0 (GST_RANK_NONE) to 256
(GST_RANK_PRIMARY). These constants serve as a rough guidiance for defining
the rank of a GstPlugin using gst_plugin_feature_set_rank().
gboolean gst_plugin_feature_type_name_filter (GstPluginFeature *feature, GstTypeNameData *data);
Compares type and name of plugin feature. Can be used with gst_filter_run().
| feature: | the GstPluginFeature | 
| data: | the type and name to check against | 
| Returns : | TRUE if equal. | 
void gst_plugin_feature_set_rank (GstPluginFeature *feature, guint rank);
Specifies a rank for a plugin feature, so that autoplugging uses the most appropriate feature.
| feature: | feature to rank | 
| rank: | rank value - higher number means more priority rank | 
void gst_plugin_feature_set_name (GstPluginFeature *feature, const gchar *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.
| feature: | a feature | 
| name: | the name to set | 
guint gst_plugin_feature_get_rank (GstPluginFeature *feature);
Gets the rank of a plugin feature.
| feature: | a feature | 
| Returns : | The rank of the feature | 
const gchar* gst_plugin_feature_get_name (GstPluginFeature *feature);
Gets the name of a plugin feature.
| feature: | a feature | 
| Returns : | the name | 
GstPluginFeature* gst_plugin_feature_load (GstPluginFeature *feature);
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;
| feature: | the plugin feature to check | 
| Returns : | A reference to the loaded feature, or NULL on error. | 
void gst_plugin_feature_list_free (GList *list);
Unrefs each member of list, then frees the list.
| list: | list of GstPluginFeature | 
gboolean gst_plugin_feature_check_version (GstPluginFeature *feature, guint min_major, guint min_minor, guint min_micro);
Checks whether the given plugin feature is at least the required version
| feature: | a feature | 
| 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. |