pub struct LiveGraphRunner<P> { /* private fields */ }Expand description
Preallocated live graph runner for host audio callbacks.
Implementations§
Source§impl<P: Processor> LiveGraphRunner<P>
impl<P: Processor> LiveGraphRunner<P>
Sourcepub fn new_realtime(
processor: P,
config: LiveGraphConfig,
profile: &TransportProfile,
) -> Result<Self>
pub fn new_realtime( processor: P, config: LiveGraphConfig, profile: &TransportProfile, ) -> Result<Self>
Creates a runner after validating the realtime local audio profile.
Sourcepub fn new(processor: P, config: LiveGraphConfig) -> Result<Self>
pub fn new(processor: P, config: LiveGraphConfig) -> Result<Self>
Creates a runner, preparing the processor and preallocating all buffers and queues for allocation-free steady-state processing.
Sourcepub fn enqueue_control_event(
&mut self,
event: LiveControlEvent,
) -> LiveQueuePush
pub fn enqueue_control_event( &mut self, event: LiveControlEvent, ) -> LiveQueuePush
Enqueues a control event for delivery on the next process call.
Sourcepub fn enqueue_midi_short(
&mut self,
offset: u32,
bytes: &[u8],
) -> Result<LiveQueuePush>
pub fn enqueue_midi_short( &mut self, offset: u32, bytes: &[u8], ) -> Result<LiveQueuePush>
Enqueues a short MIDI control event built from bytes.
Sourcepub fn enqueue_param_set(
&mut self,
offset: u32,
param: u32,
value: f64,
) -> Result<LiveQueuePush>
pub fn enqueue_param_set( &mut self, offset: u32, param: u32, value: f64, ) -> Result<LiveQueuePush>
Enqueues a parameter-set control event.
Sourcepub fn process_interleaved_f32(
&mut self,
input: Option<&[f32]>,
output: &mut [f32],
frames: usize,
transport: Transport,
) -> Result<LiveProcessReport>
pub fn process_interleaved_f32( &mut self, input: Option<&[f32]>, output: &mut [f32], frames: usize, transport: Transport, ) -> Result<LiveProcessReport>
Processes one interleaved audio block: drains queued control events, runs the processor, and writes the interleaved output.
Sourcepub fn drain_audio_events(&mut self) -> Vec<LiveAudioEvent>
pub fn drain_audio_events(&mut self) -> Vec<LiveAudioEvent>
Drains audio-thread events back to the control thread, appending a dropped-events marker if the queue overflowed.
Sourcepub fn drain_audio_diagnostics(&mut self) -> Vec<StreamPacket>
pub fn drain_audio_diagnostics(&mut self) -> Vec<StreamPacket>
Drains audio-thread events and renders each as a diagnostic packet.
Sourcepub fn diagnostic_inspector(&self) -> Result<StreamInspectorSnapshot>
pub fn diagnostic_inspector(&self) -> Result<StreamInspectorSnapshot>
Returns a stream inspector snapshot for the audio-to-control queue.
Sourcepub fn steady_state_snapshot(&self) -> LiveSteadyStateSnapshot
pub fn steady_state_snapshot(&self) -> LiveSteadyStateSnapshot
Captures buffer and queue capacities for steady-state growth checks.
Sourcepub fn buffered_preview_chunk(
&self,
output: &[f32],
frames: usize,
sequence: u64,
) -> Result<StreamEnvelope>
pub fn buffered_preview_chunk( &self, output: &[f32], frames: usize, sequence: u64, ) -> Result<StreamEnvelope>
Wraps an interleaved output block as a LAN buffered preview envelope.