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" |
242 |
* Reset to no RPN controller currently selected. |
* Reset to no RPN controller currently selected. |
243 |
*/ |
*/ |
244 |
void ResetMidiRpnController(); |
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 |
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: |
303 |
bool bProgramChangeReceived; |
bool bProgramChangeReceived; |
304 |
bool bMidiRpnReceived; |
bool bMidiRpnReceived; |
305 |
int iMidiInstrumentMap; |
int iMidiInstrumentMap; |
306 |
|
ListenerList<FxSendCountListener*> llFxSendCountListeners; |
307 |
}; |
}; |
308 |
|
|
309 |
} // namespace LinuxSampler |
} // namespace LinuxSampler |