IpatchDLS2Info

IpatchDLS2Info — DLS version 2 info functions and structure

Stability Level

Stable, unless otherwise indicated

Functions

Types and Values

Description

Structure and functions used for storing DLS informational properties at many levels of the format.

Functions

ipatch_dls2_info_get ()

char *
ipatch_dls2_info_get (IpatchDLS2Info *info,
                      guint32 fourcc);

Gets the value of the info specified by the fourcc ID from an info list.

Parameters

info

DLS2 info list

 

fourcc

FOURCC info ID

 

Returns

Newly allocated info string value or NULL if the specified info is not set. Should be freed when no longer needed.


ipatch_dls2_info_peek ()

const char *
ipatch_dls2_info_peek (IpatchDLS2Info *info,
                       guint32 fourcc);

Gets the value of the info specified by the fourcc ID from an info list. Like ipatch_dls2_info_get but returns the string value without duplicating it.

Parameters

info

DLS2 info list

 

fourcc

FOURCC info ID

 

Returns

Info string value or NULL if the specified info is not set. Value is internal and should not be modified or freed.

[transfer none]


ipatch_dls2_info_set ()

void
ipatch_dls2_info_set (IpatchDLS2Info **info,
                      guint32 fourcc,
                      const char *value);

Sets the info specified by the fourcc ID in an info list to a string value .

Parameters

info

DLS2 info list

 

fourcc

FOURCC info ID

 

value

String value to set info to or NULL to unset.

[nullable]

ipatch_dls2_info_free ()

void
ipatch_dls2_info_free (IpatchDLS2Info *info);

Free a DLS info list.

Parameters

info

DLS2 info list

 

ipatch_dls2_info_duplicate ()

IpatchDLS2Info *
ipatch_dls2_info_duplicate (IpatchDLS2Info *info);

Duplicate a DLS2 info list.

Parameters

info

DLS2 info list to duplicate

 

Returns

Newly created info list or NULL if info was NULL. Free it with ipatch_dls2_info_free() when finished with it.

[transfer full]


ipatch_dls2_info_is_defined ()

gboolean
ipatch_dls2_info_is_defined (guint32 fourcc);

Checks if a FOURCC INFO id is a defined INFO id.

Parameters

fourcc

FOURCC INFO id to check if defined

 

Returns

TRUE if fourcc INFO id is defined, FALSE otherwise


ipatch_dls2_info_install_class_properties ()

void
ipatch_dls2_info_install_class_properties
                               (GObjectClass *obj_class);

Installs INFO properties for the supplied obj_class . Used for class construction of objects implementing IpatchDLS2InfoType properties.

Parameters

obj_class

GObjectClass to install INFO properties on

 

ipatch_dls2_info_set_property ()

gboolean
ipatch_dls2_info_set_property (IpatchDLS2Info **info_list,
                               guint property_id,
                               const GValue *value);

A function used by object set_property methods that implement a IpatchDLS2Info list to set an INFO property.

Parameters

info_list

Pointer to a list of IpatchDLS2Info structures

 

property_id

FOURCC INFO property id to set value of

 

value

A string GValue to set INFO value to

 

Returns

TRUE if property_id is a valid INFO id, FALSE otherwise


ipatch_dls2_info_get_property ()

gboolean
ipatch_dls2_info_get_property (IpatchDLS2Info *info_list,
                               guint property_id,
                               GValue *value);

A function used by object set_property methods that implement a IpatchDLS2Info list to get an INFO property.

Parameters

info_list

A list of IpatchDLS2Info structures

 

property_id

FOURCC INFO property id to get value of

 

value

A string GValue to store the value of the info to

 

Returns

TRUE if property_id is a valid INFO id, FALSE otherwise


ipatch_dls2_info_notify ()

void
ipatch_dls2_info_notify (IpatchItem *item,
                         guint32 fourcc,
                         const GValue *new_value,
                         const GValue *old_value);

Notify a changed INFO property on item for the given fourcc ID. A convenience function to objects that implement a IpatchDLS2Info list.

Parameters

item

Item with INFO properties to notify property change on

 

fourcc

FOURCC property ID of info that has changed

 

new_value

New value assigned to the property

 

old_value

Old value of property

 

ipatch_dls2_info_bag_new ()

IpatchDLS2InfoBag *
ipatch_dls2_info_bag_new (void);

Create a new DLS info bag structure.

[skip]

Returns

Newly allocated info bag.


ipatch_dls2_info_bag_free ()

void
ipatch_dls2_info_bag_free (IpatchDLS2InfoBag *bag);

Free a DLS info bag allocated with ipatch_dls2_info_bag_new().

[skip]

Parameters

bag

Info bag structure to free

 

Types and Values

IpatchDLS2Info

typedef GSList IpatchDLS2Info;

struct IpatchDLS2InfoBag

struct IpatchDLS2InfoBag {
    guint32 fourcc;		/* FOURCC int ID */
    char *value;			/* info string value */
};

enum IpatchDLS2InfoType

Members

IPATCH_DLS2_ARCHIVE_LOCATION

   

IPATCH_DLS2_ARTIST

   

IPATCH_DLS2_COMMISSIONED

   

IPATCH_DLS2_COMMENT

   

IPATCH_DLS2_COPYRIGHT

   

IPATCH_DLS2_DATE

   

IPATCH_DLS2_ENGINEER

   

IPATCH_DLS2_GENRE

   

IPATCH_DLS2_KEYWORDS

   

IPATCH_DLS2_MEDIUM

   

IPATCH_DLS2_NAME

   

IPATCH_DLS2_PRODUCT

   

IPATCH_DLS2_SUBJECT

   

IPATCH_DLS2_SOFTWARE

   

IPATCH_DLS2_SOURCE

   

IPATCH_DLS2_SOURCE_FORM

   

IPATCH_DLS2_TECHNICIAN