Expand description
Declares control structures, which can be used to execute events at specified time intervals.
The main control structures are Seq and Loop. These can be used to modify a Signal
at regular time intervals. Note that the Signal won’t be immediately modified when the Seq or Loop is
initialized. It will only be modified after the first time interval transpires. You can call
Seq::skip or Loop::skip in order to immediately skip to and apply the first event.
Also note that the time interval between events can be zero. The effect of this is to execute these events simultaneously.
§Type aliases
This file also defines various useful type aliases. Arpeggio serves to arpeggiate a signal
by changing its frequency in periodic intervals. [MelodySeq] and [MelodyLoop] both
functionally serve as piano rolls for a polyphonic signal.
Structs§
- Arp
- The function that arpeggiates a signal.
- Loop
- Changes a signal according to a specified function, at specified times. These times are looped.
- Melody
- A series of timed
NoteEvents. This can be used to build actr::MelSeqor a [ctr::mel::Loop]. - Metronome
- A control structure that can be used to execute an event every certain time duration.
- Note
- A note in a piano roll, which has a start time, some length, and some associated data. The note can potentially be trailing.
- Note
Reader - A “note reader” function that reads through different note events in order, and modifies a
gen::Polyphonystruct accordingly. - Seq
- Changes a signal according to a specified function, at specified times.
- Timer
- A control structure that can be used to execute an event once after a certain time duration.
Enums§
- Note
Event - A note event in a piano roll.