23 |
#ifndef __AUDIOTHREAD_H__ |
#ifndef __AUDIOTHREAD_H__ |
24 |
#define __AUDIOTHREAD_H__ |
#define __AUDIOTHREAD_H__ |
25 |
|
|
|
#include <math.h> |
|
|
#include <unistd.h> |
|
|
#include <fcntl.h> |
|
|
#include <pthread.h> |
|
26 |
#include <sstream> |
#include <sstream> |
27 |
|
|
28 |
#include "global.h" |
#include "global.h" |
|
#include "thread.h" |
|
29 |
#include "ringbuffer.h" |
#include "ringbuffer.h" |
30 |
#include "audioio.h" |
#include "audioio.h" |
31 |
#include "voice.h" |
#include "voice.h" |
71 |
uint* pSelf; ///< hack to allow fast deallocation of the key from the list of active keys |
uint* pSelf; ///< hack to allow fast deallocation of the key from the list of active keys |
72 |
RTEList<ModulationSystem::Event>* pEvents; ///< Key specific events (only Note-on, Note-off and sustain pedal currently) |
RTEList<ModulationSystem::Event>* pEvents; ///< Key specific events (only Note-on, Note-off and sustain pedal currently) |
73 |
}; |
}; |
74 |
|
|
75 |
uint8_t ControllerTable[128]; ///< Reflects the current values (0-127) of all MIDI controllers for this engine / sampler channel. |
uint8_t ControllerTable[128]; ///< Reflects the current values (0-127) of all MIDI controllers for this engine / sampler channel. |
76 |
RingBuffer<ModulationSystem::Event>* pEventQueue; ///< Input event queue. |
RingBuffer<ModulationSystem::Event>* pEventQueue; ///< Input event queue. |
77 |
float* pAudioSumBuffer[2]; ///< Audio sum of all voices (32 bit, index 0 = left channel, index 1 = right channel) |
float* pAudioSumBuffer[2]; ///< Audio sum of all voices (32 bit, index 0 = left channel, index 1 = right channel) |