pub struct RingQueue<T: Copy, const CAP: usize> { /* private fields */ }Expand description
Кольцевая очередь с произвольным доступом
Позволяет читать данные не только из головы, но и с произвольной задержкой. Полезно для эффектов задержки и реверберации.
Implementations§
Source§impl<T: Copy + Default, const CAP: usize> RingQueue<T, CAP>
impl<T: Copy + Default, const CAP: usize> RingQueue<T, CAP>
Sourcepub fn read_delayed(&self, delay: usize) -> T
pub fn read_delayed(&self, delay: usize) -> T
Sourcepub fn read_interpolated(&self, delay_frac: f64) -> T
pub fn read_interpolated(&self, delay_frac: f64) -> T
Прочитать элемент с плавающей задержкой (линейная интерполяция)
Sourcepub fn push_slice(&self, slice: &[T])
pub fn push_slice(&self, slice: &[T])
Записать массив данных
Sourcepub fn read_slice_delayed(&self, delay: usize, output: &mut [T])
pub fn read_slice_delayed(&self, delay: usize, output: &mut [T])
Прочитать срез данных с задержкой
Sourcepub fn stats(&self) -> &QueueStats
pub fn stats(&self) -> &QueueStats
Получить статистику
Trait Implementations§
impl<T: Copy + Send, const CAP: usize> Send for RingQueue<T, CAP>
impl<T: Copy + Sync, const CAP: usize> Sync for RingQueue<T, CAP>
Auto Trait Implementations§
impl<T, const CAP: usize> !Freeze for RingQueue<T, CAP>
impl<T, const CAP: usize> !RefUnwindSafe for RingQueue<T, CAP>
impl<T, const CAP: usize> Unpin for RingQueue<T, CAP>where
T: Unpin,
impl<T, const CAP: usize> UnsafeUnpin for RingQueue<T, CAP>where
T: UnsafeUnpin,
impl<T, const CAP: usize> UnwindSafe for RingQueue<T, CAP>where
T: UnwindSafe,
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