82 |
public: |
public: |
83 |
// Attributes |
// Attributes |
84 |
int MIDIKey; ///< MIDI key number of the key that triggered the voice |
int MIDIKey; ///< MIDI key number of the key that triggered the voice |
85 |
|
uint KeyGroup; |
86 |
DiskThread* pDiskThread; ///< Pointer to the disk thread, to be able to order a disk stream and later to delete the stream again |
DiskThread* pDiskThread; ///< Pointer to the disk thread, to be able to order a disk stream and later to delete the stream again |
87 |
|
|
88 |
// Methods |
// Methods |
89 |
Voice(); |
Voice(); |
90 |
~Voice(); |
~Voice(); |
91 |
void Kill(); |
void Kill(Event* pKillEvent); |
92 |
|
void KillImmediately(); |
93 |
void Render(uint Samples); |
void Render(uint Samples); |
94 |
void Reset(); |
void Reset(); |
95 |
void SetOutput(AudioOutputDevice* pAudioOutputDevice); |
void SetOutput(AudioOutputDevice* pAudioOutputDevice); |
139 |
LFO<gig::VCFCManipulator>* pLFO2; ///< Low Frequency Oscillator 2 (Filter cutoff frequency) |
LFO<gig::VCFCManipulator>* pLFO2; ///< Low Frequency Oscillator 2 (Filter cutoff frequency) |
140 |
LFO<gig::VCOManipulator>* pLFO3; ///< Low Frequency Oscillator 3 (Pitch) |
LFO<gig::VCOManipulator>* pLFO3; ///< Low Frequency Oscillator 3 (Pitch) |
141 |
Event* pTriggerEvent; ///< First event on the key's list the voice should process (only needed for the first audio fragment in which voice was triggered, after that it will be set to NULL). |
Event* pTriggerEvent; ///< First event on the key's list the voice should process (only needed for the first audio fragment in which voice was triggered, after that it will be set to NULL). |
142 |
|
Event* pKillEvent; ///< Event which caused this voice to be killed |
143 |
|
|
144 |
// Static Methods |
// Static Methods |
145 |
static float CalculateFilterCutoffCoeff(); |
static float CalculateFilterCutoffCoeff(); |