/[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 1041 by schoenebeck, Wed Feb 7 17:45:19 2007 UTC revision 1130 by iliev, Sun Mar 25 18:59:14 2007 UTC
# Line 21  Line 21 
21  #ifndef __LS_ENGINECHANNEL_H__  #ifndef __LS_ENGINECHANNEL_H__
22  #define __LS_ENGINECHANNEL_H__  #define __LS_ENGINECHANNEL_H__
23    
24    #include "../EventListeners.h"
25  #include "../drivers/audio/AudioOutputDevice.h"  #include "../drivers/audio/AudioOutputDevice.h"
26  #include "../drivers/midi/midi.h"  #include "../drivers/midi/midi.h"
27  #include "../drivers/midi/MidiInputDevice.h"  #include "../drivers/midi/MidiInputDevice.h"
# Line 238  namespace LinuxSampler { Line 239  namespace LinuxSampler {
239              void SetMidiRpnControllerLsb(uint8_t CtrlLSB);              void SetMidiRpnControllerLsb(uint8_t CtrlLSB);
240    
241              /**              /**
242                 * Reset to no RPN controller currently selected.
243                 */
244                void ResetMidiRpnController();
245                
246                 /**
247                 * Registers the specified listener to be notified when the number
248                 * of effect sends on this channel is changed.
249                 */
250                void AddFxSendCountListener(FxSendCountListener* l);
251    
252                /**
253                 * Removes the specified listener.
254                 */
255                void RemoveFxSendCountListener(FxSendCountListener* l);
256    
257                /**
258                 * Removes all listeners.
259                 */
260                void RemoveAllFxSendCountListeners();
261    
262                /**
263               * Get currently selected MIDI Registered Parameter Number               * Get currently selected MIDI Registered Parameter Number
264               * (RPN) Controller, this method will return the already merged               * (RPN) Controller, this method will return the already merged
265               * value (MSB and LSB value).               * value (MSB and LSB value).
266                 *
267                 * @e WARNING: you have to call @c ResetMidiRpnController()
268                 * after using this value, otherwise all subsequent MIDI CC #6
269                 * (Data) messages are interpreted as RPN controller value
270                 * messages.
271                 *
272                 * @returns currently selected RPN controller number, a negative
273                 *          value if no RPN controller currently selected
274               */               */
275              int GetMidiRpnController();              int GetMidiRpnController();
276    
# Line 249  namespace LinuxSampler { Line 279  namespace LinuxSampler {
279          protected:          protected:
280              EngineChannel();              EngineChannel();
281              virtual ~EngineChannel() {}; // MUST only be destroyed by EngineChannelFactory              virtual ~EngineChannel() {}; // MUST only be destroyed by EngineChannelFactory
282    
283                /**
284                 * Notifies listeners that the number of effect sends
285                 * on a this channel is changed.
286                 * @param ChannelId The numerical ID of the sampler channel.
287                 * @param NewCount The new number of sampler channels.
288                 */
289                void fireFxSendCountChanged(int ChannelId, int NewCount);
290    
291              friend class EngineChannelFactory;              friend class EngineChannelFactory;
292    
293          private:          private:
# Line 262  namespace LinuxSampler { Line 301  namespace LinuxSampler {
301              bool    bMidiBankMsbReceived;              bool    bMidiBankMsbReceived;
302              bool    bMidiBankLsbReceived;              bool    bMidiBankLsbReceived;
303              bool    bProgramChangeReceived;              bool    bProgramChangeReceived;
304                bool    bMidiRpnReceived;
305              int     iMidiInstrumentMap;              int     iMidiInstrumentMap;
306                ListenerList<FxSendCountListener*> llFxSendCountListeners;
307      };      };
308    
309  } // namespace LinuxSampler  } // namespace LinuxSampler

Legend:
Removed from v.1041  
changed lines
  Added in v.1130

  ViewVC Help
Powered by ViewVC