78 |
virtual String Version(); |
virtual String Version(); |
79 |
virtual String EngineName(); |
virtual String EngineName(); |
80 |
|
|
81 |
|
static const float* VolumeCurve; ///< Table that maps volume control change values 0..127 to amplitude. Unity gain is at 90. |
82 |
|
static const float* PanCurve; ///< Table that maps pan control change values 0..128 to right channel amplitude. Unity gain is at 64 (center). |
83 |
|
|
84 |
//protected: |
//protected: |
85 |
static InstrumentResourceManager instruments; |
static InstrumentResourceManager instruments; |
86 |
|
|
139 |
|
|
140 |
static std::map<AudioOutputDevice*,Engine*> engines; ///< All instances of gig::Engine. |
static std::map<AudioOutputDevice*,Engine*> engines; ///< All instances of gig::Engine. |
141 |
|
|
142 |
|
int SostenutoKeys[128]; |
143 |
|
int SostenutoKeyCount; |
144 |
|
|
145 |
uint8_t GSCheckSum(const RingBuffer<uint8_t>::NonVolatileReader AddrReader, uint DataSize); |
uint8_t GSCheckSum(const RingBuffer<uint8_t>::NonVolatileReader AddrReader, uint DataSize); |
146 |
void AdjustScale(int8_t ScaleTunes[12]); |
void AdjustScale(int8_t ScaleTunes[12]); |
147 |
void ReleaseAllVoices(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itReleaseEvent); |
void ReleaseAllVoices(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itReleaseEvent); |
148 |
void KillAllVoices(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itKillEvent); |
void KillAllVoices(EngineChannel* pEngineChannel, Pool<Event>::Iterator& itKillEvent); |
149 |
|
bool ShouldReleaseVoice(EngineChannel* pEngineChannel, int Key); |
150 |
|
static float* InitVolumeCurve(); |
151 |
|
static float* InitPanCurve(); |
152 |
|
static float* InitCurve(const float* segments, int size = 128); |
153 |
|
|
154 |
unsigned long FrameTime; ///< Time in frames of the start of the current audio fragment |
unsigned long FrameTime; ///< Time in frames of the start of the current audio fragment |
155 |
}; |
}; |