Tabula Sonora 0.1.0
A native C++20 implementation of the Roland Sound Canvas VA synth voice
Loading...
Searching...
No Matches
ts::Sequence Struct Reference

A parsed sequence: controller timelines, notes, and the global effect selections. More...

#include <tabulasonora/sequence.hpp>

Public Attributes

std::array< PartTimelines, channel_countparts
 Per-channel timelines, indexed by MIDI channel.
std::vector< NoteRecordnotes
 Every note, with its parameters latched at note-on.
ControllerTimeline master_volume
ControllerTimeline reverb_type
 GS reverb macro selections.
ControllerTimeline chorus_type
 GS chorus macro selections.
ControllerTimeline delay_type
 GS delay macro selections.
std::int64_t last_event_position = 0
 Position of the final event of any kind.

Static Public Attributes

static constexpr int channel_count = 16
 MIDI channels.

Detailed Description

A parsed sequence: controller timelines, notes, and the global effect selections.

Member Data Documentation

◆ channel_count

int ts::Sequence::channel_count = 16
staticconstexpr

MIDI channels.

◆ parts

std::array<PartTimelines, channel_count> ts::Sequence::parts

Per-channel timelines, indexed by MIDI channel.

◆ notes

std::vector<NoteRecord> ts::Sequence::notes

Every note, with its parameters latched at note-on.

◆ master_volume

ControllerTimeline ts::Sequence::master_volume

◆ reverb_type

ControllerTimeline ts::Sequence::reverb_type

GS reverb macro selections.

◆ chorus_type

ControllerTimeline ts::Sequence::chorus_type

GS chorus macro selections.

◆ delay_type

ControllerTimeline ts::Sequence::delay_type

GS delay macro selections.

◆ last_event_position

std::int64_t ts::Sequence::last_event_position = 0

Position of the final event of any kind.

This sets where a render ends, and it is not the same as the last note: a file commonly closes with controller or meta traffic after the music stops.


The documentation for this struct was generated from the following file: