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

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

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

revision 947 by schoenebeck, Mon Nov 27 21:34:55 2006 UTC revision 973 by schoenebeck, Fri Dec 15 21:40:27 2006 UTC
# Line 148  namespace LinuxSampler { Line 148  namespace LinuxSampler {
148               */               */
149              void SetMidiBankLsb(uint8_t BankLSB);              void SetMidiBankLsb(uint8_t BankLSB);
150    
151                /**
152                 * Returns true if this EngineChannel is using no MIDI
153                 * instrument map at all, that is if it will ignore all MIDI
154                 * program change messages.
155                 *
156                 * @see UsesDefaultMidiInstrumentMap()
157                 * @see GetMidiInstrumentMap()
158                 */
159                bool UsesNoMidiInstrumentMap();
160    
161                /**
162                 * Returns true if this EngineChannel is using the default MIDI
163                 * instrument map for handling MIDI program changes.
164                 *
165                 * @see UsesNoMidiInstrumentMap()
166                 * @see GetMidiInstrumentMap()
167                 */
168                bool UsesDefaultMidiInstrumentMap();
169    
170                /**
171                 * Returns ID of the MIDI instrument map currently used by this
172                 * EngineChannel to handle MIDI program changes. You should
173                 * always call @c UsesNoMidiInstrumentMap() and
174                 * @c UsesDefaultMidiInstrumentMap() before calling this method
175                 * to check if this EngineChannel is probably using the default
176                 * map or no map at all, because in these two particular cases
177                 * this method would throw an exception!
178                 *
179                 * @throws Exception - if EngineChannel is set to no map at all
180                 *                     or is set to the default map
181                 * @see UsesNoMidiInstrumentMap()
182                 * @see UsesDefaultMidiInstrumentMap()
183                 */
184                int GetMidiInstrumentMap() throw (Exception);
185    
186                /**
187                 * Let this EngineChannel use no MIDI instrument map at all,
188                 * that is to let it ignore all MIDI program change messages.
189                 *
190                 * @see SetMidiInstrumentMapToDefault()
191                 * @see SetMidiInstrumentMap()
192                 */
193                void SetMidiInstrumentMapToNone();
194    
195                /**
196                 * Let this EngineChannel use the default MIDI instrument map to
197                 * handle MIDI program changes.
198                 *
199                 * @see SetMidiInstrumentMapToNone()
200                 * @see SetMidiInstrumentMap()
201                 */
202                void SetMidiInstrumentMapToDefault();
203    
204                /**
205                 * Set a specific MIDI instrument map this EngineChannel should
206                 * use to handle MIDI program changes.
207                 *
208                 * @see SetMidiInstrumentMapToNone()
209                 * @see SetMidiInstrumentMapToDefault()
210                 *
211                 * @throws Exception - in case given map does not exist
212                 */
213                void SetMidiInstrumentMap(int MidiMap) throw (Exception);
214    
215              int iSamplerChannelIndex; ///< FIXME: nasty hack, might be removed (should be 'virtual EngineChannel* EngineChannel() = 0;', but due to cyclic dependencies only a void* solution would be possible ATM)              int iSamplerChannelIndex; ///< FIXME: nasty hack, might be removed (should be 'virtual EngineChannel* EngineChannel() = 0;', but due to cyclic dependencies only a void* solution would be possible ATM)
216    
217          protected:          protected:
# Line 161  namespace LinuxSampler { Line 225  namespace LinuxSampler {
225              uint8_t uiMidiProgram;              uint8_t uiMidiProgram;
226              uint8_t uiMidiBankMsb;              uint8_t uiMidiBankMsb;
227              uint8_t uiMidiBankLsb;              uint8_t uiMidiBankLsb;
228                bool    bMidiBankMsbReceived;
229                bool    bMidiBankLsbReceived;
230                bool    bProgramChangeReceived;
231                int     iMidiInstrumentMap;
232      };      };
233    
234  } // namespace LinuxSampler  } // namespace LinuxSampler

Legend:
Removed from v.947  
changed lines
  Added in v.973

  ViewVC Help
Powered by ViewVC