pub struct ViewMut<'a, T, Layout, const L: usize> { /* private fields */ }Expand description
Mutable typed view of a DSP slice.
Implementations§
Source§impl<'a, T, const L: usize> ViewMut<'a, T, FrameMajor, L>
impl<'a, T, const L: usize> ViewMut<'a, T, FrameMajor, L>
Sourcepub fn from_frames(frames: &'a mut [[T; L]]) -> Self
pub fn from_frames(frames: &'a mut [[T; L]]) -> Self
Borrow a mutable conventional frame-major view.
Sourcepub fn as_frames_mut(&mut self) -> &mut [[T; L]]
pub fn as_frames_mut(&mut self) -> &mut [[T; L]]
Borrow the view as exact mutable frames.
Trait Implementations§
Source§impl<'a, X: Copy, C0, C1, S0, S1> SplitViewInplace<ViewMut<'a, X, LaneMajor, 2>, (S0, S1)> for ByLane<(C0, C1)>where
C0: SplitInplace<X, S0>,
C1: SplitInplace<X, S1>,
impl<'a, X: Copy, C0, C1, S0, S1> SplitViewInplace<ViewMut<'a, X, LaneMajor, 2>, (S0, S1)> for ByLane<(C0, C1)>where
C0: SplitInplace<X, S0>,
C1: SplitInplace<X, S1>,
Source§impl<'a, X: Copy, C, S, const N: usize> SplitViewInplace<ViewMut<'a, X, LaneMajor, N>, [S; N]> for ByLane<[C; N]>where
C: SplitInplace<X, S>,
impl<'a, X: Copy, C, S, const N: usize> SplitViewInplace<ViewMut<'a, X, LaneMajor, N>, [S; N]> for ByLane<[C; N]>where
C: SplitInplace<X, S>,
Source§impl<'a, X: Copy, C, S, const N: usize> SplitViewInplace<ViewMut<'a, X, LaneMajor, N>, [S; N]> for Lanes<C>where
C: SplitInplace<X, S>,
impl<'a, X: Copy, C, S, const N: usize> SplitViewInplace<ViewMut<'a, X, LaneMajor, N>, [S; N]> for Lanes<C>where
C: SplitInplace<X, S>,
Source§impl<'a, 'b, X: Copy, Y, C0, C1, S0, S1> SplitViewProcess<View<'a, X, LaneMajor, 2>, ViewMut<'b, Y, LaneMajor, 2>, (S0, S1)> for ByLane<(C0, C1)>where
C0: SplitProcess<X, Y, S0>,
C1: SplitProcess<X, Y, S1>,
impl<'a, 'b, X: Copy, Y, C0, C1, S0, S1> SplitViewProcess<View<'a, X, LaneMajor, 2>, ViewMut<'b, Y, LaneMajor, 2>, (S0, S1)> for ByLane<(C0, C1)>where
C0: SplitProcess<X, Y, S0>,
C1: SplitProcess<X, Y, S1>,
Source§impl<'a, 'b, X: Copy, Y, C, S, const N: usize> SplitViewProcess<View<'a, X, LaneMajor, N>, ViewMut<'b, Y, LaneMajor, N>, [S; N]> for ByLane<[C; N]>where
C: SplitProcess<X, Y, S>,
impl<'a, 'b, X: Copy, Y, C, S, const N: usize> SplitViewProcess<View<'a, X, LaneMajor, N>, ViewMut<'b, Y, LaneMajor, N>, [S; N]> for ByLane<[C; N]>where
C: SplitProcess<X, Y, S>,
Auto Trait Implementations§
impl<'a, T, Layout, const L: usize> !UnwindSafe for ViewMut<'a, T, Layout, L>
impl<'a, T, Layout, const L: usize> Freeze for ViewMut<'a, T, Layout, L>
impl<'a, T, Layout, const L: usize> RefUnwindSafe for ViewMut<'a, T, Layout, L>where
Layout: RefUnwindSafe,
T: RefUnwindSafe,
impl<'a, T, Layout, const L: usize> Send for ViewMut<'a, T, Layout, L>
impl<'a, T, Layout, const L: usize> Sync for ViewMut<'a, T, Layout, L>
impl<'a, T, Layout, const L: usize> Unpin for ViewMut<'a, T, Layout, L>where
Layout: Unpin,
impl<'a, T, Layout, const L: usize> UnsafeUnpin for ViewMut<'a, T, Layout, L>
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<'a, X, S, T, const L: usize> SplitViewInplace<ViewMut<'a, X, FrameMajor, L>, S> for T
impl<'a, X, S, T, const L: usize> SplitViewInplace<ViewMut<'a, X, FrameMajor, L>, S> for T
Source§fn inplace_view(&self, state: &mut S, xy: ViewMut<'a, X, FrameMajor, L>)
fn inplace_view(&self, state: &mut S, xy: ViewMut<'a, X, FrameMajor, L>)
Process one typed view in place.
Source§impl<'a, 'b, X, Y, S, T, const L: usize> SplitViewProcess<View<'a, X, FrameMajor, L>, ViewMut<'b, Y, FrameMajor, L>, S> for T
impl<'a, 'b, X, Y, S, T, const L: usize> SplitViewProcess<View<'a, X, FrameMajor, L>, ViewMut<'b, Y, FrameMajor, L>, S> for T
Source§fn process_view(
&self,
state: &mut S,
x: View<'a, X, FrameMajor, L>,
y: ViewMut<'b, Y, FrameMajor, L>,
)
fn process_view( &self, state: &mut S, x: View<'a, X, FrameMajor, L>, y: ViewMut<'b, Y, FrameMajor, L>, )
Process one typed input view into one typed output view.