80 bool render(
ModelStackWithVoice* modelStack, int32_t* soundBuffer,
int numSamples,
bool soundRenderingInStereo,
bool applyingPanAtVoiceLevel, uint32_t sourcesChanged,
FilterSetConfig* filterSetConfig, int32_t externalPitchAdjust);
84 bool noteOn(
ModelStackWithVoice* modelStack,
int newNoteCodeBeforeArpeggiation,
int newNoteCodeAfterArpeggiation, uint8_t velocity, uint32_t newSampleSyncLength, int32_t ticksLate, uint32_t samplesLate,
bool resetEnvelopes,
int fromMIDIChannel,
const int16_t* mpeValues);
88 void changeNoteCode(
ModelStackWithVoice* modelStack,
int newNoteCodeBeforeArpeggiation,
int newNoteCodeAfterArpeggiation,
int newInputMIDIChannel,
const int16_t* newMPEValues);
98 void renderOsc(
int s,
int type, int32_t amplitude, int32_t* thisSample, int32_t* bufferEnd,
int numSamples, uint32_t phaseIncrementNow, uint32_t phaseWidth, uint32_t* thisPhase,
bool applyAmplitude, int32_t amplitudeIncrement,
bool doOscSync, uint32_t resetterPhase, uint32_t resetterPhaseIncrement, uint32_t retriggerPhase, int32_t waveIndexIncrement);
99 void renderBasicSource(
Sound* sound,
ParamManagerForTimeline* paramManager,
int s, int32_t* oscBuffer,
int numSamples, int32_t sourceAmplitude,
bool* unisonPartBecameInactive, int32_t overallPitchAdjust,
bool doOscSync, uint32_t* oscSyncPos, uint32_t* oscSyncPhaseIncrements, int32_t amplitudeIncrement, uint32_t* getPhaseIncrements,
bool getOutAfterPhaseIncrements, int32_t waveIndexIncrement);
100 bool adjustPitch(uint32_t* phaseIncrement, int32_t adjustment);
102 void renderSineWaveWithFeedback(int32_t* thisSample,
int numSamples, uint32_t* phase, int32_t amplitude, uint32_t phaseIncrement, int32_t feedbackAmount, int32_t* lastFeedbackValue,
bool add, int32_t amplitudeIncrement);
103 void renderFMWithFeedback(int32_t* thisSample,
int numSamples, int32_t* fmBuffer, uint32_t* phase, int32_t amplitude, uint32_t phaseIncrement, int32_t feedbackAmount, int32_t* lastFeedbackValue, int32_t amplitudeIncrement);
104 void renderFMWithFeedbackAdd(int32_t* thisSample,
int numSamples, int32_t* fmBuffer, uint32_t* phase, int32_t amplitude, uint32_t phaseIncrement, int32_t feedbackAmount, int32_t* lastFeedbackValue, int32_t amplitudeIncrement);
106 void setupPorta(
Sound* sound);
107 int32_t combineExpressionValues(
Sound* sound,
int whichExpressionDimension);
Definition: envelope.h:29
Definition: FilterSetConfig.h:23
Definition: FilterSet.h:68
Definition: ModelStack.h:305
Definition: ParamManager.h:166
Definition: AudioSample.h:25
Sound * assignedToSound
Definition: voice.h:42
bool noteOn(ModelStackWithVoice *modelStack, int newNoteCodeBeforeArpeggiation, int newNoteCodeAfterArpeggiation, uint8_t velocity, uint32_t newSampleSyncLength, int32_t ticksLate, uint32_t samplesLate, bool resetEnvelopes, int fromMIDIChannel, const int16_t *mpeValues)
Definition: voice.cpp:113
uint32_t portaEnvelopePos
Definition: voice.h:56
uint32_t getPriorityRating()
Definition: voice.cpp:2875
int32_t overallOscAmplitudeLastTime
Definition: voice.h:61
int inputCharacteristics[2]
Definition: voice.h:53
bool hasReleaseStage()
Definition: voice.cpp:2860
Voice()
Definition: voice.cpp:86
int32_t filterGainLastTime
Definition: voice.h:66
Envelope envelopes[numEnvelopes]
Definition: voice.h:49
int32_t modulatorAmplitudeLastTime[numModulators]
Definition: voice.h:63
uint32_t orderSounded
Definition: voice.h:73
Voice * nextUnassigned
Definition: voice.h:77
void noteOff(ModelStackWithVoice *modelStack, bool allowReleaseStage=true)
Definition: voice.cpp:532
int32_t sourceAmplitudesLastTime[NUM_SOURCES]
Definition: voice.h:62
int32_t localExpressionSourceValuesBeforeSmoothing[NUM_EXPRESSION_DIMENSIONS]
Definition: voice.h:47
void setAsUnassigned(ModelStackWithVoice *modelStack, bool deletingSong=false)
Definition: voice.cpp:93
LFO lfo
Definition: voice.h:50
VoiceUnisonPart unisonParts[maxNumUnison]
Definition: voice.h:39
void unassignStuff()
Definition: voice.cpp:101
bool sampleZoneChanged(ModelStackWithVoice *modelStack, int s, int markerType)
Definition: voice.cpp:583
uint8_t whichExpressionSourcesFinalValueChanged
Definition: voice.h:71
uint8_t whichExpressionSourcesCurrentlySmoothing
Definition: voice.h:70
uint32_t sourceWaveIndexesLastTime[NUM_SOURCES]
Definition: voice.h:64
void expressionEventImmediate(Sound *sound, int32_t voiceLevelValue, int s)
Definition: voice.cpp:311
int32_t paramFinalValues[FIRST_GLOBAL_PARAM]
Definition: voice.h:44
bool doneFirstRender
Definition: voice.h:68
void changeNoteCode(ModelStackWithVoice *modelStack, int newNoteCodeBeforeArpeggiation, int newNoteCodeAfterArpeggiation, int newInputMIDIChannel, const int16_t *newMPEValues)
Definition: voice.cpp:325
bool previouslyIgnoredNoteOff
Definition: voice.h:69
int32_t portaEnvelopeMaxAmplitude
Definition: voice.h:57
VoiceSamplePlaybackGuide guides[NUM_SOURCES]
Definition: voice.h:40
uint32_t lastSaturationTanHWorkingValue[2]
Definition: voice.h:59
Patcher patcher
Definition: voice.h:37
FilterSet filterSets[2]
Definition: voice.h:52
void expressionEventSmooth(int32_t newValue, int s)
Definition: voice.cpp:319
void calculatePhaseIncrements(ModelStackWithVoice *modelStack)
Definition: voice.cpp:379
int32_t sourceValues[NUM_PATCH_SOURCES]
Definition: voice.h:45
int noteCodeAfterArpeggiation
Definition: voice.h:54
int32_t overrideAmplitudeEnvelopeReleaseRate
Definition: voice.h:75
bool doFastRelease(uint32_t releaseIncrement=4096)
Definition: voice.cpp:2847
void randomizeOscPhases(Sound *sound)
Definition: voice.cpp:364
bool render(ModelStackWithVoice *modelStack, int32_t *soundBuffer, int numSamples, bool soundRenderingInStereo, bool applyingPanAtVoiceLevel, uint32_t sourcesChanged, FilterSetConfig *filterSetConfig, int32_t externalPitchAdjust)
Definition: voice.cpp:641
Definition: voicesampleplaybackguide.h:29
Definition: voiceunisonpart.h:25
#define NUM_EXPRESSION_DIMENSIONS
Definition: definitions.h:919
#define numModulators
Definition: definitions.h:319
#define NUM_SOURCES
Definition: definitions.h:608
#define numEnvelopes
Definition: definitions.h:317
#define FIRST_GLOBAL_PARAM
Definition: definitions.h:430
#define NUM_PATCH_SOURCES
Definition: definitions.h:355
#define maxNumUnison
Definition: definitions.h:321