|  |  |  | GStreamer 1.0 Core Reference Manual |  | 
|---|---|---|---|---|
| Top | Description | Object Hierarchy | ||||
#include <gst/gst.h>
                    GstPluginFeature;
gboolean            (*GstPluginFeatureFilter)           (GstPluginFeature *feature,
                                                         gpointer user_data);
enum                GstRank;
void                gst_plugin_feature_set_rank         (GstPluginFeature *feature,
                                                         guint rank);
#define             gst_plugin_feature_set_name         (feature,
                                                         name)
guint               gst_plugin_feature_get_rank         (GstPluginFeature *feature);
#define             gst_plugin_feature_get_name         (feature)
GstPlugin *         gst_plugin_feature_get_plugin       (GstPluginFeature *feature);
const gchar *       gst_plugin_feature_get_plugin_name  (GstPluginFeature *feature);
GstPluginFeature *  gst_plugin_feature_load             (GstPluginFeature *feature);
GList *             gst_plugin_feature_list_copy        (GList *list);
void                gst_plugin_feature_list_free        (GList *list);
#define             GST_PLUGIN_FEATURE_LIST_DEBUG       (list)
gboolean            gst_plugin_feature_check_version    (GstPluginFeature *feature,
                                                         guint min_major,
                                                         guint min_minor,
                                                         guint min_micro);
gint                gst_plugin_feature_rank_compare_func
                                                        (gconstpointer p1,
                                                         gconstpointer p2);
GObject +----GInitiallyUnowned +----GstObject +----GstPluginFeature +----GstElementFactory +----GstTypeFindFactory
typedef struct _GstPluginFeature GstPluginFeature;
Opaque GstPluginFeature structure.
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.
| 
 | the pluginfeature to check | 
| 
 | 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, such as e.g. gst_element_make_from_uri())
will choose this element over an alternative one with the same function.
These constants serve as a rough guidance for defining the rank of a
GstPluginFeature. Any value is valid, including values bigger than
GST_RANK_PRIMARY.
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 to rank | 
| 
 | rank value - higher number means more priority rank | 
#define gst_plugin_feature_set_name(feature,name) gst_object_set_name(GST_OBJECT_CAST(feature),name)
Sets the name of the plugin feature, getting rid of the old name if there was one.
| 
 | a GstPluginFeature to set the name of. | 
| 
 | the new name | 
guint               gst_plugin_feature_get_rank         (GstPluginFeature *feature);
Gets the rank of a plugin feature.
| 
 | a feature | 
| Returns : | The rank of the feature | 
#define gst_plugin_feature_get_name(feature) GST_OBJECT_NAME(feature)
Returns the name of feature.
For a nameless plugin feature, this returns NULL.
| 
 | a GstPluginFeature to get the name of feature. | 
| Returns : | the name of feature. MT safe. [transfer none] | 
GstPlugin *         gst_plugin_feature_get_plugin       (GstPluginFeature *feature);
Get the plugin that provides this feature.
| 
 | a feature | 
| Returns : | the plugin that provides this feature, or NULL.
Unref withgst_object_unref()when no longer needed. [transfer full] | 
const gchar *       gst_plugin_feature_get_plugin_name  (GstPluginFeature *feature);
Get the name of the plugin that provides this feature.
| 
 | a feature | 
| Returns : | the name of the plugin that provides this feature, or NULLif
the feature is not associated with a plugin. | 
Since 1.2.0
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:
| 1 2 3 4 5 6 | 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; | 
| 
 | the plugin feature to check. [transfer none] | 
| Returns : | a reference to the loaded feature, or NULL on error. [transfer full] | 
GList *             gst_plugin_feature_list_copy        (GList *list);
Copies the list of features. Caller should call gst_plugin_feature_list_free
when done with the list.
| 
 | list of GstPluginFeature. [transfer none][element-type Gst.PluginFeature] | 
| Returns : | a copy of list,
with each feature's reference count incremented. [transfer full][element-type Gst.PluginFeature] | 
void                gst_plugin_feature_list_free        (GList *list);
Unrefs each member of list, then frees the list.
| 
 | list of GstPluginFeature. [transfer full][element-type Gst.PluginFeature] | 
#define GST_PLUGIN_FEATURE_LIST_DEBUG(list) gst_plugin_feature_list_debug(list)
Debug the plugin feature names in list.
| 
 | a GList of plugin features. [transfer none][element-type Gst.PluginFeature] | 
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
gint gst_plugin_feature_rank_compare_func (gconstpointer p1,gconstpointer p2);
Compares the two given GstPluginFeature instances. This function can be used as a GCompareFunc when sorting by rank and then by name.
| 
 | a GstPluginFeature | 
| 
 | a GstPluginFeature | 
| Returns : | negative value if the rank of p1 > the rank of p2 or the ranks are equal but the name of p1 comes before the name of p2; zero if the rank and names are equal; positive value if the rank of p1 < the rank of p2 or the ranks are equal but the name of p2 comes before the name of p1 |