|
| SoundInstrument () |
|
bool | writeDataToFile (Clip *clipForSavingOutputOnly, Song *song) |
|
int | readFromFile (Song *song, Clip *clip, int32_t readAutomationUpToPos) |
|
void | cutAllSound () |
|
bool | noteIsOn (int noteCode) |
|
void | renderOutput (ModelStack *modelStack, StereoSample *startPos, StereoSample *endPos, int numSamples, int32_t *reverbBuffer, int32_t reverbAmountAdjust, int32_t sideChainHitPending, bool shouldLimitDelayFeedback, bool isClipActive) |
|
void | offerReceivedCCToLearnedParams (MIDIDevice *fromDevice, uint8_t channel, uint8_t ccNumber, uint8_t value, ModelStackWithTimelineCounter *modelStack) |
|
bool | offerReceivedPitchBendToLearnedParams (MIDIDevice *fromDevice, uint8_t channel, uint8_t data1, uint8_t data2, ModelStackWithTimelineCounter *modelStack) |
|
int | loadAllAudioFiles (bool mayActuallyReadFiles) |
|
void | resyncLFOs () |
|
ModControllable * | toModControllable () |
|
bool | setActiveClip (ModelStackWithTimelineCounter *modelStack, int maySendMIDIPGMs) |
|
void | setupPatchingForAllParamManagers (Song *song) |
|
char const * | getFilePrefix () |
|
void | setupPatching (ModelStackWithTimelineCounter *modelStack) |
|
void | deleteBackedUpParamManagers (Song *song) |
|
void | polyphonicExpressionEventOnChannelOrNote (int newValue, int whichExpressionDimension, int channelOrNoteNumber, int whichCharacteristic) |
|
void | monophonicExpressionEvent (int newValue, int whichExpressionDimension) |
|
void | sendNote (ModelStackWithThreeMainThings *modelStack, bool isOn, int noteCode, int16_t const *mpeValues, int fromMIDIChannel, uint8_t velocity, uint32_t sampleSyncLength, int32_t ticksLate, uint32_t samplesLate) |
|
ArpeggiatorSettings * | getArpSettings (InstrumentClip *clip=NULL) |
|
bool | readTagFromFile (char const *tagName) |
|
void | prepareForHibernationOrDeletion () |
|
void | compensateInstrumentVolumeForResonance (ModelStackWithThreeMainThings *modelStack) |
|
bool | isSkippingRendering () |
|
void | loadCrucialAudioFilesOnly () |
|
void | beenEdited (bool shouldMoveToEmptySlot=true) |
|
int32_t | doTickForwardForArp (ModelStack *modelStack, int32_t currentPos) |
|
void | setupWithoutActiveClip (ModelStack *modelStack) |
|
void | getThingWithMostReverb (Sound **soundWithMostReverb, ParamManager **paramManagerWithMostReverb, GlobalEffectableForClip **globalEffectableWithMostReverb, int32_t *highestReverbAmountFound) |
|
uint8_t * | getModKnobMode () |
|
ArpeggiatorBase * | getArp () |
|
char const * | getXMLTag () |
|
| Sound () |
|
virtual ArpeggiatorSettings * | getArpSettings (InstrumentClip *clip=NULL)=0 |
|
virtual void | setSkippingRendering (bool newSkipping) |
|
bool | setModFXType (int newType) final |
|
void | patchedParamPresetValueChanged (uint8_t p, ModelStackWithSoundFlags *modelStack, int32_t oldValue, int32_t newValue) |
|
void | render (ModelStackWithThreeMainThings *modelStack, StereoSample *outputBuffer, int numSamples, int32_t *reverbBuffer, int32_t sideChainHitPending, int32_t reverbAmountAdjust=134217728, bool shouldLimitDelayFeedback=false, int32_t pitchAdjust=16777216) |
|
void | unassignAllVoices () |
|
void | ensureInaccessibleParamPresetValuesWithoutKnobsAreZero (Song *song) final |
|
void | ensureInaccessibleParamPresetValuesWithoutKnobsAreZero (ModelStackWithThreeMainThings *modelStack) |
|
void | ensureInaccessibleParamPresetValuesWithoutKnobsAreZeroWithMinimalDetails (ParamManager *paramManager) |
|
void | ensureParamPresetValueWithoutKnobIsZero (ModelStackWithAutoParam *modelStack) |
|
void | ensureParamPresetValueWithoutKnobIsZeroWithMinimalDetails (ParamManager *paramManager, int p) |
|
uint8_t | maySourcePatchToParam (uint8_t s, uint8_t p, ParamManager *paramManager) |
|
void | setLFOGlobalSyncLevel (uint8_t newLevel) |
|
void | resyncGlobalLFO () |
|
void | setLFOGlobalWave (uint8_t newWave) |
|
int8_t | getKnobPos (uint8_t p, ParamManagerForTimeline *paramManager, uint32_t timePos, TimelineCounter *counter) |
|
int32_t | getKnobPosBig (int p, ParamManagerForTimeline *paramManager, uint32_t timePos, TimelineCounter *counter) |
|
bool | learnKnob (MIDIDevice *fromDevice, ParamDescriptor paramDescriptor, uint8_t whichKnob, uint8_t modKnobMode, uint8_t midiChannel, Song *song) final |
|
bool | hasFilters () |
|
void | sampleZoneChanged (int markerType, int s, ModelStackWithSoundFlags *modelStack) |
|
void | setNumUnison (int newNum, ModelStackWithSoundFlags *modelStack) |
|
void | setUnisonDetune (int newAmount, ModelStackWithSoundFlags *modelStack) |
|
void | setModulatorTranspose (int m, int value, ModelStackWithSoundFlags *modelStack) |
|
void | setModulatorCents (int m, int value, ModelStackWithSoundFlags *modelStack) |
|
int | readFromFile (ModelStackWithModControllable *modelStack, int32_t readAutomationUpToPos, ArpeggiatorSettings *arpSettings) |
|
void | writeToFile (bool savingSong, ParamManager *paramManager, ArpeggiatorSettings *arpSettings) |
|
bool | allowNoteTails (ModelStackWithSoundFlags *modelStack, bool disregardSampleLoop=false) |
|
void | voiceUnassigned (ModelStackWithVoice *modelStack) |
|
bool | isSourceActiveCurrently (int s, ParamManagerForTimeline *paramManager) |
|
bool | isSourceActiveEverDisregardingMissingSample (int s, ParamManager *paramManager) |
|
bool | isSourceActiveEver (int s, ParamManager *paramManager) |
|
bool | isNoiseActiveEver (ParamManagerForTimeline *paramManager) |
|
void | noteOn (ModelStackWithThreeMainThings *modelStack, ArpeggiatorBase *arpeggiator, int noteCode, int16_t const *mpeValues, uint32_t sampleSyncLength=0, int32_t ticksLate=0, uint32_t samplesLate=0, int velocity=64, int fromMIDIChannel=16) |
|
void | allNotesOff (ModelStackWithThreeMainThings *modelStack, ArpeggiatorBase *arpeggiator) |
|
void | noteOffPostArpeggiator (ModelStackWithSoundFlags *modelStack, int noteCode=-32768) |
|
void | noteOnPostArpeggiator (ModelStackWithSoundFlags *modelStack, int newNoteCodeBeforeArpeggiation, int newNoteCodeAfterArpeggiation, int velocity, int16_t const *mpeValues, uint32_t sampleSyncLength, int32_t ticksLate, uint32_t samplesLate, int fromMIDIChannel=16) |
|
int16_t | getMaxOscTranspose (InstrumentClip *clip) |
|
int16_t | getMinOscTranspose () |
|
void | setSynthMode (uint8_t value, Song *song) |
|
uint8_t | getSynthMode () |
|
bool | anyNoteIsOn () |
|
virtual bool | isDrum () |
|
void | setupAsSample (ParamManagerForTimeline *paramManager) |
|
void | recalculateAllVoicePhaseIncrements (ModelStackWithSoundFlags *modelStack) |
|
int | loadAllAudioFiles (bool mayActuallyReadFiles) |
|
bool | envelopeHasSustainCurrently (int e, ParamManagerForTimeline *paramManager) |
|
bool | envelopeHasSustainEver (int e, ParamManagerForTimeline *paramManager) |
|
bool | renderingOscillatorSyncCurrently (ParamManagerForTimeline *paramManager) |
|
bool | renderingOscillatorSyncEver (ParamManager *paramManager) |
|
bool | hasAnyVoices () |
|
void | setupAsBlankSynth (ParamManager *paramManager) |
|
void | setupAsDefaultSynth (ParamManager *paramManager) |
|
void | modButtonAction (uint8_t whichModButton, bool on, ParamManagerForTimeline *paramManager) final |
|
bool | modEncoderButtonAction (uint8_t whichModEncoder, bool on, ModelStackWithThreeMainThings *modelStack) final |
|
int32_t | hasAnyTimeStretchSyncing (ParamManagerForTimeline *paramManager, bool getSampleLength=false, int note=0) |
|
int32_t | hasCutOrLoopModeSamples (ParamManagerForTimeline *paramManager, int note, bool *anyLooping=NULL) |
|
bool | hasCutModeSamples (ParamManagerForTimeline *paramManager) |
|
bool | allowsVeryLateNoteStart (InstrumentClip *clip, ParamManagerForTimeline *paramManager) |
|
void | fastReleaseAllVoices (ModelStackWithSoundFlags *modelStack) |
|
void | recalculatePatchingToParam (uint8_t p, ParamManagerForTimeline *paramManager) |
|
void | doneReadingFromFile () |
|
virtual void | setupPatchingForAllParamManagers (Song *song) |
|
void | compensateVolumeForResonance (ModelStackWithThreeMainThings *modelStack) |
|
ModelStackWithAutoParam * | getParamFromModEncoder (int whichModEncoder, ModelStackWithThreeMainThings *modelStack, bool allowCreation=true) final |
|
void | reassessRenderSkippingStatus (ModelStackWithSoundFlags *modelStack, bool shouldJustCutModFX=false) |
|
void | getThingWithMostReverb (Sound **soundWithMostReverb, ParamManager **paramManagerWithMostReverb, GlobalEffectableForClip **globalEffectableWithMostReverb, int32_t *highestReverbAmountFound, ParamManagerForTimeline *paramManager) |
|
virtual bool | readTagFromFile (char const *tagName)=0 |
|
void | detachSourcesFromAudioFiles () |
|
void | confirmNumVoices (char const *error) |
|
int32_t | getSmoothedPatchedParamValue (int p, ParamManager *paramManager) |
|
void | notifyValueChangeViaLPF (int p, bool shouldDoParamLPF, ModelStackWithThreeMainThings const *modelStack, int32_t oldValue, int32_t newValue, bool fromAutomation) |
|
void | deleteMultiRange (int s, int r) |
|
void | prepareForHibernation () |
|
void | wontBeRenderedForAWhile () |
|
char const * | paramToString (uint8_t param) final |
|
int | stringToParam (char const *string) final |
|
ModelStackWithAutoParam * | getParamFromMIDIKnob (MIDIKnob *knob, ModelStackWithThreeMainThings *modelStack) final |
|
virtual ArpeggiatorBase * | getArp ()=0 |
|
void | possiblySetupDefaultExpressionPatching (ParamManager *paramManager) |
|
void | saturate (int32_t *data, uint32_t *workingValue) |
|
| ModControllableAudio () |
|
virtual | ~ModControllableAudio () |
|
virtual void | cloneFrom (ModControllableAudio *other) |
|
void | processStutter (StereoSample *buffer, int numSamples, ParamManager *paramManager) |
|
void | processReverbSendAndVolume (StereoSample *buffer, int numSamples, int32_t *reverbBuffer, int32_t postFXVolume, int32_t postReverbVolume, int32_t reverbSendAmount, int32_t pan=0, bool doAmplitudeIncrement=false, int32_t amplitudeIncrement=0) |
|
void | writeAttributesToFile () |
|
void | writeTagsToFile () |
|
int | readTagFromFile (char const *tagName, ParamManagerForTimeline *paramManager, int32_t readAutomationUpToPos, Song *song) |
|
void | processSRRAndBitcrushing (StereoSample *buffer, int numSamples, int32_t *postFXVolume, ParamManager *paramManager) |
|
void | wontBeRenderedForAWhile () |
|
void | endStutter (ParamManagerForTimeline *paramManager) |
|
virtual bool | setModFXType (int newType) |
|
bool | offerReceivedCCToLearnedParams (MIDIDevice *fromDevice, uint8_t channel, uint8_t ccNumber, uint8_t value, ModelStackWithTimelineCounter *modelStack, int noteRowIndex=-1) |
|
bool | offerReceivedPitchBendToLearnedParams (MIDIDevice *fromDevice, uint8_t channel, uint8_t data1, uint8_t data2, ModelStackWithTimelineCounter *modelStack, int noteRowIndex=-1) |
|
virtual bool | learnKnob (MIDIDevice *fromDevice, ParamDescriptor paramDescriptor, uint8_t whichKnob, uint8_t modKnobMode, uint8_t midiChannel, Song *song) |
|
bool | unlearnKnobs (ParamDescriptor paramDescriptor, Song *song) |
|
virtual void | ensureInaccessibleParamPresetValuesWithoutKnobsAreZero (Song *song) |
|
virtual char const * | paramToString (uint8_t param) |
|
virtual int | stringToParam (char const *string) |
|
bool | isBitcrushingEnabled (ParamManager *paramManager) |
|
bool | isSRREnabled (ParamManager *paramManager) |
|
bool | hasBassAdjusted (ParamManager *paramManager) |
|
bool | hasTrebleAdjusted (ParamManager *paramManager) |
|
ModelStackWithAutoParam * | getParamFromMIDIKnob (MIDIKnob *knob, ModelStackWithThreeMainThings *modelStack) |
|
int | buttonAction (int x, int y, bool on, ModelStackWithThreeMainThings *modelStack) |
|
ModelStackWithAutoParam * | getParamFromModEncoder (int whichModEncoder, ModelStackWithThreeMainThings *modelStack, bool allowCreation) |
|
| ModControllable () |
|
virtual bool | modEncoderButtonAction (uint8_t whichModEncoder, bool on, ModelStackWithThreeMainThings *modelStack) |
|
virtual void | modButtonAction (uint8_t whichModButton, bool on, ParamManagerForTimeline *paramManager) |
|
virtual ModelStackWithAutoParam * | getParamFromModEncoder (int whichModEncoder, ModelStackWithThreeMainThings *modelStack, bool allowCreation=true) |
|
virtual ModelStackWithAutoParam * | getParamFromMIDIKnob (MIDIKnob *knob, ModelStackWithThreeMainThings *modelStack) |
|
virtual uint8_t * | getModKnobMode () |
|
virtual bool | isKit () |
|
virtual int | getKnobPosForNonExistentParam (int whichModEncoder, ModelStackWithAutoParam *modelStack) |
|
virtual int | modEncoderActionForNonExistentParam (int offset, int whichModEncoder, ModelStackWithAutoParam *modelStack) |
|
virtual bool | allowNoteTails (ModelStackWithSoundFlags *modelStack, bool disregardSampleLoop=false) |
|
virtual void | polyphonicExpressionEventOnChannelOrNote (int newValue, int whichExpressionDimension, int channelOrNoteNumber, int whichCharacteristic) |
|
virtual void | monophonicExpressionEvent (int newValue, int whichExpressionDimension) |
|
| MelodicInstrument (int newType) |
|
virtual void | sendNote (ModelStackWithThreeMainThings *modelStack, bool isOn, int noteCode, int16_t const *mpeValues, int fromMIDIChannel=MIDI_CHANNEL_NONE, uint8_t velocity=64, uint32_t sampleSyncLength=0, int32_t ticksLate=0, uint32_t samplesLate=0)=0 |
|
virtual void | ccReceivedFromInputMIDIChannel (int cc, int value, ModelStackWithTimelineCounter *modelStack) |
|
bool | writeMelodicInstrumentAttributesToFile (Clip *clipForSavingOutputOnly, Song *song) |
|
void | writeMelodicInstrumentTagsToFile (Clip *clipForSavingOutputOnly, Song *song) |
|
bool | readTagFromFile (char const *tagName) |
|
void | offerReceivedNote (ModelStackWithTimelineCounter *modelStackWithTimelineCounter, MIDIDevice *fromDevice, bool on, int channel, int note, int velocity, bool shouldRecordNotes, bool *doingMidiThru) |
|
void | offerReceivedPitchBend (ModelStackWithTimelineCounter *modelStackWithTimelineCounter, MIDIDevice *fromDevice, uint8_t channel, uint8_t data1, uint8_t data2, bool *doingMidiThru) |
|
void | offerReceivedCC (ModelStackWithTimelineCounter *modelStackWithTimelineCounter, MIDIDevice *fromDevice, uint8_t channel, uint8_t ccNumber, uint8_t value, bool *doingMidiThru) |
|
void | offerReceivedAftertouch (ModelStackWithTimelineCounter *modelStackWithTimelineCounter, MIDIDevice *fromDevice, int channel, int value, int noteCode, bool *doingMidiThru) |
|
bool | setActiveClip (ModelStackWithTimelineCounter *modelStack, int maySendMIDIPGMs) |
|
bool | isNoteRowStillAuditioningAsLinearRecordingEnded (NoteRow *noteRow) final |
|
void | stopAnyAuditioning (ModelStack *modelStack) final |
|
bool | isNoteAuditioning (int noteCode) |
|
bool | isAnyAuditioningHappening () final |
|
void | beginAuditioningForNote (ModelStack *modelStack, int note, int velocity, int16_t const *mpeValues, int fromMIDIChannel=MIDI_CHANNEL_NONE, uint32_t sampleSyncLength=0) |
|
void | endAuditioningForNote (ModelStack *modelStack, int note, int velocity=DEFAULT_LIFT_VALUE) |
|
virtual ModelStackWithAutoParam * | getParamToControlFromInputMIDIChannel (int cc, ModelStackWithThreeMainThings *modelStack) |
|
void | processParamFromInputMIDIChannel (int cc, int32_t newValue, ModelStackWithTimelineCounter *modelStack) |
|
void | polyphonicExpressionEventPossiblyToRecord (ModelStackWithTimelineCounter *modelStack, int32_t newValue, int whichExpressionDimension, int channelOrNoteNumber, int whichCharacteristic) |
|
ArpeggiatorSettings * | getArpSettings (InstrumentClip *clip=NULL) |
|
virtual void | polyphonicExpressionEventOnChannelOrNote (int newValue, int whichExpressionDimension, int channelOrNoteNumber, int whichCharacteristic)=0 |
|
void | offerBendRangeUpdate (ModelStack *modelStack, MIDIDevice *device, int channelOrZone, int whichBendRange, int bendSemitones) |
|
| Instrument (int newType) |
|
virtual char const * | getFilePrefix () |
|
virtual bool | doAnySoundsUseCC (uint8_t channel, uint8_t ccNumber, uint8_t value) |
|
virtual void | beenEdited (bool shouldMoveToEmptySlot=true) |
|
virtual void | setupPatching (ModelStackWithTimelineCounter *modelStack) |
|
void | deleteAnyInstancesOfClip (InstrumentClip *clip) |
|
bool | writeDataToFile (Clip *clipForSavingOutputOnly, Song *song) |
|
bool | readTagFromFile (char const *tagName) |
|
virtual void | compensateInstrumentVolumeForResonance (ModelStackWithThreeMainThings *modelStack) |
|
virtual bool | isNoteRowStillAuditioningAsLinearRecordingEnded (NoteRow *noteRow)=0 |
|
char const * | getNameXMLTag () |
|
virtual char const * | getSlotXMLTag () |
|
virtual char const * | getSubSlotXMLTag () |
|
virtual bool | isAnyAuditioningHappening ()=0 |
|
| Output (int newType) |
|
virtual | ~Output () |
|
virtual void | renderOutput (ModelStack *modelStack, StereoSample *startPos, StereoSample *endPos, int numSamples, int32_t *reverbBuffer, int32_t reverbAmountAdjust, int32_t sideChainHitPending, bool shouldLimitDelayFeedback, bool isClipActive)=0 |
|
virtual void | setupWithoutActiveClip (ModelStack *modelStack) |
|
virtual bool | setActiveClip (ModelStackWithTimelineCounter *modelStack, int maySendMIDIPGMs=PGM_CHANGE_SEND_ONCE) |
|
void | pickAnActiveClipForArrangementPos (ModelStack *modelStack, int arrangementPos, int maySendMIDIPGMs) |
|
void | pickAnActiveClipIfPossible (ModelStack *modelStack, bool searchSessionClipsIfNeeded=true, int maySendMIDIPGMs=PGM_CHANGE_SEND_ONCE, bool setupWithoutActiveClipIfNeeded=true) |
|
void | detachActiveClip (Song *currentSong) |
|
virtual ModControllable * | toModControllable () |
|
virtual bool | isSkippingRendering () |
|
bool | clipHasInstance (Clip *clip) |
|
void | clipLengthChanged (Clip *clip, int32_t oldLength) |
|
virtual void | cutAllSound () |
|
virtual void | getThingWithMostReverb (Sound **soundWithMostReverb, ParamManager **paramManagerWithMostReverb, GlobalEffectableForClip **globalEffectableWithMostReverb, int32_t *highestReverbAmountFound) |
|
virtual bool | offerReceivedPitchBendToLearnedParams (MIDIDevice *fromDevice, uint8_t channel, uint8_t data1, uint8_t data2, ModelStackWithTimelineCounter *modelStack) |
|
virtual void | offerReceivedCCToLearnedParams (MIDIDevice *fromDevice, uint8_t channel, uint8_t ccNumber, uint8_t value, ModelStackWithTimelineCounter *modelStack) |
|
virtual int32_t | doTickForwardForArp (ModelStack *modelStack, int32_t currentPos) |
|
void | endAnyArrangementRecording (Song *song, int32_t actualEndPos, uint32_t timeRemainder) |
|
virtual bool | wantsToBeginArrangementRecording () |
|
virtual int | readFromFile (Song *song, Clip *clip, int32_t readAutomationUpToPos) |
|
virtual bool | readTagFromFile (char const *tagName) |
|
void | writeToFile (Clip *clipForSavingOutputOnly, Song *song) |
|
virtual bool | writeDataToFile (Clip *clipForSavingOutputOnly, Song *song) |
|
virtual int | loadAllAudioFiles (bool mayActuallyReadFiles) |
|
virtual void | loadCrucialAudioFilesOnly () |
|
virtual void | resyncLFOs () |
|
virtual void | sendMIDIPGM () |
|
virtual void | deleteBackedUpParamManagers (Song *song) |
|
virtual void | prepareForHibernationOrDeletion () |
|
virtual char const * | getXMLTag ()=0 |
|
virtual ParamManager * | getParamManager (Song *song) |
|
virtual char const * | getNameXMLTag () |
|
virtual void | offerReceivedNote (ModelStackWithTimelineCounter *modelStackWithTimelineCounter, MIDIDevice *fromDevice, bool on, int channel, int note, int velocity, bool shouldRecordNotes, bool *doingMidiThru) |
|
virtual void | offerReceivedPitchBend (ModelStackWithTimelineCounter *modelStackWithTimelineCounter, MIDIDevice *fromDevice, uint8_t channel, uint8_t data1, uint8_t data2, bool *doingMidiThru) |
|
virtual void | offerReceivedCC (ModelStackWithTimelineCounter *modelStackWithTimelineCounter, MIDIDevice *fromDevice, uint8_t channel, uint8_t ccNumber, uint8_t value, bool *doingMidiThru) |
|
virtual void | offerReceivedAftertouch (ModelStackWithTimelineCounter *modelStackWithTimelineCounter, MIDIDevice *fromDevice, int channel, int value, int noteCode, bool *doingMidiThru) |
|
virtual void | stopAnyAuditioning (ModelStack *modelStack) |
|
virtual void | offerBendRangeUpdate (ModelStack *modelStack, MIDIDevice *device, int channelOrZone, int whichBendRange, int bendSemitones) |
|
int | possiblyBeginArrangementRecording (Song *song, int newPos) |
|
void | endArrangementPlayback (Song *song, int32_t actualEndPos, uint32_t timeRemainder) |
|