2 |
// |
// |
3 |
/**************************************************************************** |
/**************************************************************************** |
4 |
liblscp - LinuxSampler Control Protocol API |
liblscp - LinuxSampler Control Protocol API |
5 |
Copyright (C) 2004, rncbc aka Rui Nuno Capela. All rights reserved. |
Copyright (C) 2004-2005, 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 |
63 |
lscp_device_port_info_t midi_port_info; |
lscp_device_port_info_t midi_port_info; |
64 |
lscp_param_info_t audio_channel_param_info; |
lscp_param_info_t audio_channel_param_info; |
65 |
lscp_param_info_t midi_port_param_info; |
lscp_param_info_t midi_port_param_info; |
66 |
|
lscp_server_info_t server_info; |
67 |
lscp_engine_info_t engine_info; |
lscp_engine_info_t engine_info; |
68 |
lscp_channel_info_t channel_info; |
lscp_channel_info_t channel_info; |
69 |
// Result and error status. |
// Result and error status. |
76 |
int iTimeout; |
int iTimeout; |
77 |
lscp_mutex_t mutex; |
lscp_mutex_t mutex; |
78 |
lscp_cond_t cond; |
lscp_cond_t cond; |
79 |
|
// Flag last transaction timedout. |
80 |
|
int iTimeoutCount; |
81 |
}; |
}; |
82 |
|
|
83 |
|
|
84 |
//------------------------------------------------------------------------- |
//------------------------------------------------------------------------- |
85 |
// Local client request executive. |
// Local client request executive. |
86 |
|
|
87 |
|
lscp_status_t lscp_client_recv (lscp_client_t *pClient, char *pchBuffer, int *pcchBuffer, int iTimeout); |
88 |
lscp_status_t lscp_client_call (lscp_client_t *pClient, const char *pszQuery); |
lscp_status_t lscp_client_call (lscp_client_t *pClient, const char *pszQuery); |
89 |
void lscp_client_set_result (lscp_client_t *pClient, char *pszResult, int iErrno); |
void lscp_client_set_result (lscp_client_t *pClient, char *pszResult, int iErrno); |
90 |
|
|
94 |
char * lscp_strtok (char *pchBuffer, const char *pszSeps, char **ppch); |
char * lscp_strtok (char *pchBuffer, const char *pszSeps, char **ppch); |
95 |
char * lscp_ltrim (char *psz); |
char * lscp_ltrim (char *psz); |
96 |
char * lscp_unquote (char **ppsz, int dup); |
char * lscp_unquote (char **ppsz, int dup); |
97 |
|
void lscp_unquote_dup (char **ppszDst, char **ppszSrc); |
98 |
|
|
99 |
char ** lscp_szsplit_create (const char *pszCsv, const char *pszSeps); |
char ** lscp_szsplit_create (const char *pszCsv, const char *pszSeps); |
100 |
void lscp_szsplit_destroy (char **ppszSplit); |
void lscp_szsplit_destroy (char **ppszSplit); |
126 |
#endif |
#endif |
127 |
|
|
128 |
//------------------------------------------------------------------------- |
//------------------------------------------------------------------------- |
129 |
|
// Server struct helper functions. |
130 |
|
|
131 |
|
void lscp_server_info_init (lscp_server_info_t *pServerInfo); |
132 |
|
void lscp_server_info_free (lscp_server_info_t *pServerInfo); |
133 |
|
void lscp_server_info_reset (lscp_server_info_t *pServerInfo); |
134 |
|
|
135 |
|
//------------------------------------------------------------------------- |
136 |
// Engine struct helper functions. |
// Engine struct helper functions. |
137 |
|
|
138 |
void lscp_engine_info_init (lscp_engine_info_t *pEngineInfo); |
void lscp_engine_info_init (lscp_engine_info_t *pEngineInfo); |
139 |
|
void lscp_engine_info_free (lscp_engine_info_t *pEngineInfo); |
140 |
void lscp_engine_info_reset (lscp_engine_info_t *pEngineInfo); |
void lscp_engine_info_reset (lscp_engine_info_t *pEngineInfo); |
141 |
|
|
142 |
//------------------------------------------------------------------------- |
//------------------------------------------------------------------------- |
143 |
// Channel struct helper functions. |
// Channel struct helper functions. |
144 |
|
|
145 |
void lscp_channel_info_init (lscp_channel_info_t *pChannelInfo); |
void lscp_channel_info_init (lscp_channel_info_t *pChannelInfo); |
146 |
|
void lscp_channel_info_free (lscp_channel_info_t *pChannelInfo); |
147 |
void lscp_channel_info_reset (lscp_channel_info_t *pChannelInfo); |
void lscp_channel_info_reset (lscp_channel_info_t *pChannelInfo); |
148 |
|
|
149 |
//------------------------------------------------------------------------- |
//------------------------------------------------------------------------- |
150 |
// Driver struct helper functions. |
// Driver struct helper functions. |
151 |
|
|
152 |
void lscp_driver_info_init (lscp_driver_info_t *pDriverInfo); |
void lscp_driver_info_init (lscp_driver_info_t *pDriverInfo); |
153 |
|
void lscp_driver_info_free (lscp_driver_info_t *pDriverInfo); |
154 |
void lscp_driver_info_reset (lscp_driver_info_t *pDriverInfo); |
void lscp_driver_info_reset (lscp_driver_info_t *pDriverInfo); |
155 |
|
|
156 |
//------------------------------------------------------------------------- |
//------------------------------------------------------------------------- |
157 |
// Device struct helper functions. |
// Device struct helper functions. |
158 |
|
|
159 |
void lscp_device_info_init (lscp_device_info_t *pDeviceInfo); |
void lscp_device_info_init (lscp_device_info_t *pDeviceInfo); |
160 |
|
void lscp_device_info_free (lscp_device_info_t *pDeviceInfo); |
161 |
void lscp_device_info_reset (lscp_device_info_t *pDeviceInfo); |
void lscp_device_info_reset (lscp_device_info_t *pDeviceInfo); |
162 |
|
|
163 |
//------------------------------------------------------------------------- |
//------------------------------------------------------------------------- |
164 |
// Device channel/port struct helper functions. |
// Device channel/port struct helper functions. |
165 |
|
|
166 |
void lscp_device_port_info_init (lscp_device_port_info_t *pDevicePortInfo); |
void lscp_device_port_info_init (lscp_device_port_info_t *pDevicePortInfo); |
167 |
|
void lscp_device_port_info_free (lscp_device_port_info_t *pDevicePortInfo); |
168 |
void lscp_device_port_info_reset (lscp_device_port_info_t *pDevicePortInfo); |
void lscp_device_port_info_reset (lscp_device_port_info_t *pDevicePortInfo); |
169 |
|
|
170 |
//------------------------------------------------------------------------- |
//------------------------------------------------------------------------- |
171 |
// Parameter struct helper functions. |
// Parameter struct helper functions. |
172 |
|
|
173 |
void lscp_param_info_init (lscp_param_info_t *pParamInfo); |
void lscp_param_info_init (lscp_param_info_t *pParamInfo); |
174 |
|
void lscp_param_info_free (lscp_param_info_t *pParamInfo); |
175 |
void lscp_param_info_reset (lscp_param_info_t *pParamInfo); |
void lscp_param_info_reset (lscp_param_info_t *pParamInfo); |
176 |
|
|
177 |
//------------------------------------------------------------------------- |
//------------------------------------------------------------------------- |