RygelPlugin

## RygelPlugin RygelPlugin — Represents a Rygel plugin. Plugins are supposed to provide an object of this class or a subclass. |

## Synopsis

    #define             RYGEL_TYPE_PLUGIN
    void                rygel_plugin_add_resource           (RygelPlugin *self,
                                                             RygelResourceInfo *resource_info);
    void                rygel_plugin_add_icon               (RygelPlugin *self,
                                                             RygelIconInfo *icon_info);
    void                rygel_plugin_apply_hacks            (RygelPlugin *self,
                                                             RygelRootDevice *device,
                                                             const gchar *description_path,
                                                             GError **error);
    RygelPlugin *       rygel_plugin_new                    (const gchar *desc_path,
                                                             const gchar *name,
                                                             const gchar *title,
                                                             const gchar *description);
    gboolean            rygel_plugin_get_active             (RygelPlugin *self);
    void                rygel_plugin_set_active             (RygelPlugin *self,
                                                             gboolean value);
    struct              RygelPlugin;
    struct              RygelPluginClass;

## Object Hierarchy

      GObject
       +----GUPnPResourceFactory
             +----RygelPlugin

## Properties

      "active"                   gboolean              : Read / Write

## Description

## Details

### RYGEL_TYPE_PLUGIN

    #define RYGEL_TYPE_PLUGIN (rygel_plugin_get_type ())

The type for RygelPlugin.

### rygel_plugin_add_resource ()

    void                rygel_plugin_add_resource           (RygelPlugin *self,
                                                             RygelResourceInfo *resource_info);

`self` : | the RygelPlugin instance

### rygel_plugin_add_icon ()

    void                rygel_plugin_add_icon               (RygelPlugin *self,
                                                             RygelIconInfo *icon_info);

`self` : | the RygelPlugin instance

### rygel_plugin_apply_hacks ()

    void                rygel_plugin_apply_hacks            (RygelPlugin *self,
                                                             RygelRootDevice *device,
                                                             const gchar *description_path,
                                                             GError **error);

`self` : | the RygelPlugin instance
`error` : | location to store the error occuring, or `NULL` to ignore

### rygel_plugin_new ()

    RygelPlugin *       rygel_plugin_new                    (const gchar *desc_path,
                                                             const gchar *name,
                                                             const gchar *title,
                                                             const gchar *description);

### rygel_plugin_get_active ()

    gboolean            rygel_plugin_get_active             (RygelPlugin *self);

Get and return the current value of the "active" property.

`self` : | the RygelPlugin instance to query
Returns : | the value of the "active" property

### rygel_plugin_set_active ()

    void                rygel_plugin_set_active             (RygelPlugin *self,
                                                             gboolean value);

Set the value of the "active" property to `value`.

`self` : | the RygelPlugin instance to modify
`value` : | the new value of the "active" property

### struct RygelPlugin

    struct RygelPlugin;

Represents a Rygel plugin. Plugins are supposed to provide an object of this class or a subclass.

### struct RygelPluginClass

    struct RygelPluginClass {
    	GUPnPResourceFactoryClass parent_class;
    	void (*apply_hacks) (RygelPlugin* self, RygelRootDevice* device, const gchar* description_path, GError** error);
    };

The class structure for `RYGEL_TYPE_PLUGIN`. All the fields in this structure are private and should never be accessed directly.

GUPnPResourceFactoryClass `parent_class`; | the parent class structure
`apply_hacks` () | virtual method called by ``rygel_plugin_apply_hacks()``

## Property Details

### The `"active"` property

      "active"                   gboolean              : Read / Write

active.

Default value: FALSE