Deluge Firmware 1.3.0
Build date: 2025.04.16
Loading...
Searching...
No Matches
ScaleChange Class Reference
Collaboration diagram for ScaleChange:

Public Member Functions

int8_t operator[] (uint8_t degree) const
 
int8_t & operator[] (uint8_t degree)
 
NoteSet applyTo (NoteSet notes) const
 

Public Attributes

NoteSet source
 
NoteSet target
 

Private Attributes

int8_t degreeOffset [kMaxScaleSize] = {0}
 

Member Function Documentation

◆ applyTo()

NoteSet ScaleChange::applyTo ( NoteSet notes) const

Transposes a NoteSet according to the ScaleChange.

For each scale degree of source, if the note exists in the notes, applies the semitone offset from the corresponding scale degree.

If the NoteSet is not a subset of oldScale, all bets are off.

◆ operator[]()

int8_t ScaleChange::operator[] ( uint8_t degree) const
inline

Returns the number of semitones for a scale degree offset.

Member Data Documentation

◆ source

NoteSet ScaleChange::source

The source scale to which the ScaleChange applies.


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