pub struct PluginRuntimeHandle {
pub ndarray_params: NDArrayDriverParams,
pub plugin_params: PluginBaseParams,
/* private fields */
}Expand description
Handle to a running plugin runtime. Provides access to sender and port handle.
Fields§
§ndarray_params: NDArrayDriverParams§plugin_params: PluginBaseParamsImplementations§
Source§impl PluginRuntimeHandle
impl PluginRuntimeHandle
pub fn port_runtime(&self) -> &PortRuntimeHandle
pub fn array_sender(&self) -> &NDArraySender
pub fn array_output(&self) -> &Arc<Mutex<NDArrayOutput>> ⓘ
Sourcepub fn wait_params_applied(&self, timeout: Duration) -> bool
pub fn wait_params_applied(&self, timeout: Duration) -> bool
Block until the plugin’s data thread has applied every control-plane param change submitted before this call.
write_*_blocking on the port handle returns once the port actor has
recorded the write and queued it for the data plane; the data thread
applies it (the EnableCallbacks flip, NDArrayPort/NDArrayAddr rewiring,
processor param updates) asynchronously. This is the fence between the
two planes: it enqueues a barrier behind every already-queued change
and waits for the data thread to acknowledge it — the param channel is
FIFO, so the ack implies every earlier change is fully applied.
The ack additionally waits for the array queue to drain, so it also implies every array published before this call has been fully handled (processed or throttled). Under continuous array traffic the ack is therefore delayed until the queue momentarily empties.
Returns false if the data thread has exited or timeout elapsed.
pub fn port_name(&self) -> &str
Trait Implementations§
Source§impl Clone for PluginRuntimeHandle
impl Clone for PluginRuntimeHandle
Source§fn clone(&self) -> PluginRuntimeHandle
fn clone(&self) -> PluginRuntimeHandle
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more