Top | ![]() |
![]() |
![]() |
![]() |
#define | IPATCH_DLS2_CONN_ARE_IDENTICAL() |
IpatchDLS2Conn * | ipatch_dls2_conn_new () |
void | ipatch_dls2_conn_free () |
IpatchDLS2Conn * | ipatch_dls2_conn_duplicate () |
void | ipatch_dls2_conn_list_set () |
void | ipatch_dls2_conn_list_unset () |
GSList * | ipatch_dls2_conn_list_duplicate () |
GSList * | ipatch_dls2_conn_list_duplicate_fast () |
void | ipatch_dls2_conn_list_free () |
struct | IpatchDLS2ConnInfo |
enum | IpatchDLS2ConnSrcType |
enum | IpatchDLS2ConnDestType |
#define | IPATCH_DLS2_CONN_OUTPUT_TRANS_NONE |
enum | IpatchDLS2ConnTransformType |
enum | IpatchDLS2ConnPolarityType |
enum | IpatchDLS2ConnTransformMasks |
enum | IpatchDLS2ConnTransformShifts |
Defines structures and functions used for DLS version 2 instrument parameters (called connections in DLS terminology).
IpatchDLS2Conn *
ipatch_dls2_conn_new (void
);
Create a new connection
[skip]
void
ipatch_dls2_conn_free (IpatchDLS2Conn *conn
);
Free an IpatchDLS2Conn structure
[skip]
IpatchDLS2Conn *
ipatch_dls2_conn_duplicate (const IpatchDLS2Conn *conn
);
Duplicate a connection
[skip]
void ipatch_dls2_conn_list_set (GSList **list
,const IpatchDLS2Conn *conn
);
Set a connection in a connection list. The connection list is searched for any existing identical connection (same source, control and destination). If an identical connection is found, its values are overwritten with the new values, otherwise a new connection is added to the list and the values copied to it.
void ipatch_dls2_conn_list_unset (GSList **list
,const IpatchDLS2Conn *conn
);
Remove a connection from a connection list. The connection list is
searched for an identical connection to conn
(same source,
control and destination). If a match is found, it is removed, otherwise
nothing. This essentially sets a connection to its default value, for
those connections which are defined.
GSList *
ipatch_dls2_conn_list_duplicate (const GSList *list
);
Duplicates a connection list (GSList and connection data).
list |
GSList of IpatchDLS2Conn structures to duplicate. |
[element-type IpatchDLS2Conn][transfer none] |
New duplicate connection list which
should be freed with ipatch_dls2_conn_list_free()
when finished with it.
[element-type IpatchDLS2Conn][transfer full]
GSList *
ipatch_dls2_conn_list_duplicate_fast (const GSList *list
);
Like ipatch_dls2_conn_list_duplicate()
but optimized for speed, new list
is backwards from original.
[skip]
New duplicate connection list which
should be freed with ipatch_dls2_conn_list_free()
when finished with it.
[element-type IpatchDLS2Conn][transfer full]
void ipatch_dls2_conn_list_free (GSList *list
,gboolean free_conns
);
Free a list of connections
[skip]
list |
GSList of IpatchDLS2Conn structures to free. |
[element-type IpatchDLS2Conn] |
free_conns |
If |
struct IpatchDLS2ConnInfo { guint16 type; /* IpatchDLS2ConnDestType */ gint32 min; /* minimum value allowed */ gint32 max; /* maximum value allowed */ gint32 def; /* default value */ int unit; /* #IpatchUnitType type */ char *label; /* short descriptive label */ char *descr; /* more complete description */ };