Plush

SequenceCell#

PlushEngine · Type index

Namespace: PlushEngine.Audio (using PlushEngine.Audio;)

One cell of a sequence grid: empty (---), a note (C-4, F#2U0C), or note-off (OFF), optionally playing another instrument than its track's (C-4:01, a slot of the instrument table) and optionally starting late within its row (C-4>80: 0x80 of 256ths, half a row; Renoise's delay column), which is how swing and played timing survive the grid.

public readonly record struct SequenceCell(Note Note, bool IsEmpty, int Instrument = SequenceCell.TrackInstrument, int Delay = 0)

Record properties#

PropertyTypeAccessConstructor default
NoteNoteget; init;required
IsEmptyboolget; init;required
Instrumentintget; init;SequenceCell.TrackInstrument
Delayintget; init;0

Members: DelaySteps · Empty · IsOff · Parse · ToString · TrackInstrument

DelaySteps#

public const int DelaySteps = 256;

Delay steps in a row (a delay of 255 starts 255/256 of a row late).

Empty#

public static SequenceCell Empty { get; }

IsOff#

public bool IsOff { get; }

Parse#

public static SequenceCell Parse(string text);

Parse a cell: ---, a note string or OFF, each optionally followed by :II (a hex instrument slot) and then >DD (a hex delay within the row).

ToString#

public override string ToString();

TrackInstrument#

public const int TrackInstrument = -1;

No instrument override: the track's instrument plays.

Note

Source#