Per-voice traversal state for an immutable prepared excitation profile. More...
#include <commuted_string_excitation.hpp>
Public Member Functions | |
| CommutedStringExcitationCursorT () noexcept=default | |
| CommutedStringExcitationCursorT (std::span< const SampleType > samples) noexcept | |
| void | reset () noexcept |
| Leaves the cursor silent at the beginning of the profile. | |
| void | trigger () noexcept |
| Starts the profile from its first sample. | |
| void | retrigger () noexcept |
| Restarts the profile even when the current traversal has not finished. | |
| SampleType | next () noexcept |
| void | render (std::span< SampleType > output) noexcept |
| bool | active () const noexcept |
| std::size_t | position () const noexcept |
| std::size_t | remaining () const noexcept |
Per-voice traversal state for an immutable prepared excitation profile.
The referenced samples must outlive the cursor. Triggering, resetting, reading one sample, and rendering a span are constant-storage operations; they allocate no memory, take no locks, perform no I/O, and never throw.
|
defaultnoexcept |
|
inlineexplicitnoexcept |
|
inlinenodiscardnoexcept |
|
inlinenodiscardnoexcept |
|
inlinenodiscardnoexcept |
|
inlinenodiscardnoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Leaves the cursor silent at the beginning of the profile.
|
inlinenoexcept |
Restarts the profile even when the current traversal has not finished.
|
inlinenoexcept |
Starts the profile from its first sample.