GUPnPDLNAInformation

## GUPnPDLNAInformation GUPnPDLNAInformation — Base class for storing various types of metadata informations. |

## Synopsis

                        GUPnPDLNAInformation;
                        GUPnPDLNAInformationClass;
    GUPnPDLNAAudioInformation * gupnp_dlna_information_get_audio_information
                                                            (GUPnPDLNAInformation *info);
    GUPnPDLNAContainerInformation * gupnp_dlna_information_get_container_information
                                                            (GUPnPDLNAInformation *info);
    GUPnPDLNAImageInformation * gupnp_dlna_information_get_image_information
                                                            (GUPnPDLNAInformation *info);
    GUPnPDLNAVideoInformation * gupnp_dlna_information_get_video_information
                                                            (GUPnPDLNAInformation *info);
    const gchar *       gupnp_dlna_information_get_uri      (GUPnPDLNAInformation *info);

## Object Hierarchy

      GObject
       +----GUPnPDLNAInformation

## Properties

      "audio-information"        GUPnPDLNAAudioInformation*  : Read
      "container-information"    GUPnPDLNAContainerInformation*  : Read
      "image-information"        GUPnPDLNAImageInformation*  : Read
      "uri"                      gchar*                : Read / Write / Construct Only
      "video-information"        GUPnPDLNAVideoInformation*  : Read

## Description

Subclasses of GUPnPDLNAInformation should override all virtual functions provided by this class. The overrides should return a subclasses of specific information base classes.

When instantiating a subclass of GUPnPDLNAInformation make sure that "uri" with a URI to media file is passed to `g_object_new()`.

## Details

### GUPnPDLNAInformation

    typedef struct _GUPnPDLNAInformation GUPnPDLNAInformation;

### GUPnPDLNAInformationClass

    typedef struct {
            GObjectClass parent_class;

            GUPnPDLNAAudioInformation *
            (* get_audio_information) (GUPnPDLNAInformation *info);

            GUPnPDLNAContainerInformation *
            (* get_container_information) (GUPnPDLNAInformation *info);

            GUPnPDLNAImageInformation *
            (* get_image_information) (GUPnPDLNAInformation *info);

            GUPnPDLNAVideoInformation *
            (* get_video_information) (GUPnPDLNAInformation *info);

            gpointer _reserved[12];
    } GUPnPDLNAInformationClass;

GObjectClass `parent_class`; | Parent class.
`get_audio_information` () | This is called by GUPnPDLNAProfileGuesser to get an audio information.
`get_container_information` () | This is called by GUPnPDLNAProfileGuesser to get a container information.
`get_image_information` () | This is called by GUPnPDLNAProfileGuesser to get an image information.
`get_video_information` () | This is called by GUPnPDLNAProfileGuesser to get a video information.
gpointer `_reserved`[12]; | Padding. Ignore it.

### gupnp_dlna_information_get_audio_information ()

    GUPnPDLNAAudioInformation * gupnp_dlna_information_get_audio_information
                                                            (GUPnPDLNAInformation *info);

Get an audio information of media file if applicable (e.g. for video and audio files).

`info` : | A GUPnPDLNAInformation object.
Returns : | A GUPnPDLNAAudioInformation object or `NULL`. [transfer none]

### gupnp_dlna_information_get_container_information ()

    GUPnPDLNAContainerInformation * gupnp_dlna_information_get_container_information
                                                            (GUPnPDLNAInformation *info);

Get an container information of media file if applicable (e.g. for video and audio files).

`info` : | A GUPnPDLNAInformation object.
Returns : | A GUPnPDLNAContainerInformation object or `NULL`. [transfer none]

### gupnp_dlna_information_get_image_information ()

    GUPnPDLNAImageInformation * gupnp_dlna_information_get_image_information
                                                            (GUPnPDLNAInformation *info);

Get an container information of media file if applicable (e.g. for image files).

`info` : | A GUPnPDLNAInformation object.
Returns : | A GUPnPDLNAImageInformation object or `NULL`. [transfer none]

### gupnp_dlna_information_get_video_information ()

    GUPnPDLNAVideoInformation * gupnp_dlna_information_get_video_information
                                                            (GUPnPDLNAInformation *info);

Get an container information of media file if applicable (e.g. for video files).

`info` : | A GUPnPDLNAInformation object.
Returns : | A GUPnPDLNAVideoInformation object or `NULL`. [transfer none]

### gupnp_dlna_information_get_uri ()

    const gchar *       gupnp_dlna_information_get_uri      (GUPnPDLNAInformation *info);

`info` : | A GUPnPDLNAInformation object.
Returns : | An URI of a file. [transfer none]

## Property Details

### The `"audio-information"` property

      "audio-information"        GUPnPDLNAAudioInformation*  : Read

Audio information of a file.

### The `"container-information"` property

      "container-information"    GUPnPDLNAContainerInformation*  : Read

Container information of a file.

### The `"image-information"` property

      "image-information"        GUPnPDLNAImageInformation*  : Read

Image information of a file.

### The `"uri"` property

      "uri"                      gchar*                : Read / Write / Construct Only

URI of file which metadata this object stores.

Default value: NULL

### The `"video-information"` property

      "video-information"        GUPnPDLNAVideoInformation*  : Read

Video information of a file.