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

Public Member Functions

bool opened () override
bool getGreyoutColsAndRows (uint32_t *cols, uint32_t *rows) override
void selectEncoderAction (int8_t offset) override
ActionResult padAction (int32_t x, int32_t y, int32_t velocity) override
ActionResult buttonAction (deluge::hid::Button b, bool on, bool inCardRoutine) override
ActionResult verticalEncoderAction (int32_t offset, bool inCardRoutine) override
ActionResult horizontalEncoderAction (int32_t offset) override
void graphicsRoutine () override
ActionResult timerCallback () override
bool renderMainPads (uint32_t whichRows, RGB image[][kDisplayWidth+kSideBarWidth]=nullptr, uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]=nullptr, bool drawUndefinedArea=true) override
bool renderSidebar (uint32_t whichRows, RGB image[][kDisplayWidth+kSideBarWidth]=nullptr, uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth]=nullptr) override
void renderOLED (deluge::hid::display::oled_canvas::Canvas &canvas) override
void displayText ()
void loopUnlock ()
 Unlock the loop, allowing the ends to be moved independently.
void loopLock ()
 Lock the loop so the start and end are always the same number of samples apart.
UIType getUIType () override
 What type of UI is this? e.g. UIType::ARRANGER.
bool exitUI () override
 returns whether a UI exited
Public Member Functions inherited from UI
virtual void modEncoderAction (int32_t whichModEncoder, int32_t offset)
virtual void modButtonAction (uint8_t whichButton, bool on)
virtual void modEncoderButtonAction (uint8_t whichModEncoder, bool on)
virtual void focusRegained ()
virtual void displayOrLanguageChanged ()
virtual bool canSeeViewUnderneath ()
virtual ClipMindertoClipMinder ()
virtual TimelineViewtoTimelineView ()
 Convert this view to a TimelineView.
virtual void scrollFinished ()
virtual bool pcReceivedForMidiLearn (MIDICable &fromCable, int32_t channel, int32_t program)
virtual bool noteOnReceivedForMidiLearn (MIDICable &fromCable, int32_t channel, int32_t note, int32_t velocity)
void close ()
virtual UIgetUI ()
 When entering a UI (e.g. automationView), you may wish to open a different UI based on the current context (e.g. automationViewArranger, automationViewAudioClip, etc.)
virtual UIType getUIContextType ()
 What context does UI relate to? e.g. UIType could be AUTOMATION but UIContextType could be ARRANGER, AUDIO CLIP, INSTRUMENT CLIP.
virtual UIModControllableContext getUIModControllableContext ()
 What mod controllable context is this UI using? E.g. Automation View can use the Song ModControllable when in Arranger but the Clip ModControllable when in a Clip.

Public Attributes

MarkerType markerType
int8_t blinkPhase
int8_t pressX
int8_t pressY
Public Attributes inherited from UI
bool oledShowsUIUnderneath

Private Member Functions

void writeValue (uint32_t value, MarkerType markerTypeNow=MarkerType::NOT_AVAILABLE)
int32_t getStartColOnScreen (int32_t unscrolledPos)
int32_t getEndColOnScreen (int32_t unscrolledPos)
int32_t getStartPosFromCol (int32_t col)
int32_t getEndPosFromCol (int32_t col)
void getColsOnScreen (MarkerColumn *cols)
void recordScrollAndZoom ()
bool shouldAllowExtraScrollRight ()
void renderColumn (int32_t xDisplay, RGB image[kDisplayHeight][kDisplayWidth+kSideBarWidth], MarkerColumn cols[kNumMarkerTypes], int32_t supressMask)
void renderMarkerInCol (int32_t xDisplay, RGB thisImage[kDisplayHeight][kDisplayWidth+kSideBarWidth], MarkerType type, int32_t yStart, int32_t yEnd, bool dimmly)
 Draw a single marker.
MarkerType reverseRemap (MarkerType type) const
 Swap a marker to its inverse, if the sample is currently reversed.

Static Private Attributes

static constexpr int32_t kInvalidColumn = -2147483648

Additional Inherited Members

Protected Attributes inherited from UI
UIType uiType

Member Function Documentation

◆ buttonAction()

ActionResult SampleMarkerEditor::buttonAction ( deluge::hid::Button b,
bool on,
bool inCardRoutine )
overridevirtual

Reimplemented from UI.

◆ exitUI()

bool SampleMarkerEditor::exitUI ( )
overridevirtual

returns whether a UI exited

Reimplemented from UI.

◆ getGreyoutColsAndRows()

bool SampleMarkerEditor::getGreyoutColsAndRows ( uint32_t * cols,
uint32_t * rows )
overridevirtual

Reimplemented from UI.

◆ getUIType()

UIType SampleMarkerEditor::getUIType ( )
inlineoverridevirtual

What type of UI is this? e.g. UIType::ARRANGER.

Implements UI.

◆ graphicsRoutine()

void SampleMarkerEditor::graphicsRoutine ( )
overridevirtual

Reimplemented from UI.

◆ horizontalEncoderAction()

ActionResult SampleMarkerEditor::horizontalEncoderAction ( int32_t offset)
overridevirtual

Reimplemented from UI.

◆ opened()

bool SampleMarkerEditor::opened ( )
overridevirtual

Reimplemented from UI.

◆ padAction()

ActionResult SampleMarkerEditor::padAction ( int32_t x,
int32_t y,
int32_t velocity )
overridevirtual

Reimplemented from UI.

◆ renderColumn()

void SampleMarkerEditor::renderColumn ( int32_t xDisplay,
RGB image[kDisplayHeight][kDisplayWidth+kSideBarWidth],
MarkerColumn cols[kNumMarkerTypes],
int32_t supressMask )
private

Render a single column of the sample markers.

Parameters
xDisplaythe column to render in to
imageimage buffer to render in to
colsMarker column data
supressMaskMask of markers to supress rendering for

◆ renderMainPads()

bool SampleMarkerEditor::renderMainPads ( uint32_t whichRows,
RGB image[][kDisplayWidth+kSideBarWidth] = nullptr,
uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth] = nullptr,
bool drawUndefinedArea = true )
overridevirtual

Reimplemented from UI.

◆ renderOLED()

void SampleMarkerEditor::renderOLED ( deluge::hid::display::oled_canvas::Canvas & canvas)
overridevirtual

Implements UI.

◆ renderSidebar()

bool SampleMarkerEditor::renderSidebar ( uint32_t whichRows,
RGB image[][kDisplayWidth+kSideBarWidth] = nullptr,
uint8_t occupancyMask[][kDisplayWidth+kSideBarWidth] = nullptr )
overridevirtual

Reimplemented from UI.

◆ selectEncoderAction()

void SampleMarkerEditor::selectEncoderAction ( int8_t offset)
overridevirtual

Reimplemented from UI.

◆ timerCallback()

ActionResult SampleMarkerEditor::timerCallback ( )
overridevirtual

Reimplemented from UI.

◆ verticalEncoderAction()

ActionResult SampleMarkerEditor::verticalEncoderAction ( int32_t offset,
bool inCardRoutine )
overridevirtual

Reimplemented from UI.


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