126 |
RingBuffer<uint8_t,false>* pSysexBuffer; ///< Input buffer for MIDI system exclusive messages. |
RingBuffer<uint8_t,false>* pSysexBuffer; ///< Input buffer for MIDI system exclusive messages. |
127 |
uint SampleRate; ///< Sample rate of the engines output audio signal (in Hz) |
uint SampleRate; ///< Sample rate of the engines output audio signal (in Hz) |
128 |
uint MaxSamplesPerCycle; ///< Size of each audio output buffer |
uint MaxSamplesPerCycle; ///< Size of each audio output buffer |
129 |
unsigned long FrameTime; ///< Time in frames of the start of the current audio fragment |
sched_time_t FrameTime; ///< Scheduler time of the 1st sample point of the current audio fragment cycle. This is a consecutive sample point counter for the engine which proceeds (beyond fragment boundaries) until the engine is explicitly reset for some reason. |
130 |
int ActiveVoiceCountMax; ///< the maximum voice usage since application start |
int ActiveVoiceCountMax; ///< the maximum voice usage since application start |
131 |
atomic_t ActiveVoiceCount; ///< number of currently active voices |
atomic_t ActiveVoiceCount; ///< number of currently active voices |
132 |
int VoiceSpawnsLeft; ///< We only allow CONFIG_MAX_VOICES voices to be spawned per audio fragment, we use this variable to ensure this limit. |
int VoiceSpawnsLeft; ///< We only allow CONFIG_MAX_VOICES voices to be spawned per audio fragment, we use this variable to ensure this limit. |
155 |
virtual void ProcessPolyphonicKeyPressure(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itNotePressureEvent) = 0; |
virtual void ProcessPolyphonicKeyPressure(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itNotePressureEvent) = 0; |
156 |
virtual void ProcessReleaseTrigger(EngineChannel* pEngineChannel, RTList<Event>::Iterator& itEvent) = 0; |
virtual void ProcessReleaseTrigger(EngineChannel* pEngineChannel, RTList<Event>::Iterator& itEvent) = 0; |
157 |
virtual int GetMinFadeOutSamples() = 0; |
virtual int GetMinFadeOutSamples() = 0; |
158 |
virtual note_id_t LaunchNewNote(LinuxSampler::EngineChannel* pEngineChannel, Event* pNoteOnEvent) = 0; |
virtual note_id_t LaunchNewNote(LinuxSampler::EngineChannel* pEngineChannel, Pool<Event>::Iterator& itNoteOnEvent) = 0; |
159 |
virtual void CreateInstrumentScriptVM(); |
virtual void CreateInstrumentScriptVM(); |
160 |
|
|
161 |
private: |
private: |