79 |
|
|
80 |
AudioOutputDevice* pAudioOutputDevice; |
AudioOutputDevice* pAudioOutputDevice; |
81 |
|
|
82 |
|
friend class AbstractVoice; |
83 |
friend class AbstractEngineChannel; |
friend class AbstractEngineChannel; |
84 |
template<class V, class R, class I> friend class EngineChannelBase; |
template<class V, class R, class I> friend class EngineChannelBase; |
85 |
|
template<class EC, class R, class S, class D> friend class VoiceBase; |
86 |
|
|
87 |
protected: |
protected: |
88 |
ArrayList<EngineChannel*> engineChannels; ///< All engine channels of a Engine instance. |
ArrayList<EngineChannel*> engineChannels; ///< All engine channels of a Engine instance. |
118 |
virtual void ProcessNoteOn(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itNoteOnEvent) = 0; |
virtual void ProcessNoteOn(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itNoteOnEvent) = 0; |
119 |
virtual void ProcessNoteOff(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itNoteOffEvent) = 0; |
virtual void ProcessNoteOff(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itNoteOffEvent) = 0; |
120 |
virtual void ProcessControlChange(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itControlChangeEvent) = 0; |
virtual void ProcessControlChange(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itControlChangeEvent) = 0; |
121 |
|
virtual int GetMinFadeOutSamples() = 0; |
122 |
|
|
123 |
private: |
private: |
124 |
static std::map<Format, std::map<AudioOutputDevice*,AbstractEngine*> > engines; |
static std::map<Format, std::map<AudioOutputDevice*,AbstractEngine*> > engines; |