Deluge Firmware 1.3.0
Build date: 2025.04.16
Loading...
Searching...
No Matches
InstrumentClip Class Referencefinal
Inheritance diagram for InstrumentClip:
Collaboration diagram for InstrumentClip:

Public Member Functions

 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
 
NoteRowcreateNewNoteRowForYVisual (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)
 
NoteRowgetNoteRowFromId (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 ()
 
ModelStackWithNoteRowgetNoteRowOnScreen (int32_t yDisplay, ModelStackWithTimelineCounter *modelStack)
 
NoteRowgetNoteRowOnScreen (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
 
NoteRowcreateNewNoteRowForKit (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 ()
 
ModelStackWithNoteRowgetNoteRowForYNote (int32_t yNote, ModelStackWithTimelineCounter *modelStack)
 
NoteRowgetNoteRowForYNote (int32_t, int32_t *getIndex=nullptr)
 
ModelStackWithNoteRowgetNoteRowForSelectedDrum (ModelStackWithTimelineCounter *modelStack)
 
ModelStackWithNoteRowgetNoteRowForDrum (ModelStackWithTimelineCounter *modelStack, Drum *drum)
 
NoteRowgetNoteRowForDrum (Drum *drum, int32_t *getIndex=nullptr)
 
ModelStackWithNoteRowgetOrCreateNoteRowForYNote (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
 
ModelStackWithNoteRowgetNoteRowForDrumName (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
 
InstrumentchangeOutputType (ModelStackWithTimelineCounter *modelStack, OutputType newOutputType)
 
Error transferVoicesToOriginalClipFromThisClone (ModelStackWithTimelineCounter *modelStackOriginal, ModelStackWithTimelineCounter *modelStackClone) override
 
void getSuggestedParamManager (Clip *newClip, ParamManagerForTimeline **suggestedParamManager, Sound *sound) override
 
ParamManagerForTimelinegetCurrentParamManager () 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
 
ClipcloneAsNewOverdub (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 ()
 
ModelStackWithNoteRowduplicateModelStackForClipBeingRecordedFrom (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
 
- Public Member Functions inherited from Clip
 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 ()
 
ClipgetClipBeingRecordedFrom ()
 
ClipgetClipToRecordTo ()
 
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
 
TimelineCountergetTimelineCounterToRecordTo () override
 

Public Attributes

ArpeggiatorSettings arpSettings
 
ParamManagerForTimeline backedUpParamManagerMIDI
 
bool inScaleMode
 
int32_t yScroll
 
deluge::gui::ui::keyboard::KeyboardState keyboardState
 
int32_t ticksTilNextNoteRowEvent {}
 
int32_t noteRowsNumTicksBehindClip {}
 
LearnedMIDI soundMidiCommand
 
NoteRowVector noteRows
 
bool wrapEditing
 
uint32_t wrapEditLevel {}
 
int8_t backedUpInstrumentSlot [4] {}
 
int8_t backedUpInstrumentSubSlot [4] {}
 
String backedUpInstrumentName [2]
 
String backedUpInstrumentDirPath [2]
 
bool affectEntire
 
bool onKeyboardScreen
 
uint8_t midiBank
 
uint8_t midiSub
 
uint8_t midiPGM
 
OutputType outputTypeWhileLoading
 
- Public Attributes inherited from Clip
Outputoutput
 
int16_t colourOffset
 
const ClipType type
 
uint8_t section
 
bool soloingInSessionMode
 
ArmState armState
 
bool activeIfNoSolo
 
bool activeIfNoSoloBeforeStemExport
 
bool exportStem
 
bool wasActiveBefore
 
bool gotInstanceYet
 
bool isPendingOverdub
 
bool isUnfinishedAutoOverdub
 
bool wasWantingToDoLinearRecordingBeforeCountIn
 
OverDubType overdubNature
 
LearnedMIDI muteMIDICommand
 
int32_t loopLength
 
int32_t originalLength
 
int32_t lastProcessedPos
 
ClipbeingRecordedFromClip
 
int32_t repeatCount
 
uint32_t indexForSaving
 
LaunchStyle launchStyle
 
int64_t fillEventAtTickCount
 
bool overdubsShouldCloneOutput
 
bool onAutomationClipView
 
int32_t lastSelectedParamID
 last selected Parameter to be edited in Automation Instrument Clip View
 
deluge::modulation::params::Kind lastSelectedParamKind
 
int32_t lastSelectedParamShortcutX
 
int32_t lastSelectedParamShortcutY
 
int32_t lastSelectedParamArrayPosition
 
OutputType lastSelectedOutputType
 
PatchSource lastSelectedPatchSource
 
String name
 
- Public Attributes inherited from TimelineCounter
ParamManagerForTimeline paramManager
 
bool armedForRecording {true}
 

Protected Member Functions

void posReachedEnd (ModelStackWithTimelineCounter *modelStack) override
 
bool wantsToBeginLinearRecording (Song *song) override
 
bool cloneOutput (ModelStackWithTimelineCounter *modelStack) override
 
void pingpongOccurred (ModelStackWithTimelineCounter *modelStack) override
 
- Protected Member Functions inherited from Clip
Error solicitParamManager (Song *song, ParamManager *newParamManager=nullptr, Clip *favourClipForCloningParamManager=nullptr)
 

Private Member Functions

void deleteEmptyNoteRowsAtEitherEnd (bool onlyIfNoDrum, ModelStackWithTimelineCounter *modelStack, bool mustKeepLastOne=true, bool keepOnesWithMIDIInput=true)
 
void sendPendingNoteOn (ModelStackWithTimelineCounter *modelStack, PendingNoteOn *pendingNoteOn)
 
Error undoUnassignmentOfAllNoteRowsFromDrums (ModelStackWithTimelineCounter *modelStack)
 
void deleteBackedUpParamManagerMIDI ()
 
bool possiblyDeleteEmptyNoteRow (NoteRow *noteRow, bool onlyIfNoDrum, Song *song, bool onlyIfNonNumeric=false, bool keepIfHasMIDIInput=true)
 
void actuallyDeleteEmptyNoteRow (ModelStackWithNoteRow *modelStack)
 
void prepareToEnterKitMode (Song *song)
 
Error readMIDIParamsFromFile (Deserializer &reader, int32_t readAutomationUpToPos)
 

Private Attributes

InstrumentClipinstrumentWasLoadedByReferenceFromClip {}
 
bool lastProbabilities [kNumProbabilityValues] {}
 
int32_t lastProbabiltyPos [kNumProbabilityValues] {}
 
bool currentlyRecordingLinearly
 

Member Function Documentation

◆ abortRecording()

void InstrumentClip::abortRecording ( )
overridevirtual

Implements Clip.

◆ appendClip()

Error InstrumentClip::appendClip ( ModelStackWithTimelineCounter * thisModelStack,
ModelStackWithTimelineCounter * otherModelStack )
overridevirtual

Reimplemented from Clip.

◆ beginLinearRecording()

Error InstrumentClip::beginLinearRecording ( ModelStackWithTimelineCounter * modelStack,
int32_t buttonPressLatency )
overridevirtual

Implements Clip.

◆ claimOutput()

Error InstrumentClip::claimOutput ( ModelStackWithTimelineCounter * modelStack)
overridevirtual

Implements Clip.

◆ clear()

void InstrumentClip::clear ( Action * action,
ModelStackWithTimelineCounter * modelStack,
bool clearAutomation,
bool clearSequenceAndMPE )
overridevirtual

Reimplemented from Clip.

◆ clone()

Error InstrumentClip::clone ( ModelStackWithTimelineCounter * modelStack,
bool shouldFlattenReversing = false ) const
overridevirtual

Implements Clip.

◆ cloneAsNewOverdub()

Clip * InstrumentClip::cloneAsNewOverdub ( ModelStackWithTimelineCounter * modelStack,
OverDubType newOverdubNature )
overridevirtual

Implements Clip.

◆ cloneOutput()

bool InstrumentClip::cloneOutput ( ModelStackWithTimelineCounter * modelStack)
overrideprotectedvirtual

Implements Clip.

◆ copyBasicsFrom()

void InstrumentClip::copyBasicsFrom ( Clip const * otherClip)
overridevirtual

Reimplemented from Clip.

◆ currentlyScrollableAndZoomable()

bool InstrumentClip::currentlyScrollableAndZoomable ( )
overridevirtual

Implements Clip.

◆ deleteSoundsWhichWontSound()

bool InstrumentClip::deleteSoundsWhichWontSound ( Song * song)
overridevirtual

Reimplemented from Clip.

◆ detachFromOutput()

void InstrumentClip::detachFromOutput ( ModelStackWithTimelineCounter * modelStack,
bool shouldRememberDrumName,
bool shouldDeleteEmptyNoteRowsAtEndOfList = false,
bool shouldRetainLinksToSounds = false,
bool keepNoteRowsWithMIDIInput = true,
bool shouldGrabMidiCommands = false,
bool shouldBackUpExpressionParamsToo = true )
overridevirtual

Implements Clip.

◆ expectEvent()

void InstrumentClip::expectEvent ( )
overridevirtual

Reimplemented from Clip.

◆ expectNoFurtherTicks()

void InstrumentClip::expectNoFurtherTicks ( Song * song,
bool actuallySoundChange = true )
overridevirtual

Implements Clip.

◆ finishLinearRecording()

void InstrumentClip::finishLinearRecording ( ModelStackWithTimelineCounter * modelStack,
Clip * nextPendingLoop,
int32_t buttonLatencyForTempolessRecord )
overridevirtual

Implements Clip.

◆ getActiveModControllable()

void InstrumentClip::getActiveModControllable ( ModelStackWithTimelineCounter * modelStack)
overridevirtual

Reimplemented from Clip.

◆ getCurrentlyRecordingLinearly()

bool InstrumentClip::getCurrentlyRecordingLinearly ( )
overridevirtual

Implements Clip.

◆ getCurrentParamManager()

ParamManagerForTimeline * InstrumentClip::getCurrentParamManager ( )
overridevirtual

Reimplemented from Clip.

◆ getMaxLength()

int32_t InstrumentClip::getMaxLength ( )
overridevirtual

Reimplemented from Clip.

◆ getSuggestedParamManager()

void InstrumentClip::getSuggestedParamManager ( Clip * newClip,
ParamManagerForTimeline ** suggestedParamManager,
Sound * sound )
overridevirtual

Reimplemented from Clip.

◆ getXMLTag()

char const * InstrumentClip::getXMLTag ( )
inlineoverridevirtual

Implements Clip.

◆ increaseLengthWithRepeats()

void InstrumentClip::increaseLengthWithRepeats ( ModelStackWithTimelineCounter * modelStack,
int32_t newLength,
IndependentNoteRowLengthIncrease independentNoteRowInstruction,
bool completelyRenderOutIterationDependence = false,
Action * action = nullptr )
overridevirtual

Reimplemented from Clip.

◆ incrementPos()

void InstrumentClip::incrementPos ( ModelStackWithTimelineCounter * modelStack,
int32_t numTicks )
overridevirtual

Reimplemented from Clip.

◆ instrumentBeenEdited()

void InstrumentClip::instrumentBeenEdited ( )
overridevirtual

Reimplemented from TimelineCounter.

◆ isAbandonedOverdub()

bool InstrumentClip::isAbandonedOverdub ( )
overridevirtual

Implements Clip.

◆ isEmpty()

bool InstrumentClip::isEmpty ( bool displayPopup = true)
overridevirtual

Implements Clip.

◆ lengthChanged()

void InstrumentClip::lengthChanged ( ModelStackWithTimelineCounter * modelStack,
int32_t oldLength,
Action * action = nullptr )
overridevirtual

Reimplemented from Clip.

◆ pingpongOccurred()

void InstrumentClip::pingpongOccurred ( ModelStackWithTimelineCounter * modelStack)
overrideprotectedvirtual

Reimplemented from Clip.

◆ posReachedEnd()

void InstrumentClip::posReachedEnd ( ModelStackWithTimelineCounter * modelStack)
overrideprotectedvirtual

Reimplemented from Clip.

◆ processCurrentPos()

void InstrumentClip::processCurrentPos ( ModelStackWithTimelineCounter * modelStack,
uint32_t posIncrement )
overridevirtual

Reimplemented from Clip.

◆ quantizeLengthForArrangementRecording()

void InstrumentClip::quantizeLengthForArrangementRecording ( ModelStackWithTimelineCounter * modelStack,
int32_t lengthSoFar,
uint32_t timeRemainder,
int32_t suggestedLength,
int32_t alternativeLongerLength )
overridevirtual

Implements Clip.

◆ readFromFile()

Error InstrumentClip::readFromFile ( Deserializer & reader,
Song * song )
overridevirtual

Implements Clip.

◆ reGetParameterAutomation()

void InstrumentClip::reGetParameterAutomation ( ModelStackWithTimelineCounter * modelStack)
overridevirtual

Reimplemented from Clip.

◆ renderAsSingleRow()

bool InstrumentClip::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 )
overridevirtual

Reimplemented from Clip.

◆ renderSidebar()

bool InstrumentClip::renderSidebar ( uint32_t whichRows = 0,
RGB image[][kDisplayWidth+kSideBarWidth] = nullptr,
uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth] = nullptr )
inlineoverridevirtual

Implements Clip.

◆ resumePlayback()

void InstrumentClip::resumePlayback ( ModelStackWithTimelineCounter * modelStack,
bool mayMakeSound = true )
overridevirtual

Implements Clip.

◆ setPos()

void InstrumentClip::setPos ( ModelStackWithTimelineCounter * modelStack,
int32_t newPos,
bool useActualPosForParamManagers = true )
overridevirtual

Reimplemented from Clip.

◆ setPosForParamManagers()

void InstrumentClip::setPosForParamManagers ( ModelStackWithTimelineCounter * modelStack,
bool useActualPos = true )
overridevirtual

Reimplemented from Clip.

◆ shiftHorizontally()

bool InstrumentClip::shiftHorizontally ( ModelStackWithTimelineCounter * modelStack,
int32_t amount,
bool shiftAutomation,
bool shiftSequenceAndMPE )
overridevirtual

Return true if successfully shifted. Instrument clips always succeed.

Implements Clip.

◆ transferVoicesToOriginalClipFromThisClone()

Error InstrumentClip::transferVoicesToOriginalClipFromThisClone ( ModelStackWithTimelineCounter * modelStackOriginal,
ModelStackWithTimelineCounter * modelStackClone )
overridevirtual

Reimplemented from Clip.

◆ undoDetachmentFromOutput()

Error InstrumentClip::undoDetachmentFromOutput ( ModelStackWithTimelineCounter * modelStack)
overridevirtual

Reimplemented from Clip.

◆ wantsToBeginLinearRecording()

bool InstrumentClip::wantsToBeginLinearRecording ( Song * song)
overrideprotectedvirtual

Reimplemented from Clip.

◆ writeDataToFile()

void InstrumentClip::writeDataToFile ( Serializer & writer,
Song * song )
overridevirtual

Reimplemented from Clip.


The documentation for this class was generated from the following files: