liblscp  0.6.1
common.h
Go to the documentation of this file.
1 // common.h
2 //
3 /****************************************************************************
4  liblscp - LinuxSampler Control Protocol API
5  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
8  modify it under the terms of the GNU Lesser General Public
9  License as published by the Free Software Foundation; either
10  version 2.1 of the License, or (at your option) any later version.
11 
12  This library is distributed in the hope that it will be useful,
13  but WITHOUT ANY WARRANTY; without even the implied warranty of
14  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15  Lesser General Public License for more details.
16 
17  You should have received a copy of the GNU General Public License along
18  with this program; if not, write to the Free Software Foundation, Inc.,
19  51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20 
21 *****************************************************************************/
22 
23 #ifndef __LSCP_COMMON_H
24 #define __LSCP_COMMON_H
25 
26 #include "lscp/client.h"
27 #include "lscp/device.h"
28 
29 
30 // Case unsensitive comparison substitutes.
31 #if defined(WIN32)
32 #define strcasecmp stricmp
33 #define strncasecmp strnicmp
34 #endif
35 
36 //-------------------------------------------------------------------------
37 // Client opaque descriptor struct.
38 
39 struct _lscp_client_t
40 {
41  // Client socket stuff.
43  void * pvData;
46  // Subscribed events.
48  // Client struct persistent caches.
49  char ** audio_drivers;
50  char ** midi_drivers;
51  int * audio_devices;
52  int * midi_devices;
53  char ** engines;
54  int * channels;
55  int * fxsends;
57  int * midi_maps;
58  char * midi_map_name;
59  // Client struct volatile caches.
75  // Result and error status.
76  char * pszResult;
77  int iErrno;
78  // Stream buffers status.
81  // Transaction call timeout (msecs).
82  int iTimeout;
85  // Flag last transaction timedout.
87 };
88 
89 
90 //-------------------------------------------------------------------------
91 // Local client request executive.
92 
93 lscp_status_t lscp_client_recv (lscp_client_t *pClient, char *pchBuffer, int *pcchBuffer, int iTimeout);
94 lscp_status_t lscp_client_call (lscp_client_t *pClient, const char *pszQuery, int iResult);
95 void lscp_client_set_result (lscp_client_t *pClient, char *pszResult, int iErrno);
96 
97 //-------------------------------------------------------------------------
98 // General utility function prototypes.
99 
100 char * lscp_strtok (char *pchBuffer, const char *pszSeps, char **ppch);
101 char * lscp_ltrim (char *psz);
102 char * lscp_unquote (char **ppsz, int dup);
103 void lscp_unquote_dup (char **ppszDst, char **ppszSrc);
104 
105 char ** lscp_szsplit_create (const char *pszCsv, const char *pszSeps);
106 void lscp_szsplit_destroy (char **ppszSplit);
107 #ifdef LSCP_SZSPLIT_COUNT
108 int lscp_szsplit_count (char **ppszSplit);
109 int lscp_szsplit_size (char **ppszSplit);
110 #endif
111 
112 int * lscp_isplit_create (const char *pszCsv, const char *pszSeps);
113 void lscp_isplit_destroy (int *piSplit);
114 #ifdef LSCP_ISPLIT_COUNT
115 int lscp_isplit_count (int *piSplit);
116 int lscp_isplit_size (int *piSplit);
117 #endif
118 
119 lscp_param_t * lscp_psplit_create (const char *pszCsv, const char *pszSep1, const char *pszSep2);
120 void lscp_psplit_destroy (lscp_param_t *ppSplit);
121 #ifdef LSCP_PSPLIT_COUNT
122 int lscp_psplit_count (lscp_param_t *ppSplit);
123 int lscp_psplit_size (lscp_param_t *ppSplit);
124 #endif
125 
126 void lscp_plist_alloc (lscp_param_t **ppList);
127 void lscp_plist_free (lscp_param_t **ppList);
128 void lscp_plist_append (lscp_param_t **ppList, const char *pszKey, const char *pszValue);
129 #ifdef LSCP_PLIST_COUNT
130 int lscp_plist_count (lscp_param_t **ppList);
131 int lscp_plist_size (lscp_param_t **ppList);
132 #endif
133 
136 #ifdef LSCP_MIDI_INSTRUMENTS_COUNT
137 int lscp_midi_instruments_count (lscp_midi_instrument_t *pInstrs);
138 int lscp_midi_instruments_size (lscp_midi_instrument_t *pInstrs);
139 #endif
140 
141 
142 //-------------------------------------------------------------------------
143 // Server struct helper functions.
144 
145 void lscp_server_info_init (lscp_server_info_t *pServerInfo);
146 void lscp_server_info_free (lscp_server_info_t *pServerInfo);
147 void lscp_server_info_reset (lscp_server_info_t *pServerInfo);
148 
149 //-------------------------------------------------------------------------
150 // Engine struct helper functions.
151 
152 void lscp_engine_info_init (lscp_engine_info_t *pEngineInfo);
153 void lscp_engine_info_free (lscp_engine_info_t *pEngineInfo);
154 void lscp_engine_info_reset (lscp_engine_info_t *pEngineInfo);
155 
156 //-------------------------------------------------------------------------
157 // Channel struct helper functions.
158 
159 void lscp_channel_info_init (lscp_channel_info_t *pChannelInfo);
160 void lscp_channel_info_free (lscp_channel_info_t *pChannelInfo);
161 void lscp_channel_info_reset (lscp_channel_info_t *pChannelInfo);
162 
163 //-------------------------------------------------------------------------
164 // Driver struct helper functions.
165 
166 void lscp_driver_info_init (lscp_driver_info_t *pDriverInfo);
167 void lscp_driver_info_free (lscp_driver_info_t *pDriverInfo);
168 void lscp_driver_info_reset (lscp_driver_info_t *pDriverInfo);
169 
170 //-------------------------------------------------------------------------
171 // Device struct helper functions.
172 
173 void lscp_device_info_init (lscp_device_info_t *pDeviceInfo);
174 void lscp_device_info_free (lscp_device_info_t *pDeviceInfo);
175 void lscp_device_info_reset (lscp_device_info_t *pDeviceInfo);
176 
177 //-------------------------------------------------------------------------
178 // Device channel/port struct helper functions.
179 
183 
184 //-------------------------------------------------------------------------
185 // Parameter struct helper functions.
186 
187 void lscp_param_info_init (lscp_param_info_t *pParamInfo);
188 void lscp_param_info_free (lscp_param_info_t *pParamInfo);
189 void lscp_param_info_reset (lscp_param_info_t *pParamInfo);
190 
191 //-------------------------------------------------------------------------
192 // Concatenate a parameter list (key='value'...) into a string.
193 
194 int lscp_param_concat (char *pszBuffer, int cchMaxBuffer, lscp_param_t *pParams);
195 
196 //-------------------------------------------------------------------------
197 // Effect struct helper functions.
198 
199 void lscp_fxsend_info_init (lscp_fxsend_info_t *pFxSendInfo);
200 void lscp_fxsend_info_free (lscp_fxsend_info_t *pFxSendInfo);
201 void lscp_fxsend_info_reset (lscp_fxsend_info_t *pFxSendInfo);
202 
203 //-------------------------------------------------------------------------
204 // MIDI instrument info struct helper functions.
205 
209 
210 
211 #endif // __LSCP_COMMON_H
212 
213 // end of common.h
_lscp_client_t::audio_devices
int * audio_devices
Definition: common.h:67
lscp_midi_instruments_create
lscp_midi_instrument_t * lscp_midi_instruments_create(const char *pszCsv)
Definition: common.c:727
_lscp_client_t::audio_channel_info
lscp_device_port_info_t audio_channel_info
Definition: common.h:82
lscp_szsplit_destroy
void lscp_szsplit_destroy(char **ppszSplit)
Definition: common.c:421
_lscp_channel_info_t::midi_port
int midi_port
Definition: client.h:72
lscp_engine_info_init
void lscp_engine_info_init(lscp_engine_info_t *pEngineInfo)
Definition: common.c:862
_lscp_param_info_t::range_min
char * range_min
Definition: device.h:66
_lscp_midi_instrument_info_t::load_mode
lscp_load_mode_t load_mode
Definition: client.h:140
_lscp_client_t::cond
lscp_cond_t cond
Definition: common.h:100
lscp_driver_info_init
void lscp_driver_info_init(lscp_driver_info_t *pDriverInfo)
Definition: common.c:927
lscp_plist_alloc
void lscp_plist_alloc(lscp_param_t **ppList)
Definition: common.c:624
_lscp_midi_instrument_info_t
Definition: client.h:133
lscp_plist_free
void lscp_plist_free(lscp_param_t **ppList)
Definition: common.c:644
lscp_fxsend_info_init
void lscp_fxsend_info_init(lscp_fxsend_info_t *pFxSendInfo)
Definition: common.c:1067
_lscp_device_port_info_t::name
char * name
Definition: device.h:95
lscp_unquote_dup
void lscp_unquote_dup(char **ppszDst, char **ppszSrc)
Definition: common.c:325
_lscp_client_t::audio_channel_param_info
lscp_param_info_t audio_channel_param_info
Definition: common.h:84
lscp_device_port_info_init
void lscp_device_port_info_init(lscp_device_port_info_t *pDevicePortInfo)
Definition: common.c:976
lscp_param_concat
int lscp_param_concat(char *pszBuffer, int cchMaxBuffer, lscp_param_t *pParams)
Definition: common.c:1038
_lscp_client_t::fxsend_info
lscp_fxsend_info_t fxsend_info
Definition: common.h:89
lscp_engine_info_free
void lscp_engine_info_free(lscp_engine_info_t *pEngineInfo)
Definition: common.c:868
_lscp_client_t::midi_map_name
char * midi_map_name
Definition: common.h:74
_lscp_socket_agent_t
Definition: socket.h:67
lscp_midi_instrument_info_free
void lscp_midi_instrument_info_free(lscp_midi_instrument_info_t *pInstrInfo)
Definition: common.c:1104
_lscp_client_t::audio_device_info
lscp_device_info_t audio_device_info
Definition: common.h:78
lscp_plist_append
void lscp_plist_append(lscp_param_t **ppList, const char *pszKey, const char *pszValue)
Definition: common.c:664
_lscp_channel_info_t::instrument_status
int instrument_status
Definition: client.h:70
_lscp_client_t::pszResult
char * pszResult
Definition: common.h:92
_lscp_param_info_t::fix
int fix
Definition: device.h:62
lscp_szsplit_create
char ** lscp_szsplit_create(const char *pszCsv, const char *pszSeps)
Definition: common.c:365
lscp_channel_info_reset
void lscp_channel_info_reset(lscp_channel_info_t *pChannelInfo)
Definition: common.c:917
_lscp_fxsend_info_t::midi_controller
int midi_controller
Definition: client.h:104
_lscp_client_t::midi_instruments
lscp_midi_instrument_t * midi_instruments
Definition: common.h:72
lscp_channel_info_free
void lscp_channel_info_free(lscp_channel_info_t *pChannelInfo)
Definition: common.c:905
_lscp_engine_info_t::version
char * version
Definition: client.h:55
_lscp_server_info_t::description
char * description
Definition: client.h:44
_lscp_driver_info_t
Definition: device.h:74
lscp_cond_t
pthread_cond_t lscp_cond_t
Definition: thread.h:88
_lscp_midi_instrument_t::map
int map
Definition: client.h:114
lscp_unquote
char * lscp_unquote(char **ppsz, int dup)
Definition: common.c:292
lscp_isplit_create
int * lscp_isplit_create(const char *pszCsv, const char *pszSeps)
Definition: common.c:453
_lscp_client_t::midi_devices
int * midi_devices
Definition: common.h:68
lscp_server_info_init
void lscp_server_info_init(lscp_server_info_t *pServerInfo)
Definition: common.c:835
lscp_plist_free
void lscp_plist_free(lscp_param_t **ppList)
Definition: common.c:644
lscp_param_info_init
void lscp_param_info_init(lscp_param_info_t *pParamInfo)
Definition: common.c:999
_lscp_midi_instrument_t::bank
int bank
Definition: client.h:115
LSCP_FAILED
Definition: thread.h:70
LSCP_ERROR
Definition: thread.h:71
lscp_psplit_create
lscp_param_t * lscp_psplit_create(const char *pszCsv, const char *pszSeps1, const char *pszSeps2)
Definition: common.c:537
_lscp_client_t::audio_drivers
char ** audio_drivers
Definition: common.h:65
lscp_param_info_free
void lscp_param_info_free(lscp_param_info_t *pParamInfo)
Definition: common.c:1013
LSCP_SPLIT_CHUNK1
#define LSCP_SPLIT_CHUNK1
Definition: common.c:29
lscp_fxsend_info_reset
void lscp_fxsend_info_reset(lscp_fxsend_info_t *pFxSendInfo)
Definition: common.c:1083
lscp_engine_info_reset
void lscp_engine_info_reset(lscp_engine_info_t *pEngineInfo)
Definition: common.c:876
_lscp_channel_info_t
Definition: client.h:61
_lscp_client_t::midi_driver_info
lscp_driver_info_t midi_driver_info
Definition: common.h:77
lscp_channel_info_init
void lscp_channel_info_init(lscp_channel_info_t *pChannelInfo)
Definition: common.c:886
_lscp_client_t::buffer_fill
lscp_buffer_fill_t * buffer_fill
Definition: common.h:95
_lscp_channel_info_t::volume
float volume
Definition: client.h:75
_lscp_midi_instrument_t::prog
int prog
Definition: client.h:116
_lscp_channel_info_t::audio_device
int audio_device
Definition: client.h:64
lscp_param_info_init
void lscp_param_info_init(lscp_param_info_t *pParamInfo)
Definition: common.c:999
lscp_szsplit_create
char ** lscp_szsplit_create(const char *pszCsv, const char *pszSeps)
Definition: common.c:365
_lscp_channel_info_t::audio_channels
int audio_channels
Definition: client.h:65
lscp_client_recv
lscp_status_t lscp_client_recv(lscp_client_t *pClient, char *pchBuffer, int *pcchBuffer, int iTimeout)
Definition: common.c:53
lscp_psplit_destroy
void lscp_psplit_destroy(lscp_param_t *ppSplit)
Definition: common.c:594
lscp_param_info_free
void lscp_param_info_free(lscp_param_info_t *pParamInfo)
Definition: common.c:1013
lscp_isplit_destroy
void lscp_isplit_destroy(int *piSplit)
Definition: common.c:509
lscp_channel_info_init
void lscp_channel_info_init(lscp_channel_info_t *pChannelInfo)
Definition: common.c:886
lscp_unquote_dup
void lscp_unquote_dup(char **ppszDst, char **ppszSrc)
Definition: common.c:325
_lscp_fxsend_info_t::level
float level
Definition: client.h:106
_lscp_client_t::pfnCallback
lscp_client_proc_t pfnCallback
Definition: common.h:58
lscp_device_port_info_init
void lscp_device_port_info_init(lscp_device_port_info_t *pDevicePortInfo)
Definition: common.c:976
device.h
lscp_device_info_reset
void lscp_device_info_reset(lscp_device_info_t *pDeviceInfo)
Definition: common.c:966
_lscp_engine_info_t
Definition: client.h:52
_lscp_client_t::midi_drivers
char ** midi_drivers
Definition: common.h:66
lscp_midi_instrument_info_free
void lscp_midi_instrument_info_free(lscp_midi_instrument_info_t *pInstrInfo)
Definition: common.c:1104
lscp_plist_append
void lscp_plist_append(lscp_param_t **ppList, const char *pszKey, const char *pszValue)
Definition: common.c:664
lscp_device_info_free
void lscp_device_info_free(lscp_device_info_t *pDeviceInfo)
Definition: common.c:959
lscp_fxsend_info_free
void lscp_fxsend_info_free(lscp_fxsend_info_t *pFxSendInfo)
Definition: common.c:1075
lscp_fxsend_info_reset
void lscp_fxsend_info_reset(lscp_fxsend_info_t *pFxSendInfo)
Definition: common.c:1083
_lscp_channel_info_t::midi_map
int midi_map
Definition: client.h:74
_lscp_client_t::channel_info
lscp_channel_info_t channel_info
Definition: common.h:88
_lscp_device_info_t
Definition: device.h:84
_lscp_midi_instrument_info_t::instrument_file
char * instrument_file
Definition: client.h:137
lscp_status_t
enum _lscp_status_t lscp_status_t
lscp_device_info_free
void lscp_device_info_free(lscp_device_info_t *pDeviceInfo)
Definition: common.c:959
_lscp_client_t::midi_param_info
lscp_param_info_t midi_param_info
Definition: common.h:81
_lscp_param_info_t::multiplicity
int multiplicity
Definition: device.h:63
_lscp_client_t::pvData
void * pvData
Definition: common.h:59
lscp_unquote
char * lscp_unquote(char **ppsz, int dup)
Definition: common.c:292
lscp_device_port_info_reset
void lscp_device_port_info_reset(lscp_device_port_info_t *pDevicePortInfo)
Definition: common.c:989
_lscp_param_info_t::depends
char ** depends
Definition: device.h:64
_lscp_channel_info_t::midi_channel
int midi_channel
Definition: client.h:73
lscp_client_set_result
void lscp_client_set_result(lscp_client_t *pClient, char *pszResult, int iErrno)
Definition: common.c:39
lscp_server_info_init
void lscp_server_info_init(lscp_server_info_t *pServerInfo)
Definition: common.c:835
LSCP_LOAD_DEFAULT
Definition: client.h:124
_lscp_param_t
Definition: device.h:48
_lscp_midi_instrument_info_t::volume
float volume
Definition: client.h:141
_lscp_param_info_t::mandatory
int mandatory
Definition: device.h:61
lscp_device_port_info_free
void lscp_device_port_info_free(lscp_device_port_info_t *pDevicePortInfo)
Definition: common.c:982
lscp_client_set_result
void lscp_client_set_result(lscp_client_t *pClient, char *pszResult, int iErrno)
Definition: common.c:39
_lscp_client_t::iTimeoutCount
int iTimeoutCount
Definition: common.h:102
lscp_mutex_t
pthread_mutex_t lscp_mutex_t
Definition: thread.h:71
lscp_ltrim
char * lscp_ltrim(char *psz)
Definition: common.c:284
_lscp_client_t::midi_port_param_info
lscp_param_info_t midi_port_param_info
Definition: common.h:85
lscp_midi_instrument_info_reset
void lscp_midi_instrument_info_reset(lscp_midi_instrument_info_t *pInstrInfo)
Definition: common.c:1116
lscp_device_info_init
void lscp_device_info_init(lscp_device_info_t *pDeviceInfo)
Definition: common.c:953
_lscp_client_t
Definition: common.h:38
lscp_strtok
char * lscp_strtok(char *pchBuffer, const char *pszSeps, char **ppch)
Definition: common.c:338
lscp_client_recv
lscp_status_t lscp_client_recv(lscp_client_t *pClient, char *pchBuffer, int *pcchBuffer, int iTimeout)
Definition: common.c:53
lscp_server_info_free
void lscp_server_info_free(lscp_server_info_t *pServerInfo)
Definition: common.c:842
lscp_param_concat
int lscp_param_concat(char *pszBuffer, int cchMaxBuffer, lscp_param_t *pParams)
Definition: common.c:1038
INVALID_SOCKET
#define INVALID_SOCKET
Definition: socket.h:50
lscp_client_call
lscp_status_t lscp_client_call(lscp_client_t *pClient, const char *pszQuery, int iResult)
Definition: common.c:109
_lscp_client_t::evt
lscp_socket_agent_t evt
Definition: common.h:61
LSCP_QUIT
Definition: thread.h:74
lscp_ltrim
char * lscp_ltrim(char *psz)
Definition: common.c:284
_lscp_client_t::server_info
lscp_server_info_t server_info
Definition: common.h:86
lscp_midi_instruments_destroy
void lscp_midi_instruments_destroy(lscp_midi_instrument_t *pInstrs)
Definition: common.c:806
lscp_socket_agent_free
lscp_status_t lscp_socket_agent_free(lscp_socket_agent_t *pAgent)
Definition: socket.c:235
_lscp_device_port_info_t
Definition: device.h:93
_lscp_param_info_t::type
lscp_type_t type
Definition: device.h:59
_lscp_client_t::audio_param_info
lscp_param_info_t audio_param_info
Definition: common.h:80
_lscp_param_info_t::description
char * description
Definition: device.h:60
_lscp_client_t::cmd
lscp_socket_agent_t cmd
Definition: common.h:60
_lscp_param_t::value
char * value
Definition: device.h:51
_lscp_channel_info_t::audio_routing
int * audio_routing
Definition: client.h:66
lscp_driver_info_reset
void lscp_driver_info_reset(lscp_driver_info_t *pDriverInfo)
Definition: common.c:943
_lscp_driver_info_t::version
char * version
Definition: device.h:77
lscp_server_info_reset
void lscp_server_info_reset(lscp_server_info_t *pServerInfo)
Definition: common.c:852
lscp_isplit_create
int * lscp_isplit_create(const char *pszCsv, const char *pszSeps)
Definition: common.c:453
_lscp_client_t::engines
char ** engines
Definition: common.h:69
_lscp_channel_info_t::instrument_nr
int instrument_nr
Definition: client.h:68
_lscp_midi_instrument_info_t::instrument_nr
int instrument_nr
Definition: client.h:138
lscp_param_info_reset
void lscp_param_info_reset(lscp_param_info_t *pParamInfo)
Definition: common.c:1027
_lscp_device_info_t::driver
char * driver
Definition: device.h:86
lscp_driver_info_reset
void lscp_driver_info_reset(lscp_driver_info_t *pDriverInfo)
Definition: common.c:943
lscp_strtok
char * lscp_strtok(char *pchBuffer, const char *pszSeps, char **ppch)
Definition: common.c:338
lscp_engine_info_reset
void lscp_engine_info_reset(lscp_engine_info_t *pEngineInfo)
Definition: common.c:876
LSCP_OK
Definition: thread.h:69
_lscp_socket_agent_t::sock
lscp_socket_t sock
Definition: socket.h:69
_lscp_client_t::fxsends
int * fxsends
Definition: common.h:71
lscp_midi_instruments_destroy
void lscp_midi_instruments_destroy(lscp_midi_instrument_t *pInstrs)
Definition: common.c:806
_lscp_midi_instrument_info_t::name
char * name
Definition: client.h:135
LSCP_SPLIT_SIZE
#define LSCP_SPLIT_SIZE(n)
Definition: common.c:32
_lscp_device_port_info_t::params
lscp_param_t * params
Definition: device.h:96
lscp_engine_info_free
void lscp_engine_info_free(lscp_engine_info_t *pEngineInfo)
Definition: common.c:868
lscp_isplit_destroy
void lscp_isplit_destroy(int *piSplit)
Definition: common.c:509
_lscp_server_info_t::version
char * version
Definition: client.h:45
_lscp_channel_info_t::instrument_file
char * instrument_file
Definition: client.h:67
_lscp_channel_info_t::midi_device
int midi_device
Definition: client.h:71
lscp_midi_instrument_info_reset
void lscp_midi_instrument_info_reset(lscp_midi_instrument_info_t *pInstrInfo)
Definition: common.c:1116
lscp_device_info_init
void lscp_device_info_init(lscp_device_info_t *pDeviceInfo)
Definition: common.c:953
lscp_channel_info_reset
void lscp_channel_info_reset(lscp_channel_info_t *pChannelInfo)
Definition: common.c:917
LSCP_BUFSIZ
#define LSCP_BUFSIZ
Definition: socket.h:55
lscp_server_info_reset
void lscp_server_info_reset(lscp_server_info_t *pServerInfo)
Definition: common.c:852
_lscp_client_t::iTimeout
int iTimeout
Definition: common.h:98
_lscp_client_t::iErrno
int iErrno
Definition: common.h:93
lscp_server_info_free
void lscp_server_info_free(lscp_server_info_t *pServerInfo)
Definition: common.c:842
common.h
_lscp_driver_info_t::parameters
char ** parameters
Definition: device.h:78
_lscp_param_info_t
Definition: device.h:57
lscp_device_info_reset
void lscp_device_info_reset(lscp_device_info_t *pDeviceInfo)
Definition: common.c:966
_lscp_channel_info_t::instrument_name
char * instrument_name
Definition: client.h:69
_lscp_param_info_t::defaultv
char * defaultv
Definition: device.h:65
_lscp_param_info_t::range_max
char * range_max
Definition: device.h:67
_lscp_client_t::midi_maps
int * midi_maps
Definition: common.h:73
_lscp_engine_info_t::description
char * description
Definition: client.h:54
lscp_fxsend_info_free
void lscp_fxsend_info_free(lscp_fxsend_info_t *pFxSendInfo)
Definition: common.c:1075
lscp_psplit_create
lscp_param_t * lscp_psplit_create(const char *pszCsv, const char *pszSep1, const char *pszSep2)
Definition: common.c:537
lscp_midi_instrument_info_init
void lscp_midi_instrument_info_init(lscp_midi_instrument_info_t *pInstrInfo)
Definition: common.c:1093
_lscp_client_t::midi_device_info
lscp_device_info_t midi_device_info
Definition: common.h:79
_lscp_buffer_fill_t
Definition: client.h:83
lscp_szsplit_destroy
void lscp_szsplit_destroy(char **ppszSplit)
Definition: common.c:421
_lscp_param_t::key
char * key
Definition: device.h:50
_lscp_midi_instrument_t
Definition: client.h:112
_lscp_param_info_t::possibilities
char ** possibilities
Definition: device.h:68
lscp_socket_perror
void lscp_socket_perror(const char *pszPrefix)
Definition: socket.c:113
LSCP_TYPE_NONE
Definition: device.h:55
LSCP_TIMEOUT
Definition: thread.h:73
_lscp_midi_instrument_info_t::engine_name
char * engine_name
Definition: client.h:136
lscp_device_port_info_reset
void lscp_device_port_info_reset(lscp_device_port_info_t *pDevicePortInfo)
Definition: common.c:989
_lscp_driver_info_t::description
char * description
Definition: device.h:76
lscp_plist_alloc
void lscp_plist_alloc(lscp_param_t **ppList)
Definition: common.c:624
lscp_param_info_reset
void lscp_param_info_reset(lscp_param_info_t *pParamInfo)
Definition: common.c:1027
lscp_fxsend_info_init
void lscp_fxsend_info_init(lscp_fxsend_info_t *pFxSendInfo)
Definition: common.c:1067
_lscp_client_t::midi_instrument_info
lscp_midi_instrument_info_t midi_instrument_info
Definition: common.h:90
_lscp_midi_instrument_info_t::instrument_name
char * instrument_name
Definition: client.h:139
lscp_psplit_destroy
void lscp_psplit_destroy(lscp_param_t *ppSplit)
Definition: common.c:594
lscp_event_t
enum _lscp_event_t lscp_event_t
lscp_device_port_info_free
void lscp_device_port_info_free(lscp_device_port_info_t *pDevicePortInfo)
Definition: common.c:982
lscp_driver_info_free
void lscp_driver_info_free(lscp_driver_info_t *pDriverInfo)
Definition: common.c:934
_lscp_fxsend_info_t
Definition: client.h:101
lscp_engine_info_init
void lscp_engine_info_init(lscp_engine_info_t *pEngineInfo)
Definition: common.c:862
_lscp_client_t::iStreamCount
int iStreamCount
Definition: common.h:96
_lscp_fxsend_info_t::audio_routing
int * audio_routing
Definition: client.h:105
lscp_client_call
lscp_status_t lscp_client_call(lscp_client_t *pClient, const char *pszQuery, int iResult)
Definition: common.c:109
lscp_midi_instrument_info_init
void lscp_midi_instrument_info_init(lscp_midi_instrument_info_t *pInstrInfo)
Definition: common.c:1093
_lscp_device_info_t::params
lscp_param_t * params
Definition: device.h:87
lscp_driver_info_init
void lscp_driver_info_init(lscp_driver_info_t *pDriverInfo)
Definition: common.c:927
_lscp_channel_info_t::mute
int mute
Definition: client.h:76
_lscp_fxsend_info_t::name
char * name
Definition: client.h:103
_lscp_channel_info_t::engine_name
char * engine_name
Definition: client.h:63
lscp_client_proc_t
lscp_status_t(* lscp_client_proc_t)(struct _lscp_client_t *pClient, lscp_event_t event, const char *pchData, int cchData, void *pvData)
Definition: client.h:164
_lscp_client_t::mutex
lscp_mutex_t mutex
Definition: common.h:99
_lscp_client_t::engine_info
lscp_engine_info_t engine_info
Definition: common.h:87
_lscp_channel_info_t::solo
int solo
Definition: client.h:77
_lscp_server_info_t
Definition: client.h:42
_lscp_client_t::events
lscp_event_t events
Definition: common.h:63
client.h
lscp_midi_instruments_create
lscp_midi_instrument_t * lscp_midi_instruments_create(const char *pszCsv)
Definition: common.c:727
_lscp_client_t::audio_driver_info
lscp_driver_info_t audio_driver_info
Definition: common.h:76
LSCP_WARNING
Definition: thread.h:72
_lscp_server_info_t::protocol_version
char * protocol_version
Definition: client.h:46
lscp_driver_info_free
void lscp_driver_info_free(lscp_driver_info_t *pDriverInfo)
Definition: common.c:934
_lscp_client_t::channels
int * channels
Definition: common.h:70
lscp_channel_info_free
void lscp_channel_info_free(lscp_channel_info_t *pChannelInfo)
Definition: common.c:905
_lscp_client_t::midi_port_info
lscp_device_port_info_t midi_port_info
Definition: common.h:83