Trait awedio::sounds::wrappers::Wrapper

source ·
pub trait Wrapper {
    type Inner: Sound;

    // Required methods
    fn inner(&self) -> &Self::Inner;
    fn inner_mut(&mut self) -> &mut Self::Inner;
    fn into_inner(self) -> Self::Inner;
}
Expand description

Super trait that implements all traits that a wrapper Sound should transparently pass through if implemented by the inner sound. If you have a wrapper that should handle any of these traits specially besides just passing through, then you should not implement this trait but implement all of the traits individually.

Required Associated Types§

source

type Inner: Sound

The wrapped Sound type

Required Methods§

source

fn inner(&self) -> &Self::Inner

Get a reference to the wrapped inner Sound.

source

fn inner_mut(&mut self) -> &mut Self::Inner

Get a mutable reference to the wrapped inner Sound.

source

fn into_inner(self) -> Self::Inner

Unwrap and return the previously wrapped Sound.

Implementors§

source§

impl<S> Wrapper for AsyncCompletionNotifier<S>
where S: Sound,

§

type Inner = S

source§

impl<S> Wrapper for CompletionNotifier<S>
where S: Sound,

§

type Inner = S

source§

impl<S> Wrapper for Controllable<S>
where S: Sound,

§

type Inner = S

source§

impl<S: Sound> Wrapper for ChannelCountConverter<S>

§

type Inner = S

source§

impl<S: Sound> Wrapper for FinishAfter<S>

§

type Inner = S

source§

impl<S: Sound> Wrapper for SampleRateConverter<S>

§

type Inner = S