Skip to main content

SoundBank

Struct SoundBank 

Source
pub struct SoundBank { /* private fields */ }
Expand description

A set of cues loaded once and kept alive for as long as the composable that remembered it stays in the composition.

Indexing is positional, so an app’s cue enum casts straight to an index; SoundBank::find covers the cases where a name is more convenient. The clips are released when the last clone drops.

Implementations§

Source§

impl SoundBank

Source

pub fn load(player: AudioPlayerRef, specs: &[SoundSpec<'_>]) -> SoundBank

Loads every spec through player, collecting the ones that fail rather than aborting the whole bank.

Source

pub fn len(&self) -> usize

How many cues the bank holds, failures included.

Source

pub fn is_empty(&self) -> bool

Whether the bank holds no cues.

Source

pub fn entries(&self) -> &[SoundBankEntry]

The cues, in spec order.

Source

pub fn failures(&self) -> &[SoundBankFailure]

The cues that failed to load.

Source

pub fn player(&self) -> AudioPlayerRef

The player the bank loaded through.

Source

pub fn id(&self, index: usize) -> SoundId

The handle at index, or SoundId::NONE when out of range.

Source

pub fn find(&self, name: &str) -> Option<SoundId>

The handle for name, if the bank holds it.

Source

pub fn play(&self, index: usize)

Plays a cue at its own level.

Source

pub fn play_with(&self, index: usize, params: PlaybackParams)

Plays a cue, multiplying params.volume by the cue’s own level. The bus comes from the spec, so a cue cannot escape its bus by accident.

Source

pub fn play_named(&self, name: &str, params: PlaybackParams)

Plays the cue called name, if the bank holds it.

Source

pub fn play_loop(&self, index: usize, params: PlaybackParams) -> VoiceId

Starts a looping voice for a cue.

Source

pub fn stop(&self, index: usize)

Stops every voice of a cue.

Trait Implementations§

Source§

impl Clone for SoundBank

Source§

fn clone(&self) -> SoundBank

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for SoundBank

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Index<usize> for SoundBank

Source§

type Output = SoundId

The returned type after indexing.
Source§

fn index(&self, index: usize) -> &SoundId

Performs the indexing (container[index]) operation. Read more

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.