## GstIndexFactory GstIndexFactory — Create GstIndexes from a factory |

## Synopsis

    #include <gst/gst.h>

    struct              GstIndexFactory;
    GstIndexFactory *   gst_index_factory_new               (const gchar *name,
                                                             const gchar *longdesc,
                                                             GType type);
    void                gst_index_factory_destroy           (GstIndexFactory *factory);
    GstIndexFactory *   gst_index_factory_find              (const gchar *name);
    GstIndex *          gst_index_factory_create            (GstIndexFactory *factory);
    GstIndex *          gst_index_factory_make              (const gchar *name);

## Object Hierarchy

      GObject
       +----GstObject
             +----GstPluginFeature
                   +----GstIndexFactory

## Description

GstIndexFactory is used to dynamically create GstIndex implementations.

## Details

### struct GstIndexFactory

    struct GstIndexFactory;

The GstIndexFactory object

### gst_index_factory_new ()

    GstIndexFactory *   gst_index_factory_new               (const gchar *name,
                                                             const gchar *longdesc,
                                                             GType type);

Create a new indexfactory with the given parameters

`name` : | name of indexfactory to create
`longdesc` : | long description of indexfactory to create
`type` : | the GType of the GstIndex element of this factory
Returns : | a new GstIndexFactory. [transfer full]

### gst_index_factory_destroy ()

    void                gst_index_factory_destroy           (GstIndexFactory *factory);

Removes the index from the global list.

`factory` : | factory to destroy

### gst_index_factory_find ()

    GstIndexFactory *   gst_index_factory_find              (const gchar *name);

Search for an indexfactory of the given name.

`name` : | name of indexfactory to find
Returns : | GstIndexFactory if found, NULL otherwise. [transfer full]

### gst_index_factory_create ()

    GstIndex *          gst_index_factory_create            (GstIndexFactory *factory);

Create a new GstIndex instance from the given indexfactory.

`factory` : | the factory used to create the instance
Returns : | a new GstIndex instance. [transfer full]

### gst_index_factory_make ()

    GstIndex *          gst_index_factory_make              (const gchar *name);

Create a new GstIndex instance from the indexfactory with the given name.

`name` : | the name of the factory used to create the instance
Returns : | a new GstIndex instance. [transfer full]

## See Also

GstIndex