## GstAutoplugFactory

GstAutoplugFactory — Create autopluggers from a factory.

## Synopsis

    #include <gst/gst.h>

    struct      GstAutoplugFactory;
    GstAutoplugFactory* gst_autoplug_factory_new
                                                (const gchar *name,
                                                 const gchar *longdesc,
                                                 GType type);
    void        gst_autoplug_factory_destroy    (GstAutoplugFactory *factory);
    GstAutoplugFactory* gst_autoplug_factory_find
                                                (const gchar *name);
    GstAutoplug* gst_autoplug_factory_create    (GstAutoplugFactory *factory);
    GstAutoplug* gst_autoplug_factory_make      (const gchar *name);

## Object Hierarchy

      GObject
       +----GstPluginFeature
             +----GstAutoplugFactory

## Description

An autoplugfactory is used to create instances of an autoplugger. It can be added to a GstPlugin as it extends GstPluginFeature.

Use gst_autoplug_factory_new() to create a new autoplugger which can be registered to a plugin with gst_plugin_add_feature().

Use gst_autoplug_factory_find() to find the named autoplugfactory. or use gst_autoplug_factory_get_list() to get a list of all available autopluggers.

Once an autoplugfactory has been obtained use gst_autoplug_factory_create() to instantiate a real autoplugger. Optionally gst_autoplug_factory_make() to create a autoplugger from the named factory.

Use gst_autoplug_factory_destroy() to remove the factory from the global list.

## Details

### struct GstAutoplugFactory

    struct GstAutoplugFactory;

The autoplugfactory object

### gst_autoplug_factory_new ()

    GstAutoplugFactory* gst_autoplug_factory_new
                                                (const gchar *name,
                                                 const gchar *longdesc,
                                                 GType type);

Create a new autoplugfactory with the given parameters

`name` : | name of autoplugfactory to create
`longdesc` : | long description of autoplugfactory to create
`type` : | the gtk type of the GstAutoplug element of this factory
Returns : | a new GstAutoplugFactory.

### gst_autoplug_factory_destroy ()

    void        gst_autoplug_factory_destroy    (GstAutoplugFactory *factory);

Removes the autoplug from the global list.

`factory` : | factory to destroy

### gst_autoplug_factory_find ()

    GstAutoplugFactory* gst_autoplug_factory_find
                                                (const gchar *name);

Search for an autoplugfactory of the given name.

`name` : | name of autoplugfactory to find
Returns : | GstAutoplugFactory if found, NULL otherwise

### gst_autoplug_factory_create ()

    GstAutoplug* gst_autoplug_factory_create    (GstAutoplugFactory *factory);

Create a new GstAutoplug instance from the given autoplugfactory.

`factory` : | the factory used to create the instance
Returns : | A new GstAutoplug instance.

### gst_autoplug_factory_make ()

    GstAutoplug* gst_autoplug_factory_make      (const gchar *name);

Create a new GstAutoplug instance from the autoplugfactory with the given name.

`name` : | the name of the factory used to create the instance
Returns : | A new GstAutoplug instance.

## See Also

GstAutoplug, GstPlugin, GstPluginFeature.