2 |
// |
// |
3 |
/**************************************************************************** |
/**************************************************************************** |
4 |
liblscp - LinuxSampler Control Protocol API |
liblscp - LinuxSampler Control Protocol API |
5 |
Copyright (C) 2004-2006, rncbc aka Rui Nuno Capela. All rights reserved. |
Copyright (C) 2004-2007, rncbc aka Rui Nuno Capela. All rights reserved. |
6 |
|
|
7 |
This library is free software; you can redistribute it and/or |
This library is free software; you can redistribute it and/or |
8 |
modify it under the terms of the GNU Lesser General Public |
modify it under the terms of the GNU Lesser General Public |
64 |
char * engine_name; |
char * engine_name; |
65 |
int audio_device; |
int audio_device; |
66 |
int audio_channels; |
int audio_channels; |
67 |
char ** audio_routing; |
int * audio_routing; |
68 |
char * instrument_file; |
char * instrument_file; |
69 |
int instrument_nr; |
int instrument_nr; |
70 |
char * instrument_name; |
char * instrument_name; |
98 |
} lscp_usage_t; |
} lscp_usage_t; |
99 |
|
|
100 |
|
|
101 |
|
/** Effect send info cache struct. */ |
102 |
|
typedef struct _lscp_fxsend_info_t |
103 |
|
{ |
104 |
|
char * name; |
105 |
|
int midi_controller; |
106 |
|
int * audio_routing; |
107 |
|
float level; |
108 |
|
|
109 |
|
} lscp_fxsend_info_t; |
110 |
|
|
111 |
|
|
112 |
/** MIDI instrument parameter struct. */ |
/** MIDI instrument parameter struct. */ |
113 |
typedef struct _lscp_midi_instrument_t |
typedef struct _lscp_midi_instrument_t |
114 |
{ |
{ |
115 |
int map; |
int map; |
116 |
int bank; |
int bank; |
117 |
int prog; |
int prog; |
118 |
|
|
119 |
} lscp_midi_instrument_t; |
} lscp_midi_instrument_t; |
120 |
|
|
249 |
int lscp_get_total_voice_count (lscp_client_t *pClient); |
int lscp_get_total_voice_count (lscp_client_t *pClient); |
250 |
int lscp_get_total_voice_count_max (lscp_client_t *pClient); |
int lscp_get_total_voice_count_max (lscp_client_t *pClient); |
251 |
|
|
252 |
|
float lscp_get_volume (lscp_client_t *pClient ); |
253 |
|
lscp_status_t lscp_set_volume (lscp_client_t *pClient, float fVolume); |
254 |
|
|
255 |
|
//------------------------------------------------------------------------- |
256 |
|
// Effect sends control functions. |
257 |
|
|
258 |
|
int lscp_create_fxsend (lscp_client_t *pClient, int iSamplerChannel, int iMidiController, const char *pszFxName); |
259 |
|
lscp_status_t lscp_destroy_fxsend (lscp_client_t *pClient, int iSamplerChannel, int iFxSend); |
260 |
|
|
261 |
|
int lscp_get_fxsends (lscp_client_t *pClient, int iSamplerChannel); |
262 |
|
int * lscp_list_fxsends (lscp_client_t *pClient, int iSamplerChannel); |
263 |
|
|
264 |
|
lscp_fxsend_info_t * lscp_get_fxsend_info (lscp_client_t *pClient, int iSamplerChannel, int iFxSend); |
265 |
|
|
266 |
|
lscp_status_t lscp_set_fxsend_audio_channel (lscp_client_t *pClient, int iSamplerChannel, int iFxSend, int iAudioSrc, int iAudioDst); |
267 |
|
lscp_status_t lscp_set_fxsend_midi_controller (lscp_client_t *pClient, int iSamplerChannel, int iFxSend, int iMidiController); |
268 |
|
lscp_status_t lscp_set_fxsend_level (lscp_client_t *pClient, int iSamplerChannel, int iFxSend, float fLevel); |
269 |
|
|
270 |
//------------------------------------------------------------------------- |
//------------------------------------------------------------------------- |
271 |
// MIDI instrument mapping control functions. |
// MIDI instrument mapping control functions. |
272 |
|
|
289 |
|
|
290 |
lscp_status_t lscp_clear_midi_instruments (lscp_client_t *pClient, int iMidiMap); |
lscp_status_t lscp_clear_midi_instruments (lscp_client_t *pClient, int iMidiMap); |
291 |
|
|
292 |
|
//------------------------------------------------------------------------- |
293 |
|
// Instrument editor functions. |
294 |
|
|
295 |
|
lscp_status_t lscp_edit_instrument (lscp_client_t *pClient, int iSamplerChannel); |
296 |
|
|
297 |
#if defined(__cplusplus) |
#if defined(__cplusplus) |
298 |
} |
} |