The vocabulary-independent half of the seam: where playback is, and asking to hear something. More...
#include <sequencer_ui_host.hpp>
Public Member Functions | |
| virtual | ~SequencerUiHost ()=default |
| virtual UiPlayhead | playhead () const noexcept=0 |
| The latest playhead reading, by value. | |
| virtual AuditionResult | begin_audition (const AuditionRequest &request) noexcept=0 |
| Ask to hear something. | |
| virtual void | end_audition (AuditionHandle handle) noexcept=0 |
| End a sustained audition. | |
The vocabulary-independent half of the seam: where playback is, and asking to hear something.
Every method is noexcept: a host is called from inside a gesture and from inside a paint, and the modules on either side of it (timeline, timebase) compile without exceptions. A host that needs to allocate or fail does it off this path and reports the outcome in the returned status.
|
virtualdefault |
|
pure virtualnoexcept |
Ask to hear something.
A host that does not audition returns Unsupported and does nothing else, which is a complete implementation.
Implemented in pulp::timeline_editor::ScriptedUiHost< Intent >.
|
pure virtualnoexcept |
End a sustained audition.
Ending an already-ended or never-started handle is a no-op, so a view may end unconditionally on mouse-up.
Implemented in pulp::timeline_editor::ScriptedUiHost< Intent >.
|
pure virtualnoexcept |
The latest playhead reading, by value.
Cheap enough to call once per frame; implementations publish through a lock-free primitive rather than blocking the caller.
Implemented in pulp::timeline_editor::ScriptedUiHost< Intent >.