What a view asks to hear, in document terms only. More...
#include <sequencer_ui_host.hpp>
Public Member Functions | |
| constexpr bool | operator== (const AuditionRequest &) const =default |
Public Attributes | |
| timeline::ItemId | track {} |
| Track whose device chain should sound this. | |
| timeline::ItemId | item {} |
| Content item the request came from, when there is one. | |
| std::uint8_t | pitch = 60 |
| Pitch, velocity, and channel exactly as timeline::NoteEvent spells them, so a request built from a note in the document needs no conversion and no second velocity scale. | |
| std::uint16_t | velocity = 0xffff |
| std::uint8_t | channel = 0 |
| timebase::TickDuration | duration {} |
| Zero requests a sustained audition, ended by end_audition(). | |
What a view asks to hear, in document terms only.
This is the piano-roll click, the keyboard press, the drag onto a new pitch. It says which note, how hard, and on whose behalf — never which device, voice, or graph node sounds it. Resolving track to something that makes noise is the host's whole job, and the reason the view does not need one.
|
constexprdefault |
| std::uint8_t pulp::timeline_editor::AuditionRequest::channel = 0 |
| timebase::TickDuration pulp::timeline_editor::AuditionRequest::duration {} |
Zero requests a sustained audition, ended by end_audition().
Nonzero requests a one-shot of that musical length, which the host ends itself.
| timeline::ItemId pulp::timeline_editor::AuditionRequest::item {} |
Content item the request came from, when there is one.
Carried so a host can apply the item's own transposition or channel mapping; a null id is a request that belongs to no item, such as a keyboard press.
| std::uint8_t pulp::timeline_editor::AuditionRequest::pitch = 60 |
Pitch, velocity, and channel exactly as timeline::NoteEvent spells them, so a request built from a note in the document needs no conversion and no second velocity scale.
Velocity is full-range: 0xffff is full scale.
| timeline::ItemId pulp::timeline_editor::AuditionRequest::track {} |
Track whose device chain should sound this.
A null id asks the host to use its own default routing, which is what a host with a single instrument and no track model wants.
| std::uint16_t pulp::timeline_editor::AuditionRequest::velocity = 0xffff |