Fixed-capacity graph command/event queues for realtime graph runtimes. More...
#include <graph_runtime_queue.hpp>
Public Member Functions | |
| bool | enqueue_command (const GraphCommand &command) noexcept |
| std::uint32_t | drain_commands_for_block (std::span< GraphTimedCommand > out, std::uint32_t block_frames) noexcept |
| bool | push_event_from_realtime (const GraphEvent &event) noexcept |
| bool | pop_event (GraphEvent &event) noexcept |
| bool | push_midi_output_from_realtime (const GraphMidiOutputEvent &event) noexcept |
| bool | pop_midi_output (GraphMidiOutputEvent &event) noexcept |
| void | reset_offline () noexcept |
| Offline-only reset. | |
| GraphRuntimeQueueStats | stats () const noexcept |
Static Public Member Functions | |
| static constexpr std::size_t | command_capacity () noexcept |
| static constexpr std::size_t | event_capacity () noexcept |
| static constexpr std::size_t | midi_output_capacity () noexcept |
Fixed-capacity graph command/event queues for realtime graph runtimes.
Direction is explicit:
The class owns no heap storage after construction beyond the fixed FIFO storage owned by runtime::SpscQueue. It does not apply commands to a graph; graph runtimes consume GraphTimedCommand values and decide the mutation policy for the active snapshot.
|
inlinestaticconstexprnoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinestaticconstexprnoexcept |
|
inlinestaticconstexprnoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Offline-only reset.
Call only when both the control producer and the realtime consumer/producer are stopped; this method drains both sides of every SPSC queue and resets diagnostic counters.
|
inlinenoexcept |