/[svn]/liblscp/trunk/lscp/client.h
ViewVC logotype

Diff of /liblscp/trunk/lscp/client.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 735 by capela, Tue Aug 16 09:48:42 2005 UTC revision 946 by capela, Mon Nov 27 18:33:02 2006 UTC
# Line 2  Line 2 
2  //  //
3  /****************************************************************************  /****************************************************************************
4     liblscp - LinuxSampler Control Protocol API     liblscp - LinuxSampler Control Protocol API
5     Copyright (C) 2004-2005, rncbc aka Rui Nuno Capela. All rights reserved.     Copyright (C) 2004-2006, 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
# Line 14  Line 14 
14     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15     Lesser General Public License for more details.     Lesser General Public License for more details.
16    
17     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
18     License along with this library; if not, write to the Free Software     with this program; if not, write to the Free Software Foundation, Inc.,
19     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA     51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
20    
21  *****************************************************************************/  *****************************************************************************/
22    
# Line 96  typedef enum _lscp_usage_t Line 96  typedef enum _lscp_usage_t
96  } lscp_usage_t;  } lscp_usage_t;
97    
98    
99    /** MIDI instrument parameter struct. */
100    typedef struct _lscp_midi_instrument_t
101    {
102        int bank_msb;
103        int bank_lsb;
104        int program;
105    
106    } lscp_midi_instrument_t;
107    
108    
109    /** MIDI instrument load mode. */
110    typedef enum _lscp_load_mode_t
111    {
112        LSCP_LOAD_DEFAULT = 0,
113        LSCP_LOAD_ON_DEMAND,
114        LSCP_LOAD_ON_DEMAND_HOLD,
115        LSCP_LOAD_PERSISTENT
116    
117    } lscp_load_mode_t;
118    
119    
120    /** MIDI instrument info cache struct. */
121    typedef struct _lscp_midi_instrument_info_t
122    {
123        char *           name;
124        char *           engine_name;
125        char *           instrument_file;
126        int              instrument_nr;
127        char *           instrument_name;
128        lscp_load_mode_t load_mode;
129        float            volume;
130    
131    } lscp_midi_instrument_info_t;
132    
133    
134  //-------------------------------------------------------------------------  //-------------------------------------------------------------------------
135  // Client socket main structure.  // Client socket main structure.
136    
# Line 186  lscp_status_t           lscp_reset_sampl Line 221  lscp_status_t           lscp_reset_sampl
221    
222  lscp_server_info_t *    lscp_get_server_info            (lscp_client_t *pClient);  lscp_server_info_t *    lscp_get_server_info            (lscp_client_t *pClient);
223    
224    int                     lscp_get_total_voice_count      (lscp_client_t *pClient);
225    int                     lscp_get_total_voice_count_max  (lscp_client_t *pClient);
226    
227    //-------------------------------------------------------------------------
228    // MIDI instrument mapping control functions.
229    
230    lscp_status_t           lscp_map_midi_instrument        (lscp_client_t *pClient, lscp_midi_instrument_t *pMidiInstr, const char *pszEngineName, const char *pszFileName, int iInstrIndex, float fVolume, lscp_load_mode_t load_mode, const char *pszName);
231    lscp_status_t           lscp_unmap_midi_instrument      (lscp_client_t *pClient, lscp_midi_instrument_t *pMidiInstr);
232    
233    int                     lscp_get_midi_instruments       (lscp_client_t *pClient);
234    
235    lscp_midi_instrument_info_t *lscp_get_midi_instrument_info(lscp_client_t *pClient, lscp_midi_instrument_t *pMidiInstr);
236    
237    lscp_status_t           lscp_clear_midi_instruments     (lscp_client_t *pClient);
238    
239    
240  #if defined(__cplusplus)  #if defined(__cplusplus)
241  }  }
242  #endif  #endif

Legend:
Removed from v.735  
changed lines
  Added in v.946

  ViewVC Help
Powered by ViewVC