pub struct MatrixConvolver { /* private fields */ }Implementations§
Source§impl MatrixConvolver
impl MatrixConvolver
pub fn new( inputs: usize, outputs: usize, block_size: usize, routes: &[FirRoute], ) -> Result<Self, DspError>
Sourcepub fn process(
&mut self,
inputs: &[&[f64]],
outputs: &mut [&mut [f64]],
) -> Result<(), DspError>
pub fn process( &mut self, inputs: &[&[f64]], outputs: &mut [&mut [f64]], ) -> Result<(), DspError>
Process exactly one block. Output channels are overwritten, including outputs with no routes. Invalid dimensions leave streaming state intact.
Sourcepub fn process_buffers<I: AsRef<[f64]>, O: AsMut<[f64]>>(
&mut self,
inputs: &[I],
outputs: &mut [O],
) -> Result<(), DspError>
pub fn process_buffers<I: AsRef<[f64]>, O: AsMut<[f64]>>( &mut self, inputs: &[I], outputs: &mut [O], ) -> Result<(), DspError>
Buffer-owning counterpart to Self::process, so an adapter can pass
retained Vec<f64> channel buffers without allocating a view vector.
pub fn reset(&mut self)
pub fn block_size(&self) -> usize
pub fn input_count(&self) -> usize
pub fn output_count(&self) -> usize
Sourcepub fn tail_samples(&self) -> usize
pub fn tail_samples(&self) -> usize
Samples to flush after the final input sample.
Sourcepub fn transforms_per_block(&self) -> (usize, usize)
pub fn transforms_per_block(&self) -> (usize, usize)
Forward and inverse transform counts, independent of the route count.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for MatrixConvolver
impl !UnwindSafe for MatrixConvolver
impl Freeze for MatrixConvolver
impl Send for MatrixConvolver
impl Sync for MatrixConvolver
impl Unpin for MatrixConvolver
impl UnsafeUnpin for MatrixConvolver
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