## GUPnPRootDevice

GUPnPRootDevice — Class for root device implementations.

## Functions

GUPnPRootDevice * | gupnp_root_device_new ()
GUPnPRootDevice * | gupnp_root_device_new_full ()
void | gupnp_root_device_set_available ()
gboolean | gupnp_root_device_get_available ()
const char * | gupnp_root_device_get_relative_location ()
const char * | gupnp_root_device_get_description_dir ()
const char * | gupnp_root_device_get_description_path ()
GSSDPResourceGroup * | gupnp_root_device_get_ssdp_resource_group ()

## Properties

gboolean | available | Read / Write
gchar * | description-dir | Read / Write / Construct Only
GUPnPXMLDoc * | description-doc | Write / Construct Only
gchar * | description-path | Read / Write / Construct Only

## Types and Values

struct | GUPnPRootDevice

## Object Hierarchy

        GObject
        ╰── GUPnPDeviceInfo
            ╰── GUPnPDevice
                ╰── GUPnPRootDevice

## Description

GUPnPRootDevice allows for implementing root devices.

## Functions

### gupnp_root_device_new ()

    GUPnPRootDevice *
    gupnp_root_device_new (GUPnPContext *context,
                           const char *description_path,
                           const char *description_dir);

Create a new GUPnPRootDevice object, automatically loading and parsing device description document from `description_path` .

#### Parameters

context | The GUPnPContext |
description_path | Path to device description document. This could either be an absolute path or path relative to `description_dir` . |
description_dir | Path to directory where description documents are provided. |

#### Returns

A new `GUPnPRootDevice` object.

### gupnp_root_device_new_full ()

    GUPnPRootDevice *
    gupnp_root_device_new_full (GUPnPContext *context,
                                GUPnPResourceFactory *factory,
                                GUPnPXMLDoc *description_doc,
                                const char *description_path,
                                const char *description_dir);

Create a new GUPnPRootDevice, automatically loading and parsing device description document from `description_path` if `description_doc` is `NULL`.

#### Parameters

context | A GUPnPContext |
factory | A GUPnPResourceFactory |
description_doc | Device description document, or `NULL` |
description_path | Path to device description document. This could either be an absolute path or path relative to `description_dir` . |
description_dir | Path to directory where description documents are provided. |

#### Returns

A new GUPnPRootDevice object.

### gupnp_root_device_set_available ()

    void
    gupnp_root_device_set_available (GUPnPRootDevice *root_device,
                                     gboolean available);

Controls whether or not `root_device` is available (announcing its presence).

#### Parameters

root_device | A GUPnPRootDevice |
available | `TRUE` if `root_device` should be available |

### gupnp_root_device_get_available ()

    gboolean
    gupnp_root_device_get_available (GUPnPRootDevice *root_device);

Get whether or not `root_device` is available (announcing its presence).

#### Parameters

root_device | A GUPnPRootDevice |

#### Returns

`TRUE` if `root_device` is available, `FALSE` otherwise.

### gupnp_root_device_get_relative_location ()

    const char *
    gupnp_root_device_get_relative_location
                                   (GUPnPRootDevice *root_device);

Get the relative location of `root_device` .

#### Parameters

root_device | A GUPnPRootDevice |

#### Returns

The relative location of `root_device` .

### gupnp_root_device_get_description_dir ()

    const char *
    gupnp_root_device_get_description_dir (GUPnPRootDevice *root_device);

Get the path to the directory containing description documents related to `root_device` .

#### Parameters

root_device | A GUPnPRootDevice |

#### Returns

The path to description document directory of `root_device` .

### gupnp_root_device_get_description_path ()

    const char *
    gupnp_root_device_get_description_path
                                   (GUPnPRootDevice *root_device);

Get the path to the device description document of `root_device` .

#### Parameters

root_device | A GUPnPRootDevice |

#### Returns

The path to device description document of `root_device` .

### gupnp_root_device_get_ssdp_resource_group ()

    GSSDPResourceGroup *
    gupnp_root_device_get_ssdp_resource_group
                                   (GUPnPRootDevice *root_device);

Get the GSSDPResourceGroup used by `root_device` .

#### Parameters

root_device | A GUPnPRootDevice |

#### Returns

The GSSDPResourceGroup of `root_device` .

[transfer none]

Since 0.19.2

## Types and Values

### struct GUPnPRootDevice

    struct GUPnPRootDevice;

This struct contains private data only, and should be accessed using the functions below.

## Property Details

### The `“available”` property

      “available”                gboolean

TRUE if this device is available.

Flags: Read / Write

Default value: FALSE

### The `“description-dir”` property

      “description-dir”          gchar *

The path to directory where description documents are provided.

Flags: Read / Write / Construct Only

Default value: NULL

### The `“description-doc”` property

      “description-doc”          GUPnPXMLDoc *

Device description document. Constructor property.

Flags: Write / Construct Only

Since 0.13.0

### The `“description-path”` property

      “description-path”         gchar *

The path to device description document. This could either be an absolute path or path relative to GUPnPRootDevice:description-dir.

Flags: Read / Write / Construct Only

Default value: NULL

Since 0.13.0