pub struct CodecProcessor { /* private fields */ }Implementations§
Trait Implementations§
Source§impl NDPluginProcess for CodecProcessor
impl NDPluginProcess for CodecProcessor
Source§fn compression_aware(&self) -> bool
fn compression_aware(&self) -> bool
C NDPluginCodec passes compressionAware=true to the base constructor
(NDPluginCodec.cpp:865-870), unconditionally regardless of mode, so
compressed arrays reach it for decompression. Without this override the
runtime drop gate (if compressed && !compression_aware) would discard
every compressed input before process_array, making Decompress dead.
Returned unconditionally because the same instance can switch
Compress↔Decompress at runtime, while this flag is read once at
construction.
Source§fn process_array(
&mut self,
array: &NDArray,
_pool: &NDArrayPool,
) -> ProcessResult
fn process_array( &mut self, array: &NDArray, _pool: &NDArrayPool, ) -> ProcessResult
Process one array. Return output arrays and param updates.
Source§fn plugin_type(&self) -> &str
fn plugin_type(&self) -> &str
Plugin type name for PLUGIN_TYPE param.
Source§fn register_params(&mut self, base: &mut PortDriverBase) -> AsynResult<()>
fn register_params(&mut self, base: &mut PortDriverBase) -> AsynResult<()>
Register plugin-specific params on the base. Called once during construction.
Source§fn on_param_change(
&mut self,
reason: usize,
params: &PluginParamSnapshot,
) -> ParamChangeResult
fn on_param_change( &mut self, reason: usize, params: &PluginParamSnapshot, ) -> ParamChangeResult
Called when a param changes. Reason is the param index.
Return param updates to be written back to the port driver.
Source§fn does_array_callbacks(&self) -> bool
fn does_array_callbacks(&self) -> bool
Whether this plugin delivers arrays to downstream plugins, i.e. the
initial
NDArrayCallbacks param value. Defaults to true: most plugins
do array callbacks. Terminal plugins that never deliver downstream
(NDPluginStdArrays, NDPluginAttribute, every NDPluginFile writer)
override this to false so the param reflects the behaviour, matching C
(e.g. NDPluginFile.cpp:948 setIntegerParam(NDArrayCallbacks, 0)).Auto Trait Implementations§
impl Freeze for CodecProcessor
impl RefUnwindSafe for CodecProcessor
impl Send for CodecProcessor
impl Sync for CodecProcessor
impl Unpin for CodecProcessor
impl UnsafeUnpin for CodecProcessor
impl UnwindSafe for CodecProcessor
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more