|
| InstrumentClip (Song *song=nullptr) |
|
void | increaseLengthWithRepeats (ModelStackWithTimelineCounter *modelStack, int32_t newLength, IndependentNoteRowLengthIncrease independentNoteRowInstruction, bool completelyRenderOutIterationDependence=false, Action *action=nullptr) override |
|
void | halveNoteRowsWithIndependentLength (ModelStackWithTimelineCounter *modelStack) |
|
void | repeatOrChopToExactLength (ModelStackWithTimelineCounter *modelStack, int32_t newLength) |
|
void | processCurrentPos (ModelStackWithTimelineCounter *modelStack, uint32_t posIncrement) override |
|
bool | renderAsSingleRow (ModelStackWithTimelineCounter *modelStack, TimelineView *editorScreen, int32_t xScroll, uint32_t xZoom, RGB *image, uint8_t occupancyMask[], bool addUndefinedArea, int32_t noteRowIndexStart=0, int32_t noteRowIndexEnd=2147483647, int32_t xStart=0, int32_t xEnd=kDisplayWidth, bool allowBlur=true, bool drawRepeats=false) override |
|
void | toggleNoteRowMute (ModelStackWithNoteRow *modelStack) |
|
RGB | getMainColourFromY (int32_t yNote, int8_t) |
|
void | stopAllNotesPlaying (ModelStackWithTimelineCounter *modelStack, bool actuallySoundChange=true) |
|
void | resumePlayback (ModelStackWithTimelineCounter *modelStack, bool mayMakeSound=true) override |
|
void | setPos (ModelStackWithTimelineCounter *modelStack, int32_t newPos, bool useActualPosForParamManagers=true) override |
|
void | replaceMusicalMode (const ScaleChange &changes, ModelStackWithTimelineCounter *modelStack) |
|
void | seeWhatNotesWithinOctaveArePresent (NoteSet &, MusicalKey) |
|
void | transpose (int32_t, ModelStackWithTimelineCounter *modelStack) |
|
void | nudgeNotesVertically (int32_t direction, VerticalNudgeType, ModelStackWithTimelineCounter *modelStack) |
|
void | expectNoFurtherTicks (Song *song, bool actuallySoundChange=true) override |
|
Error | clone (ModelStackWithTimelineCounter *modelStack, bool shouldFlattenReversing=false) const override |
|
NoteRow * | createNewNoteRowForYVisual (int32_t, Song *song) |
|
int32_t | getYVisualFromYNote (int32_t, Song *song) |
|
int32_t | getYNoteFromYVisual (int32_t, Song *song) |
|
int32_t | getYNoteFromYDisplay (int32_t yDisplay, Song *song) |
|
int32_t | guessRootNote (Song *song, int32_t previousRoot) |
|
int32_t | getNumNoteRows () |
|
void | ensureInaccessibleParamPresetValuesWithoutKnobsAreZero (ModelStackWithTimelineCounter *modelStack, Sound *sound) |
|
bool | deleteSoundsWhichWontSound (Song *song) override |
|
void | setBackedUpParamManagerMIDI (ParamManagerForTimeline *newOne) |
|
void | restoreBackedUpParamManagerMIDI (ModelStackWithModControllable *modelStack) |
|
int32_t | getNoteRowId (NoteRow *noteRow, int32_t noteRowIndex) |
|
NoteRow * | getNoteRowFromId (int32_t id) |
|
bool | shiftHorizontally (ModelStackWithTimelineCounter *modelStack, int32_t amount, bool shiftAutomation, bool shiftSequenceAndMPE) override |
| Return true if successfully shifted. Instrument clips always succeed.
|
|
bool | isEmpty (bool displayPopup=true) override |
|
bool | containsAnyNotes () |
|
ModelStackWithNoteRow * | getNoteRowOnScreen (int32_t yDisplay, ModelStackWithTimelineCounter *modelStack) |
|
NoteRow * | getNoteRowOnScreen (int32_t yDisplay, Song *song, int32_t *getIndex=nullptr) |
| can be called with null song if the clip is a kit
|
|
bool | currentlyScrollableAndZoomable () override |
|
void | recordNoteOn (ModelStackWithNoteRow *modelStack, int32_t velocity, bool forcePos0=false, int16_t const *mpeValuesOrNull=nullptr, int32_t fromMIDIChannel=MIDI_CHANNEL_NONE) |
|
void | recordNoteOff (ModelStackWithNoteRow *modelStack, int32_t velocity=kDefaultLiftValue) |
|
void | copyBasicsFrom (Clip const *otherClip) override |
|
void | lengthChanged (ModelStackWithTimelineCounter *modelStack, int32_t oldLength, Action *action=nullptr) override |
|
NoteRow * | createNewNoteRowForKit (ModelStackWithTimelineCounter *modelStack, bool atStart, int32_t *getIndex=nullptr) |
|
Error | changeInstrument (ModelStackWithTimelineCounter *modelStack, Instrument *newInstrument, ParamManagerForTimeline *paramManager, InstrumentRemoval instrumentRemovalInstruction, InstrumentClip *favourClipForCloningParamManager=nullptr, bool keepNoteRowsWithMIDIInput=true, bool giveMidiAssignmentsToNewInstrument=false) |
|
void | detachFromOutput (ModelStackWithTimelineCounter *modelStack, bool shouldRememberDrumName, bool shouldDeleteEmptyNoteRowsAtEndOfList=false, bool shouldRetainLinksToSounds=false, bool keepNoteRowsWithMIDIInput=true, bool shouldGrabMidiCommands=false, bool shouldBackUpExpressionParamsToo=true) override |
|
void | assignDrumsToNoteRows (ModelStackWithTimelineCounter *modelStack, bool shouldGiveMIDICommandsToDrums=false, int32_t numNoteRowsPreviouslyDeletedFromBottom=0) |
|
void | unassignAllNoteRowsFromDrums (ModelStackWithTimelineCounter *modelStack, bool shouldRememberDrumNames, bool shouldRetainLinksToSounds, bool shouldGrabMidiCommands, bool shouldBackUpExpressionParamsToo) |
|
Error | readFromFile (Deserializer &reader, Song *song) override |
|
void | writeDataToFile (Serializer &writer, Song *song) override |
|
void | prepNoteRowsForExitingKitMode (Song *song) |
|
void | deleteNoteRow (ModelStackWithTimelineCounter *modelStack, int32_t i) |
|
int16_t | getTopYNote () |
|
int16_t | getBottomYNote () |
|
uint32_t | getWrapEditLevel () |
|
ModelStackWithNoteRow * | getNoteRowForYNote (int32_t yNote, ModelStackWithTimelineCounter *modelStack) |
|
NoteRow * | getNoteRowForYNote (int32_t, int32_t *getIndex=nullptr) |
|
ModelStackWithNoteRow * | getNoteRowForSelectedDrum (ModelStackWithTimelineCounter *modelStack) |
|
ModelStackWithNoteRow * | getNoteRowForDrum (ModelStackWithTimelineCounter *modelStack, Drum *drum) |
|
NoteRow * | getNoteRowForDrum (Drum *drum, int32_t *getIndex=nullptr) |
|
ModelStackWithNoteRow * | getOrCreateNoteRowForYNote (int32_t yNote, ModelStackWithTimelineCounter *modelStack, Action *action=nullptr, bool *scaleAltered=nullptr) |
|
bool | hasSameInstrument (InstrumentClip *otherClip) |
|
bool | isScaleModeClip () |
|
bool | allowNoteTails (ModelStackWithNoteRow *modelStack) |
|
Error | setAudioInstrument (Instrument *newInstrument, Song *song, bool shouldNotifyInstrument, ParamManager *newParamManager, InstrumentClip *favourClipForCloningParamManager=nullptr) |
|
void | expectEvent () override |
|
int32_t | getDistanceToNextNote (Note *givenNote, ModelStackWithNoteRow *modelStack) |
|
void | reGetParameterAutomation (ModelStackWithTimelineCounter *modelStack) override |
|
void | stopAllNotesForMIDIOrCV (ModelStackWithTimelineCounter *modelStack) |
|
void | sendMIDIPGM () |
|
void | noteRemovedFromMode (int32_t yNoteWithinOctave, Song *song) |
|
void | clear (Action *action, ModelStackWithTimelineCounter *modelStack, bool clearAutomation, bool clearSequenceAndMPE) override |
|
bool | doesProbabilityExist (int32_t apartFromPos, int32_t probability, int32_t secondProbability=-1) |
|
void | clearArea (ModelStackWithTimelineCounter *modelStack, int32_t startPos, int32_t endPos, Action *action) |
|
ScaleType | getScaleType () |
|
void | backupPresetSlot () |
|
void | setPosForParamManagers (ModelStackWithTimelineCounter *modelStack, bool useActualPos=true) override |
|
ModelStackWithNoteRow * | getNoteRowForDrumName (ModelStackWithTimelineCounter *modelStack, char const *name) |
|
void | compensateVolumeForResonance (ModelStackWithTimelineCounter *modelStack) |
|
Error | undoDetachmentFromOutput (ModelStackWithTimelineCounter *modelStack) override |
|
Error | setNonAudioInstrument (Instrument *newInstrument, Song *song, ParamManager *newParamManager=nullptr) |
|
Error | setInstrument (Instrument *newInstrument, Song *song, ParamManager *newParamManager, InstrumentClip *favourClipForCloningParamManager=nullptr) |
|
void | deleteOldDrumNames () |
|
void | ensureScrollWithinKitBounds () |
|
bool | isScrollWithinRange (int32_t scrollAmount, int32_t newYNote) |
|
Error | appendClip (ModelStackWithTimelineCounter *thisModelStack, ModelStackWithTimelineCounter *otherModelStack) override |
|
void | instrumentBeenEdited () override |
|
Instrument * | changeOutputType (ModelStackWithTimelineCounter *modelStack, OutputType newOutputType) |
|
Error | transferVoicesToOriginalClipFromThisClone (ModelStackWithTimelineCounter *modelStackOriginal, ModelStackWithTimelineCounter *modelStackClone) override |
|
void | getSuggestedParamManager (Clip *newClip, ParamManagerForTimeline **suggestedParamManager, Sound *sound) override |
|
ParamManagerForTimeline * | getCurrentParamManager () override |
|
Error | claimOutput (ModelStackWithTimelineCounter *modelStack) override |
|
char const * | getXMLTag () override |
|
void | finishLinearRecording (ModelStackWithTimelineCounter *modelStack, Clip *nextPendingLoop, int32_t buttonLatencyForTempolessRecord) override |
|
Error | beginLinearRecording (ModelStackWithTimelineCounter *modelStack, int32_t buttonPressLatency) override |
|
Clip * | cloneAsNewOverdub (ModelStackWithTimelineCounter *modelStack, OverDubType newOverdubNature) override |
|
bool | isAbandonedOverdub () override |
|
void | quantizeLengthForArrangementRecording (ModelStackWithTimelineCounter *modelStack, int32_t lengthSoFar, uint32_t timeRemainder, int32_t suggestedLength, int32_t alternativeLongerLength) override |
|
void | setupAsNewKitClipIfNecessary (ModelStackWithTimelineCounter *modelStack) |
|
bool | getCurrentlyRecordingLinearly () override |
|
void | abortRecording () override |
|
void | yDisplayNoLongerAuditioning (int32_t yDisplay, Song *song) |
|
void | shiftOnlyOneNoteRowHorizontally (ModelStackWithNoteRow *modelStack, int32_t shiftAmount, bool shiftAutomation, bool shiftSequenceAndMPE) |
|
int32_t | getMaxLength () override |
|
bool | hasAnyPitchExpressionAutomationOnNoteRows () |
|
ModelStackWithNoteRow * | duplicateModelStackForClipBeingRecordedFrom (ModelStackWithNoteRow *modelStack, char *otherModelStackMemory) |
|
void | incrementPos (ModelStackWithTimelineCounter *modelStack, int32_t numTicks) override |
|
void | getActiveModControllable (ModelStackWithTimelineCounter *modelStack) override |
|
bool | renderSidebar (uint32_t whichRows=0, RGB image[][kDisplayWidth+kSideBarWidth]=nullptr, uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]=nullptr) override |
|
| Clip (ClipType newType) |
|
bool | cancelAnyArming () |
|
int32_t | getMaxZoom () |
|
void | cloneFrom (Clip const *other) |
|
void | beginInstance (Song *song, int32_t arrangementRecordPos) |
|
void | endInstance (int32_t arrangementRecordPos, bool evenIfOtherClip=false) |
|
void | prepareForDestruction (ModelStackWithTimelineCounter *modelStack, InstrumentRemoval instrumentRemovalInstruction) |
|
uint32_t | getActualCurrentPosAsIfPlayingInForwardDirection () |
|
int32_t | getCurrentPosAsIfPlayingInForwardDirection () |
|
Clip * | getClipBeingRecordedFrom () |
|
Clip * | getClipToRecordTo () |
|
bool | isArrangementOnlyClip () const |
|
bool | isActiveOnOutput () |
|
Error | resumeOriginalClipFromThisClone (ModelStackWithTimelineCounter *modelStackOriginal, ModelStackWithTimelineCounter *modelStackClone) |
|
void | drawUndefinedArea (int32_t localScroll, uint32_t, int32_t lengthToDisplay, RGB *image, uint8_t[], int32_t imageWidth, TimelineView *editorScreen, bool tripletsOnHere) |
|
bool | opportunityToBeginSessionLinearRecording (ModelStackWithTimelineCounter *modelStack, bool *newOutputCreated, int32_t buttonPressLatency) |
|
virtual bool | shouldCloneForOverdubs () |
|
void | setupOverdubInPlace (OverDubType type) |
|
void | writeToFile (Serializer &writer, Song *song) |
|
void | writeMidiCommandsToFile (Serializer &writer, Song *song) |
|
void | readTagFromFile (Deserializer &reader, char const *tagName, Song *song, int32_t *readAutomationUpToPos) |
|
void | setupForRecordingAsAutoOverdub (Clip *existingClip, Song *song, OverDubType newOverdubNature) |
|
void | outputChanged (ModelStackWithTimelineCounter *modelStack, Output *newOutput) |
|
virtual void | stopAllNotesPlaying (Song *song, bool actuallySoundChange=true) |
|
virtual bool | willCloneOutputForOverdub () |
|
void | setSequenceDirectionMode (ModelStackWithTimelineCounter *modelStack, SequenceDirection newSequenceDirection) |
|
uint32_t | getLivePos () const override |
| Get the current tick of this timeline counter relative to the playback handler.
|
|
int32_t | getLoopLength () const override |
|
bool | isPlayingAutomationNow () const override |
|
bool | backtrackingCouldLoopBackToEnd () const override |
|
int32_t | getPosAtWhichPlaybackWillCut (ModelStackWithTimelineCounter const *modelStack) const override |
|
int32_t | getLastProcessedPos () const override |
| Get the tick at which this timeline counter last did anything.
|
|
bool | possiblyCloneForArrangementRecording (ModelStackWithTimelineCounter *modelStack) override |
|
TimelineCounter * | getTimelineCounterToRecordTo () override |
|