![]() |
![]() |
![]() |
libInstPatch Reference Manual | ![]() |
---|---|---|---|---|
typedef IpatchDLS2Info; IpatchDLS2InfoBag; enum IpatchDLS2InfoType; char* ipatch_dls2_info_get (IpatchDLS2Info *info, guint32 fourcc); const char* ipatch_dls2_info_peek (IpatchDLS2Info *info, guint32 fourcc); void ipatch_dls2_info_set (IpatchDLS2Info **info, guint32 fourcc, const char *value); void ipatch_dls2_info_free (IpatchDLS2Info *info); IpatchDLS2Info* ipatch_dls2_info_duplicate (IpatchDLS2Info *info); gboolean ipatch_dls2_info_is_defined (guint32 fourcc); void ipatch_dls2_info_install_class_properties (GObjectClass *obj_class); gboolean ipatch_dls2_info_set_property (IpatchDLS2Info **info_list, guint property_id, const GValue *value); gboolean ipatch_dls2_info_get_property (IpatchDLS2Info *info_list, guint property_id, GValue *value); void ipatch_dls2_info_notify (GObject *object, guint32 fourcc); IpatchDLS2InfoBag* ipatch_dls2_info_bag_new (void); void ipatch_dls2_info_bag_free (IpatchDLS2InfoBag *bag);
typedef struct { guint32 fourcc; /* FOURCC int ID */ char *value; /* info string value */ } IpatchDLS2InfoBag;
Defines a DLS info value.
guint32 fourcc ; |
Four character RIFF chunk code identifying the INFO type. |
char *value ; |
String value of the info parameter. |
typedef enum { IPATCH_DLS2_ARCHIVE_LOCATION = IPATCH_DLS_FOURCC_IARL, IPATCH_DLS2_ARTIST = IPATCH_DLS_FOURCC_IART, IPATCH_DLS2_COMMISSIONED = IPATCH_DLS_FOURCC_ICMS, IPATCH_DLS2_COMMENT = IPATCH_DLS_FOURCC_ICMT, IPATCH_DLS2_COPYRIGHT = IPATCH_DLS_FOURCC_ICOP, IPATCH_DLS2_DATE = IPATCH_DLS_FOURCC_ICRD, IPATCH_DLS2_ENGINEER = IPATCH_DLS_FOURCC_IENG, IPATCH_DLS2_GENRE = IPATCH_DLS_FOURCC_IGNR, IPATCH_DLS2_KEYWORDS = IPATCH_DLS_FOURCC_IKEY, IPATCH_DLS2_MEDIUM = IPATCH_DLS_FOURCC_IMED, IPATCH_DLS2_NAME = IPATCH_DLS_FOURCC_INAM, IPATCH_DLS2_PRODUCT = IPATCH_DLS_FOURCC_IPRD, IPATCH_DLS2_SUBJECT = IPATCH_DLS_FOURCC_ISBJ, IPATCH_DLS2_SOFTWARE = IPATCH_DLS_FOURCC_ISFT, IPATCH_DLS2_SOURCE = IPATCH_DLS_FOURCC_ISRC, IPATCH_DLS2_SOURCE_FORM = IPATCH_DLS_FOURCC_ISRF, IPATCH_DLS2_TECHNICIAN = IPATCH_DLS_FOURCC_ITCH } IpatchDLS2InfoType;
char* ipatch_dls2_info_get (IpatchDLS2Info *info, guint32 fourcc);
Gets the value of the info specified by the fourcc
ID from an info
list.
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.
|
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.
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.
|
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
.
info : |
DLS2 info list |
fourcc : |
FOURCC info ID |
value : |
String value to set info to or NULL to unset
|
void ipatch_dls2_info_free (IpatchDLS2Info *info);
Free a DLS info list.
info : |
DLS2 info list |
IpatchDLS2Info* ipatch_dls2_info_duplicate (IpatchDLS2Info *info);
Duplicate a DLS2 info list.
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.
|
gboolean ipatch_dls2_info_is_defined (guint32 fourcc);
Checks if a FOURCC INFO id is a defined INFO id.
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.
obj_class : |
GObjectClass to install INFO properties on |
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.
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
|
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.
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
|
void ipatch_dls2_info_notify (GObject *object, guint32 fourcc);
Notify a changed INFO property on object
for the given fourcc ID.
Used by objects that implement a IpatchDLS2Info list.
object : |
Object with INFO properties to notify property change on |
fourcc : |
FOURCC of INFO id that has changed |
IpatchDLS2InfoBag* ipatch_dls2_info_bag_new (void);
Create a new DLS info bag structure.
Returns : | Newly allocated info bag. |
void ipatch_dls2_info_bag_free (IpatchDLS2InfoBag *bag);
Free a DLS info bag allocated with ipatch_dls2_info_bag_new()
.
bag : |
Info bag structure to free |