client.h | client.h | |||
---|---|---|---|---|
skipping to change at line 17 | skipping to change at line 17 | |||
This library is free software; you can redistribute it and/or | This library is free software; you can redistribute it and/or | |||
modify it under the terms of the GNU Lesser General Public | modify it under the terms of the GNU Lesser General Public | |||
License as published by the Free Software Foundation; either | License as published by the Free Software Foundation; either | |||
version 2.1 of the License, or (at your option) any later version. | version 2.1 of the License, or (at your option) any later version. | |||
This library is distributed in the hope that it will be useful, | This library is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
Lesser General Public License for more details. | Lesser General Public License for more details. | |||
You should have received a copy of the GNU Lesser General Public | You should have received a copy of the GNU General Public License along | |||
License along with this library; if not, write to the Free Software | with this program; if not, write to the Free Software Foundation, Inc., | |||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*************************************************************************** **/ | *************************************************************************** **/ | |||
#ifndef __LSCP_CLIENT_H | #ifndef __LSCP_CLIENT_H | |||
#define __LSCP_CLIENT_H | #define __LSCP_CLIENT_H | |||
#include "lscp/socket.h" | #include "lscp/socket.h" | |||
#include "lscp/event.h" | #include "lscp/event.h" | |||
#if defined(__cplusplus) | #if defined(__cplusplus) | |||
skipping to change at line 93 | skipping to change at line 93 | |||
} lscp_buffer_fill_t; | } lscp_buffer_fill_t; | |||
/** Buffer fill stream usage types. */ | /** Buffer fill stream usage types. */ | |||
typedef enum _lscp_usage_t | typedef enum _lscp_usage_t | |||
{ | { | |||
LSCP_USAGE_BYTES = 0, | LSCP_USAGE_BYTES = 0, | |||
LSCP_USAGE_PERCENTAGE | LSCP_USAGE_PERCENTAGE | |||
} lscp_usage_t; | } lscp_usage_t; | |||
/** MIDI instrument parameter struct. */ | ||||
typedef struct _lscp_midi_instrument_t | ||||
{ | ||||
int bank_msb; | ||||
int bank_lsb; | ||||
int program; | ||||
} lscp_midi_instrument_t; | ||||
/** MIDI instrument load mode. */ | ||||
typedef enum _lscp_load_mode_t | ||||
{ | ||||
LSCP_LOAD_DEFAULT = 0, | ||||
LSCP_LOAD_ON_DEMAND, | ||||
LSCP_LOAD_ON_DEMAND_HOLD, | ||||
LSCP_LOAD_PERSISTENT | ||||
} lscp_load_mode_t; | ||||
/** MIDI instrument info cache struct. */ | ||||
typedef struct _lscp_midi_instrument_info_t | ||||
{ | ||||
char * name; | ||||
char * engine_name; | ||||
char * instrument_file; | ||||
int instrument_nr; | ||||
char * instrument_name; | ||||
lscp_load_mode_t load_mode; | ||||
float volume; | ||||
} lscp_midi_instrument_info_t; | ||||
//------------------------------------------------------------------------- | //------------------------------------------------------------------------- | |||
// Client socket main structure. | // Client socket main structure. | |||
/** Client opaque descriptor struct. */ | /** Client opaque descriptor struct. */ | |||
typedef struct _lscp_client_t lscp_client_t; | typedef struct _lscp_client_t lscp_client_t; | |||
/** Client event callback procedure prototype. */ | /** Client event callback procedure prototype. */ | |||
typedef lscp_status_t (*lscp_client_proc_t) | typedef lscp_status_t (*lscp_client_proc_t) | |||
( | ( | |||
struct _lscp_client_t *pClient, | struct _lscp_client_t *pClient, | |||
skipping to change at line 183 | skipping to change at line 215 | |||
lscp_status_t lscp_set_channel_mute (lscp_client_t *pCl ient, int iSamplerChannel, int iMute); | lscp_status_t lscp_set_channel_mute (lscp_client_t *pCl ient, int iSamplerChannel, int iMute); | |||
lscp_status_t lscp_set_channel_solo (lscp_client_t *pCl ient, int iSamplerChannel, int iSolo); | lscp_status_t lscp_set_channel_solo (lscp_client_t *pCl ient, int iSamplerChannel, int iSolo); | |||
lscp_status_t lscp_reset_channel (lscp_client_t *pCl ient, int iSamplerChannel); | lscp_status_t lscp_reset_channel (lscp_client_t *pCl ient, int iSamplerChannel); | |||
lscp_status_t lscp_reset_sampler (lscp_client_t *pCl ient); | lscp_status_t lscp_reset_sampler (lscp_client_t *pCl ient); | |||
lscp_server_info_t * lscp_get_server_info (lscp_client_t *pCl ient); | lscp_server_info_t * lscp_get_server_info (lscp_client_t *pCl ient); | |||
int lscp_get_total_voice_count (lscp_client_t *pCl | ||||
ient); | ||||
int lscp_get_total_voice_count_max (lscp_client_t *pCl | ||||
ient); | ||||
//------------------------------------------------------------------------- | ||||
// MIDI instrument mapping control functions. | ||||
lscp_status_t lscp_map_midi_instrument (lscp_client_t *pCl | ||||
ient, lscp_midi_instrument_t *pMidiInstr, const char *pszEngineName, const | ||||
char *pszFileName, int iInstrIndex, float fVolume, lscp_load_mode_t load_mo | ||||
de, const char *pszName); | ||||
lscp_status_t lscp_unmap_midi_instrument (lscp_client_t *pCl | ||||
ient, lscp_midi_instrument_t *pMidiInstr); | ||||
int lscp_get_midi_instruments (lscp_client_t *pCl | ||||
ient); | ||||
lscp_midi_instrument_info_t *lscp_get_midi_instrument_info(lscp_client_t *p | ||||
Client, lscp_midi_instrument_t *pMidiInstr); | ||||
lscp_status_t lscp_clear_midi_instruments (lscp_client_t *pCl | ||||
ient); | ||||
#if defined(__cplusplus) | #if defined(__cplusplus) | |||
} | } | |||
#endif | #endif | |||
#endif // __LSCP_CLIENT_H | #endif // __LSCP_CLIENT_H | |||
// end of client.h | // end of client.h | |||
End of changes. 3 change blocks. | ||||
3 lines changed or deleted | 59 lines changed or added | |||
device.h | device.h | |||
---|---|---|---|---|
skipping to change at line 17 | skipping to change at line 17 | |||
This library is free software; you can redistribute it and/or | This library is free software; you can redistribute it and/or | |||
modify it under the terms of the GNU Lesser General Public | modify it under the terms of the GNU Lesser General Public | |||
License as published by the Free Software Foundation; either | License as published by the Free Software Foundation; either | |||
version 2.1 of the License, or (at your option) any later version. | version 2.1 of the License, or (at your option) any later version. | |||
This library is distributed in the hope that it will be useful, | This library is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
Lesser General Public License for more details. | Lesser General Public License for more details. | |||
You should have received a copy of the GNU Lesser General Public | You should have received a copy of the GNU General Public License along | |||
License along with this library; if not, write to the Free Software | with this program; if not, write to the Free Software Foundation, Inc., | |||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*************************************************************************** **/ | *************************************************************************** **/ | |||
#ifndef __LSCP_DEVICE_H | #ifndef __LSCP_DEVICE_H | |||
#define __LSCP_DEVICE_H | #define __LSCP_DEVICE_H | |||
#include "lscp/client.h" | #include "lscp/client.h" | |||
#if defined(__cplusplus) | #if defined(__cplusplus) | |||
extern "C" { | extern "C" { | |||
End of changes. 1 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
event.h | event.h | |||
---|---|---|---|---|
skipping to change at line 17 | skipping to change at line 17 | |||
This library is free software; you can redistribute it and/or | This library is free software; you can redistribute it and/or | |||
modify it under the terms of the GNU Lesser General Public | modify it under the terms of the GNU Lesser General Public | |||
License as published by the Free Software Foundation; either | License as published by the Free Software Foundation; either | |||
version 2.1 of the License, or (at your option) any later version. | version 2.1 of the License, or (at your option) any later version. | |||
This library is distributed in the hope that it will be useful, | This library is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
Lesser General Public License for more details. | Lesser General Public License for more details. | |||
You should have received a copy of the GNU Lesser General Public | You should have received a copy of the GNU General Public License along | |||
License along with this library; if not, write to the Free Software | with this program; if not, write to the Free Software Foundation, Inc., | |||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*************************************************************************** **/ | *************************************************************************** **/ | |||
#ifndef __LSCP_EVENT_H | #ifndef __LSCP_EVENT_H | |||
#define __LSCP_EVENT_H | #define __LSCP_EVENT_H | |||
#include "lscp/socket.h" | #include "lscp/socket.h" | |||
#if defined(__cplusplus) | #if defined(__cplusplus) | |||
extern "C" { | extern "C" { | |||
#endif | #endif | |||
/** Subscribable event notification bit-wise flags. */ | /** Subscribable event notification bit-wise flags. */ | |||
typedef enum _lscp_event_t | typedef enum _lscp_event_t | |||
{ | { | |||
LSCP_EVENT_NONE = 0x0000, | LSCP_EVENT_NONE = 0x0000, | |||
LSCP_EVENT_CHANNEL_COUNT = 0x0001, | LSCP_EVENT_CHANNEL_COUNT = 0x0001, | |||
LSCP_EVENT_VOICE_COUNT = 0x0002, | LSCP_EVENT_VOICE_COUNT = 0x0002, | |||
LSCP_EVENT_STREAM_COUNT = 0x0004, | LSCP_EVENT_STREAM_COUNT = 0x0004, | |||
LSCP_EVENT_BUFFER_FILL = 0x0008, | LSCP_EVENT_BUFFER_FILL = 0x0008, | |||
LSCP_EVENT_CHANNEL_INFO = 0x0010, | LSCP_EVENT_CHANNEL_INFO = 0x0010, | |||
LSCP_EVENT_MISCELLANEOUS = 0x1000 | LSCP_EVENT_TOTAL_VOICE_COUNT = 0x0020, | |||
LSCP_EVENT_MISCELLANEOUS = 0x1000 | ||||
} lscp_event_t; | } lscp_event_t; | |||
//------------------------------------------------------------------------- | //------------------------------------------------------------------------- | |||
// Simple event helper functions. | // Simple event helper functions. | |||
const char * lscp_event_to_text ( lscp_event_t event ); | const char * lscp_event_to_text ( lscp_event_t event ); | |||
lscp_event_t lscp_event_from_text ( const char *pszText ); | lscp_event_t lscp_event_from_text ( const char *pszText ); | |||
#if defined(__cplusplus) | #if defined(__cplusplus) | |||
End of changes. 2 change blocks. | ||||
10 lines changed or deleted | 11 lines changed or added | |||
socket.h | socket.h | |||
---|---|---|---|---|
skipping to change at line 17 | skipping to change at line 17 | |||
This library is free software; you can redistribute it and/or | This library is free software; you can redistribute it and/or | |||
modify it under the terms of the GNU Lesser General Public | modify it under the terms of the GNU Lesser General Public | |||
License as published by the Free Software Foundation; either | License as published by the Free Software Foundation; either | |||
version 2.1 of the License, or (at your option) any later version. | version 2.1 of the License, or (at your option) any later version. | |||
This library is distributed in the hope that it will be useful, | This library is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
Lesser General Public License for more details. | Lesser General Public License for more details. | |||
You should have received a copy of the GNU Lesser General Public | You should have received a copy of the GNU General Public License along | |||
License along with this library; if not, write to the Free Software | with this program; if not, write to the Free Software Foundation, Inc., | |||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*************************************************************************** **/ | *************************************************************************** **/ | |||
#ifndef __LSCP_SOCKET_H | #ifndef __LSCP_SOCKET_H | |||
#define __LSCP_SOCKET_H | #define __LSCP_SOCKET_H | |||
#include "lscp/thread.h" | #include "lscp/thread.h" | |||
#if defined(WIN32) | #if defined(WIN32) | |||
#include <winsock.h> | #include <winsock.h> | |||
End of changes. 1 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
thread.h | thread.h | |||
---|---|---|---|---|
skipping to change at line 17 | skipping to change at line 17 | |||
This library is free software; you can redistribute it and/or | This library is free software; you can redistribute it and/or | |||
modify it under the terms of the GNU Lesser General Public | modify it under the terms of the GNU Lesser General Public | |||
License as published by the Free Software Foundation; either | License as published by the Free Software Foundation; either | |||
version 2.1 of the License, or (at your option) any later version. | version 2.1 of the License, or (at your option) any later version. | |||
This library is distributed in the hope that it will be useful, | This library is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
Lesser General Public License for more details. | Lesser General Public License for more details. | |||
You should have received a copy of the GNU Lesser General Public | You should have received a copy of the GNU General Public License along | |||
License along with this library; if not, write to the Free Software | with this program; if not, write to the Free Software Foundation, Inc., | |||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*************************************************************************** **/ | *************************************************************************** **/ | |||
#ifndef __LSCP_THREAD_H | #ifndef __LSCP_THREAD_H | |||
#define __LSCP_THREAD_H | #define __LSCP_THREAD_H | |||
#include <stdio.h> | #include <stdio.h> | |||
#include <stdlib.h> | #include <stdlib.h> | |||
#include <string.h> | #include <string.h> | |||
End of changes. 1 change blocks. | ||||
3 lines changed or deleted | 3 lines changed or added | |||
version.h | version.h | |||
---|---|---|---|---|
skipping to change at line 17 | skipping to change at line 17 | |||
This library is free software; you can redistribute it and/or | This library is free software; you can redistribute it and/or | |||
modify it under the terms of the GNU Lesser General Public | modify it under the terms of the GNU Lesser General Public | |||
License as published by the Free Software Foundation; either | License as published by the Free Software Foundation; either | |||
version 2.1 of the License, or (at your option) any later version. | version 2.1 of the License, or (at your option) any later version. | |||
This library is distributed in the hope that it will be useful, | This library is distributed in the hope that it will be useful, | |||
but WITHOUT ANY WARRANTY; without even the implied warranty of | but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |||
Lesser General Public License for more details. | Lesser General Public License for more details. | |||
You should have received a copy of the GNU Lesser General Public | You should have received a copy of the GNU General Public License along | |||
License along with this library; if not, write to the Free Software | with this program; if not, write to the Free Software Foundation, Inc., | |||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. | |||
*************************************************************************** **/ | *************************************************************************** **/ | |||
#ifndef __LSCP_VERSION_H | #ifndef __LSCP_VERSION_H | |||
#define __LSCP_VERSION_H | #define __LSCP_VERSION_H | |||
#define LSCP_PACKAGE "liblscp" | #define LSCP_PACKAGE "liblscp" | |||
#define LSCP_VERSION "0.3.3" | #define LSCP_VERSION "0.4.0" | |||
#endif // __LSCP_VERSION_H | #endif // __LSCP_VERSION_H | |||
// end of version.h | // end of version.h | |||
End of changes. 2 change blocks. | ||||
4 lines changed or deleted | 4 lines changed or added | |||