## RygelMediaServerPlugin RygelMediaServerPlugin — This is the base class for every Rygel implementation of a UPnP media server. It should be used either for a real plug-in for the Rygel process or used in-process via the librygel-server API. |

## Synopsis

    #define             RYGEL_TYPE_MEDIA_SERVER_PLUGIN
    RygelMediaContainer * rygel_media_server_plugin_get_root_container
                                                            (RygelMediaServerPlugin *self);
    struct              RygelMediaServerPlugin;
    struct              RygelMediaServerPluginClass;

## Object Hierarchy

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

## Properties

      "root-container"           RygelMediaContainer*  : Read / Write / Construct Only

## Description

The plugin instance should have a RygelMediaContainer instance as its root container, which may be provided to the constructor.

See the <link linkend="implementing-server-plugins">Implementing Server Plugins</link> section.

## Details

### RYGEL_TYPE_MEDIA_SERVER_PLUGIN

    #define RYGEL_TYPE_MEDIA_SERVER_PLUGIN (rygel_media_server_plugin_get_type ())

The type for RygelMediaServerPlugin.

### rygel_media_server_plugin_get_root_container ()

    RygelMediaContainer * rygel_media_server_plugin_get_root_container
                                                            (RygelMediaServerPlugin *self);

Get and return the current value of the "root-container" property.

`self` : | the RygelMediaServerPlugin instance to query
Returns : | the value of the "root-container" property

### struct RygelMediaServerPlugin

    struct RygelMediaServerPlugin;

This is the base class for every Rygel implementation of a UPnP media server. It should be used either for a real plug-in for the Rygel process or used in-process via the librygel-server API.

The plugin instance should have a RygelMediaContainer instance as its root container, which may be provided to the constructor.

See the <link linkend="implementing-server-plugins">Implementing Server Plugins</link> section.

### struct RygelMediaServerPluginClass

    struct RygelMediaServerPluginClass {
    	RygelPluginClass parent_class;
    };

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

RygelPluginClass `parent_class`; | the parent class structure

## Property Details

### The `"root-container"` property

      "root-container"           RygelMediaContainer*  : Read / Write / Construct Only

root-container.