MirageLanguage

MirageLanguage — Object representing a language for session or track.

Synopsis

#include <mirage-language.h>

struct              MirageLanguage;
struct              MirageLanguageClass;
enum                MirageLanguagePackTypes;
gint                mirage_language_get_code            (MirageLanguage *self);
gboolean            mirage_language_get_pack_data       (MirageLanguage *self,
                                                         MirageLanguagePackTypes pack_type,
                                                         const gchar **pack_data,
                                                         gint *length,
                                                         GError **error);
void                mirage_language_set_code            (MirageLanguage *self,
                                                         gint code);
gboolean            mirage_language_set_pack_data       (MirageLanguage *self,
                                                         MirageLanguagePackTypes pack_type,
                                                         const gchar *pack_data,
                                                         gint length,
                                                         GError **error);

Object Hierarchy

  GObject
   +----MirageObject
         +----MirageLanguage

Implemented Interfaces

MirageLanguage implements MirageContextual.

Description

MirageLanguage object represents a CD-TEXT language for session or track. It is a container object that stores language code and CD-TEXT pack data for different pack types.

Details

struct MirageLanguage

struct MirageLanguage;

All the fields in the MirageLanguage structure are private to the MirageLanguage implementation and should never be accessed directly.


struct MirageLanguageClass

struct MirageLanguageClass {
    MirageObjectClass parent_class;
};

The class structure for the MirageLanguage type.

MirageObjectClass parent_class;

the parent class

enum MirageLanguagePackTypes

typedef enum {
    MIRAGE_LANGUAGE_PACK_TITLE       = 0x80,
    MIRAGE_LANGUAGE_PACK_PERFORMER   = 0x81,
    MIRAGE_LANGUAGE_PACK_SONGWRITER  = 0x82,
    MIRAGE_LANGUAGE_PACK_COMPOSER    = 0x83,
    MIRAGE_LANGUAGE_PACK_ARRANGER    = 0x84,
    MIRAGE_LANGUAGE_PACK_MESSAGE     = 0x85,
    MIRAGE_LANGUAGE_PACK_DISC_ID     = 0x86,
    MIRAGE_LANGUAGE_PACK_GENRE       = 0x87,
    MIRAGE_LANGUAGE_PACK_TOC         = 0x88,
    MIRAGE_LANGUAGE_PACK_TOC2        = 0x89,
    MIRAGE_LANGUAGE_PACK_RES_8A      = 0x8A,
    MIRAGE_LANGUAGE_PACK_RES_8B      = 0x8B,
    MIRAGE_LANGUAGE_PACK_RES_8C      = 0x8C,
    MIRAGE_LANGUAGE_PACK_CLOSED_INFO = 0x8D,
    MIRAGE_LANGUAGE_PACK_UPC_ISRC    = 0x8E,
    MIRAGE_LANGUAGE_PACK_SIZE        = 0x8F,
} MirageLanguagePackTypes;

CD-TEXT pack types

MIRAGE_LANGUAGE_PACK_TITLE

Album name and Track titles

MIRAGE_LANGUAGE_PACK_PERFORMER

Singer/player/conductor/orchestra

MIRAGE_LANGUAGE_PACK_SONGWRITER

Name of the songwriter

MIRAGE_LANGUAGE_PACK_COMPOSER

Name of the composer

MIRAGE_LANGUAGE_PACK_ARRANGER

Name of the arranger

MIRAGE_LANGUAGE_PACK_MESSAGE

Message from content provider or artist

MIRAGE_LANGUAGE_PACK_DISC_ID

Disc identification information

MIRAGE_LANGUAGE_PACK_GENRE

Genre identification / information

MIRAGE_LANGUAGE_PACK_TOC

TOC information

MIRAGE_LANGUAGE_PACK_TOC2

Second TOC

MIRAGE_LANGUAGE_PACK_RES_8A

Reserved 8A

MIRAGE_LANGUAGE_PACK_RES_8B

Reserved 8B

MIRAGE_LANGUAGE_PACK_RES_8C

Reserved 8C

MIRAGE_LANGUAGE_PACK_CLOSED_INFO

For internal use by content provider

MIRAGE_LANGUAGE_PACK_UPC_ISRC

UPC/EAN code of album and ISRC for tracks

MIRAGE_LANGUAGE_PACK_SIZE

Size information of the block

mirage_language_get_code ()

gint                mirage_language_get_code            (MirageLanguage *self);

Retrieves language's language code.

self :

a MirageLanguage

Returns :

language code

mirage_language_get_pack_data ()

gboolean            mirage_language_get_pack_data       (MirageLanguage *self,
                                                         MirageLanguagePackTypes pack_type,
                                                         const gchar **pack_data,
                                                         gint *length,
                                                         GError **error);

Retrieves pack data of type pack_type. A pointer to buffer containing pack data is stored in pack data; the buffer belongs to the object and therefore should not be modified.

self :

a MirageLanguage

pack_type :

pack type. [in]

pack_data :

location to store buffer containing pack data, or NULL. [out][transfer none][allow-none][array length=length]

length :

location to store length of pack data, or NULL. [out][allow-none]

error :

location to store error, or NULL. [out][allow-none]

Returns :

TRUE on success, FALSE on failure

mirage_language_set_code ()

void                mirage_language_set_code            (MirageLanguage *self,
                                                         gint code);

Sets language's language code.

self :

a MirageLanguage

code :

language code. [in]

mirage_language_set_pack_data ()

gboolean            mirage_language_set_pack_data       (MirageLanguage *self,
                                                         MirageLanguagePackTypes pack_type,
                                                         const gchar *pack_data,
                                                         gint length,
                                                         GError **error);

Sets pack data of type pack_type to data in pack_data. length is length of data in pack_data. pack_type must be one of MirageLanguagePackTypes.

self :

a MirageLanguage

pack_type :

pack type. [in]

pack_data :

pack data. [in][array length=length]

length :

length of pack data. [in]

error :

location to store error, or NULL. [out][allow-none]

Returns :

TRUE on success, FALSE on failure

See Also

MirageSession, MirageTrack, MirageCdTextCoder