pub struct GenMut<G, F> { /* private fields */ }Expand description
A signal that generates frames using the given function which may mutate some state.
Trait Implementations§
Source§impl<G, F> Signal for GenMut<G, F>
impl<G, F> Signal for GenMut<G, F>
Source§fn is_exhausted(&self) -> bool
fn is_exhausted(&self) -> bool
Whether or not the signal is exhausted of meaningful frames. Read more
Source§fn map<M, F>(self, map: M) -> Map<Self, M, F>
fn map<M, F>(self, map: M) -> Map<Self, M, F>
A signal that maps one set of frames to another. Read more
Source§fn zip_map<O, M, F>(self, other: O, map: M) -> ZipMap<Self, O, M, F>
fn zip_map<O, M, F>(self, other: O, map: M) -> ZipMap<Self, O, M, F>
A signal that maps one set of frames to another. Read more
Source§fn add_amp<S>(self, other: S) -> AddAmp<Self, S>
fn add_amp<S>(self, other: S) -> AddAmp<Self, S>
Provides an iterator that yields the sum of the frames yielded by both
other and self
in lock-step. Read moreSource§fn mul_amp<S>(self, other: S) -> MulAmp<Self, S>
fn mul_amp<S>(self, other: S) -> MulAmp<Self, S>
Provides an iterator that yields the product of the frames yielded by both
other and
self in lock-step. Read moreSource§fn offset_amp(
self,
offset: <<Self::Frame as Frame>::Sample as Sample>::Signed,
) -> OffsetAmp<Self>where
Self: Sized,
fn offset_amp(
self,
offset: <<Self::Frame as Frame>::Sample as Sample>::Signed,
) -> OffsetAmp<Self>where
Self: Sized,
Provides an iterator that offsets the amplitude of every channel in each frame of the
signal by some sample value and yields the resulting frames. Read more
Source§fn scale_amp(
self,
amp: <<Self::Frame as Frame>::Sample as Sample>::Float,
) -> ScaleAmp<Self>where
Self: Sized,
fn scale_amp(
self,
amp: <<Self::Frame as Frame>::Sample as Sample>::Float,
) -> ScaleAmp<Self>where
Self: Sized,
Produces an
Iterator that scales the amplitude of the sample of each channel in every
Frame yielded by self by the given amplitude. Read moreSource§fn offset_amp_per_channel<F>(self, amp_frame: F) -> OffsetAmpPerChannel<Self, F>
fn offset_amp_per_channel<F>(self, amp_frame: F) -> OffsetAmpPerChannel<Self, F>
Produces a new
Signal that offsets the amplitude of every Frame in self by the
respective amplitudes in each channel of the given amp_frame. Read moreSource§fn scale_amp_per_channel<F>(self, amp_frame: F) -> ScaleAmpPerChannel<Self, F>
fn scale_amp_per_channel<F>(self, amp_frame: F) -> ScaleAmpPerChannel<Self, F>
Produces a new
Signal that scales the amplitude of every Frame in self by the
respective amplitudes in each channel of the given amp_frame. Read moreSource§fn from_hz_to_hz<I>(
self,
interpolator: I,
source_hz: f64,
target_hz: f64,
) -> Converter<Self, I>where
Self: Sized,
I: Interpolator,
fn from_hz_to_hz<I>(
self,
interpolator: I,
source_hz: f64,
target_hz: f64,
) -> Converter<Self, I>where
Self: Sized,
I: Interpolator,
Converts the rate at which frames of the
Signal are yielded using interpolation. Read moreSource§fn scale_hz<I>(self, interpolator: I, multi: f64) -> Converter<Self, I>where
Self: Sized,
I: Interpolator,
fn scale_hz<I>(self, interpolator: I, multi: f64) -> Converter<Self, I>where
Self: Sized,
I: Interpolator,
Multiplies the rate at which frames of the
Signal are yielded by the given value. Read moreSource§fn delay(self, n_frames: usize) -> Delay<Self>where
Self: Sized,
fn delay(self, n_frames: usize) -> Delay<Self>where
Self: Sized,
Delays the
Signal by the given number of frames. Read moreSource§fn into_interleaved_samples(self) -> IntoInterleavedSamples<Self>where
Self: Sized,
fn into_interleaved_samples(self) -> IntoInterleavedSamples<Self>where
Self: Sized,
Source§fn clip_amp(
self,
thresh: <<Self::Frame as Frame>::Sample as Sample>::Signed,
) -> ClipAmp<Self>where
Self: Sized,
fn clip_amp(
self,
thresh: <<Self::Frame as Frame>::Sample as Sample>::Signed,
) -> ClipAmp<Self>where
Self: Sized,
Clips the amplitude of each channel in each
Frame yielded by self to the given
threshold amplitude. Read moreSource§fn inspect<F>(self, inspect: F) -> Inspect<Self, F>
fn inspect<F>(self, inspect: F) -> Inspect<Self, F>
Create a new
Signal that calls the enclosing function on each iteration. Read moreSource§fn fork<S>(self, ring_buffer: Bounded<S>) -> Fork<Self, S>
fn fork<S>(self, ring_buffer: Bounded<S>) -> Fork<Self, S>
Forks
Self into two signals that produce the same frames. Read moreSource§fn take(self, n: usize) -> Take<Self> ⓘwhere
Self: Sized,
fn take(self, n: usize) -> Take<Self> ⓘwhere
Self: Sized,
Converts the
Signal into an Iterator that will yield the given number for Frames
before returning None. Read moreSource§fn until_exhausted(self) -> UntilExhausted<Self> ⓘwhere
Self: Sized,
fn until_exhausted(self) -> UntilExhausted<Self> ⓘwhere
Self: Sized,
Converts the
Signal into an Iterator yielding frames until the signal.is_exhausted()
returns true. Read moreAuto Trait Implementations§
impl<G, F> Freeze for GenMut<G, F>where
G: Freeze,
impl<G, F> RefUnwindSafe for GenMut<G, F>where
G: RefUnwindSafe,
F: RefUnwindSafe,
impl<G, F> Send for GenMut<G, F>
impl<G, F> Sync for GenMut<G, F>
impl<G, F> Unpin for GenMut<G, F>
impl<G, F> UnwindSafe for GenMut<G, F>where
G: UnwindSafe,
F: 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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> SignalEnvelope for Twhere
T: Signal,
impl<T> SignalEnvelope for Twhere
T: Signal,
Source§fn detect_envelope<D>(
self,
detector: Detector<Self::Frame, D>,
) -> DetectEnvelope<Self, D>
fn detect_envelope<D>( self, detector: Detector<Self::Frame, D>, ) -> DetectEnvelope<Self, D>
An adaptor that detects and yields the envelope of the signal. Read more