GstSchedulerFactory

GstSchedulerFactory — Create schedulers from a factory

Synopsis


#include <gst/gst.h>


struct      GstSchedulerFactory;
gboolean    gst_scheduler_register          (GstPlugin *plugin,
                                             const gchar *name,
                                             const gchar *longdesc,
                                             GType type);
GstSchedulerFactory* gst_scheduler_factory_new
                                            (const gchar *name,
                                             const gchar *longdesc,
                                             GType type);
void        gst_scheduler_factory_destroy   (GstSchedulerFactory *factory);
GstSchedulerFactory* gst_scheduler_factory_find
                                            (const gchar *name);
GstScheduler* gst_scheduler_factory_create  (GstSchedulerFactory *factory,
                                             GstElement *parent);
GstScheduler* gst_scheduler_factory_make    (const gchar *name,
                                             GstElement *parent);
void        gst_scheduler_factory_set_default_name
                                            (const gchar *name);
G_CONST_RETURN gchar* gst_scheduler_factory_get_default_name
                                            (void);


Object Hierarchy


  GObject
   +----GstPluginFeature
         +----GstSchedulerFactory

Description

A schedulerfactory is used to create instances of a scheduler. It can be added to a GstPlugin as it extends GstPluginFeature.

Use gst_scheduler_factory_new() to create a new scheduler which can be registered to a plugin with gst_plugin_add_feature().

Use gst_scheduler_factory_find() to find the named schedulerfactory. or use gst_scheduler_factory_get_list() to get a list of all available schedulers.

Once an schedulerfactory has been obtained use gst_scheduler_factory_create() to instantiate a real scheduler. Optionally gst_scheduler_factory_make() to create a scheduler from the named factory.

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

Details

struct GstSchedulerFactory

struct GstSchedulerFactory;


gst_scheduler_register ()

gboolean    gst_scheduler_register          (GstPlugin *plugin,
                                             const gchar *name,
                                             const gchar *longdesc,
                                             GType type);

Registers a scheduler with GStreamer.

plugin : a GstPlugin
name : name of the scheduler to register
longdesc : description of the scheduler
type : GType of the scheduler to register
Returns : TRUE, if the registering succeeded, FALSE on error.

Since 0.8.5


gst_scheduler_factory_new ()

GstSchedulerFactory* gst_scheduler_factory_new
                                            (const gchar *name,
                                             const gchar *longdesc,
                                             GType type);

Create a new schedulerfactory with the given parameters

name : name of schedulerfactory to create
longdesc : long description of schedulerfactory to create
type : the gtk type of the GstScheduler element of this factory
Returns : a new GstSchedulerFactory.

gst_scheduler_factory_destroy ()

void        gst_scheduler_factory_destroy   (GstSchedulerFactory *factory);

Removes the scheduler from the global list.

factory : factory to destroy

gst_scheduler_factory_find ()

GstSchedulerFactory* gst_scheduler_factory_find
                                            (const gchar *name);

Search for an schedulerfactory of the given name.

name : name of schedulerfactory to find
Returns : GstSchedulerFactory if found, NULL otherwise

gst_scheduler_factory_create ()

GstScheduler* gst_scheduler_factory_create  (GstSchedulerFactory *factory,
                                             GstElement *parent);

Create a new GstScheduler instance from the given schedulerfactory with the given parent. parent will have its scheduler set to the returned GstScheduler instance.

factory : the factory used to create the instance
parent : the parent element of this scheduler
Returns : A new GstScheduler instance with a reference count of 1.

gst_scheduler_factory_make ()

GstScheduler* gst_scheduler_factory_make    (const gchar *name,
                                             GstElement *parent);

Create a new GstScheduler instance from the schedulerfactory with the given name and parent. parent will have its scheduler set to the returned GstScheduler instance. If NULL is passed as name, the default scheduler name will be used.

name : the name of the factory used to create the instance
parent : the parent element of this scheduler
Returns : A new GstScheduler instance with a reference count of 1.

gst_scheduler_factory_set_default_name ()

void        gst_scheduler_factory_set_default_name
                                            (const gchar *name);

Set the default schedulerfactory name.

name : the name of the factory used as a default

gst_scheduler_factory_get_default_name ()

G_CONST_RETURN gchar* gst_scheduler_factory_get_default_name
                                            (void);

Get the default schedulerfactory name.

Returns : the name of the default scheduler.