/[svn]/linuxsampler/trunk/src/engines/InstrumentManager.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/InstrumentManager.h

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

revision 1321 by schoenebeck, Tue Sep 4 01:12:49 2007 UTC revision 1850 by persson, Sun Mar 1 16:33:22 2009 UTC
# Line 3  Line 3 
3   *   LinuxSampler - modular, streaming capable sampler                     *   *   LinuxSampler - modular, streaming capable sampler                     *
4   *                                                                         *   *                                                                         *
5   *   Copyright (C) 2003, 2004 by Benno Senoner and Christian Schoenebeck   *   *   Copyright (C) 2003, 2004 by Benno Senoner and Christian Schoenebeck   *
6   *   Copyright (C) 2005 - 2007 Christian Schoenebeck                       *   *   Copyright (C) 2005 - 2009 Christian Schoenebeck                       *
7   *                                                                         *   *                                                                         *
8   *   This library is free software; you can redistribute it and/or modify  *   *   This library is free software; you can redistribute it and/or modify  *
9   *   it under the terms of the GNU General Public License as published by  *   *   it under the terms of the GNU General Public License as published by  *
# Line 70  namespace LinuxSampler { Line 70  namespace LinuxSampler {
70                  bool operator<(const instrument_id_t& o) const {                  bool operator<(const instrument_id_t& o) const {
71                      return (Index < o.Index || (Index == o.Index && FileName < o.FileName));                      return (Index < o.Index || (Index == o.Index && FileName < o.FileName));
72                  }                  }
73    
74                    bool operator==(const instrument_id_t& o) const {
75                        return (Index == o.Index && FileName == o.FileName);
76                    }
77                };
78    
79                /**
80                 * Rather abstract informations about an instrument.
81                 */
82                struct instrument_info_t {
83                    String InstrumentName;
84                    String FormatVersion;
85                    String Product;
86                    String Artists;
87                    uint8_t KeyBindings[128];
88                    uint8_t KeySwitchBindings[128];
89              };              };
90    
91              /**              /**
# Line 113  namespace LinuxSampler { Line 129  namespace LinuxSampler {
129              static void LoadInstrumentInBackground(instrument_id_t ID, EngineChannel* pEngineChannel);              static void LoadInstrumentInBackground(instrument_id_t ID, EngineChannel* pEngineChannel);
130    
131              /**              /**
132                 * Stops the background thread that has been started by
133                 * LoadInstrumentInBackground.
134                 */
135                static void StopBackgroundThread();
136    
137                /**
138               * Returns the name of the given instrument as reflected by its               * Returns the name of the given instrument as reflected by its
139               * file.               * file.
140               *               *
# Line 157  namespace LinuxSampler { Line 179  namespace LinuxSampler {
179               *         instrument editor is registered to the sampler               *         instrument editor is registered to the sampler
180               */               */
181              virtual void LaunchInstrumentEditor(instrument_id_t ID) throw (InstrumentManagerException) = 0;              virtual void LaunchInstrumentEditor(instrument_id_t ID) throw (InstrumentManagerException) = 0;
182    
183                /**
184                 * Returns a list of instrument IDs of the provided instrument
185                 * file in case the provided file's format is supported.
186                 *
187                 * @throws InstrumentManagerException if the format of the
188                 *         provided instrument file is not supported
189                 */
190                virtual std::vector<instrument_id_t> GetInstrumentFileContent(String File) throw (InstrumentManagerException) = 0;
191    
192                /**
193                 * Get detailed informations about the provided instrument file.
194                 *
195                 * @throws InstrumentManagerException if the format of the
196                 *         provided instrument file is not supported
197                 */
198                virtual instrument_info_t GetInstrumentInfo(instrument_id_t ID) throw (InstrumentManagerException) = 0;
199      };      };
200    
201  }  }

Legend:
Removed from v.1321  
changed lines
  Added in v.1850

  ViewVC Help
Powered by ViewVC