Struct TrackHandle
pub struct TrackHandle { /* private fields */ }
dep_kira
only.Expand description
Controls a mixer track.
When a TrackHandle
is dropped, the corresponding mixer
track will be removed.
Implementations§
§impl TrackHandle
impl TrackHandle
pub fn state(&self) -> TrackPlaybackState
pub fn state(&self) -> TrackPlaybackState
Returns the current playback state of the track.
pub fn play<D>(
&mut self,
sound_data: D,
) -> Result<<D as SoundData>::Handle, PlaySoundError<<D as SoundData>::Error>> ⓘwhere
D: SoundData,
pub fn play<D>(
&mut self,
sound_data: D,
) -> Result<<D as SoundData>::Handle, PlaySoundError<<D as SoundData>::Error>> ⓘwhere
D: SoundData,
Plays a sound.
pub fn add_sub_track(
&mut self,
builder: TrackBuilder,
) -> Result<TrackHandle, ResourceLimitReached> ⓘ
pub fn add_sub_track( &mut self, builder: TrackBuilder, ) -> Result<TrackHandle, ResourceLimitReached> ⓘ
Adds a child track to this track.
pub fn add_spatial_sub_track(
&mut self,
listener: impl Into<ListenerId>,
position: impl Into<Value<Vector3<f32>>>,
builder: SpatialTrackBuilder,
) -> Result<SpatialTrackHandle, ResourceLimitReached> ⓘ
pub fn add_spatial_sub_track( &mut self, listener: impl Into<ListenerId>, position: impl Into<Value<Vector3<f32>>>, builder: SpatialTrackBuilder, ) -> Result<SpatialTrackHandle, ResourceLimitReached> ⓘ
Adds a spatial child track to this track.
pub fn set_volume(&mut self, volume: impl Into<Value<Decibels>>, tween: Tween)
pub fn set_volume(&mut self, volume: impl Into<Value<Decibels>>, tween: Tween)
Sets the (post-effects) volume of the mixer track.
pub fn set_send(
&mut self,
to: impl Into<SendTrackId>,
volume: impl Into<Value<Decibels>>,
tween: Tween,
) -> Result<(), NonexistentRoute> ⓘ
pub fn set_send( &mut self, to: impl Into<SendTrackId>, volume: impl Into<Value<Decibels>>, tween: Tween, ) -> Result<(), NonexistentRoute> ⓘ
Sets the volume of this track’s route to a send track.
This can only be used to change the volume of existing routes, not to add new routes.
pub fn pause(&mut self, tween: Tween)
pub fn pause(&mut self, tween: Tween)
Fades out the track to silence with the given tween and then pauses playback, pausing all sounds and emitters playing on this track.
pub fn resume(&mut self, tween: Tween)
pub fn resume(&mut self, tween: Tween)
Resumes playback and fades in the sound from silence with the given tween, resuming all sounds and emitters playing on this track.
pub fn resume_at(&mut self, start_time: StartTime, tween: Tween)
pub fn resume_at(&mut self, start_time: StartTime, tween: Tween)
Resumes playback at the given start time and fades in the sound from silence with the given tween.
pub fn sound_capacity(&self) -> usize ⓘ
pub fn sound_capacity(&self) -> usize ⓘ
Returns the maximum number of sounds that can play simultaneously on this track.
pub fn num_sounds(&self) -> usize ⓘ
pub fn num_sounds(&self) -> usize ⓘ
Returns the number of sounds currently playing on this track.
pub fn sub_track_capacity(&self) -> usize ⓘ
pub fn sub_track_capacity(&self) -> usize ⓘ
Returns the maximum number of child tracks this track can have.
pub fn num_sub_tracks(&self) -> usize ⓘ
pub fn num_sub_tracks(&self) -> usize ⓘ
Returns the number of child tracks this track has.
Trait Implementations§
§impl Debug for TrackHandle
impl Debug for TrackHandle
Auto Trait Implementations§
impl !Freeze for TrackHandle
impl !RefUnwindSafe for TrackHandle
impl Send for TrackHandle
impl Sync for TrackHandle
impl Unpin for TrackHandle
impl !UnwindSafe for TrackHandle
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
Source§impl<T> ByteSized for T
impl<T> ByteSized for T
Source§const BYTE_ALIGN: usize = _
const BYTE_ALIGN: usize = _
Source§fn byte_align(&self) -> usize ⓘ
fn byte_align(&self) -> usize ⓘ
Source§fn ptr_size_ratio(&self) -> [usize; 2]
fn ptr_size_ratio(&self) -> [usize; 2]
Source§impl<T, R> Chain<R> for Twhere
T: ?Sized,
impl<T, R> Chain<R> for Twhere
T: ?Sized,
Source§impl<T> ExtAny for T
impl<T> ExtAny for T
Source§fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
Source§impl<T> ExtMem for Twhere
T: ?Sized,
impl<T> ExtMem for Twhere
T: ?Sized,
Source§const NEEDS_DROP: bool = _
const NEEDS_DROP: bool = _
Source§fn mem_align_of_val(&self) -> usize ⓘ
fn mem_align_of_val(&self) -> usize ⓘ
Source§fn mem_size_of_val(&self) -> usize ⓘ
fn mem_size_of_val(&self) -> usize ⓘ
Source§fn mem_needs_drop(&self) -> bool
fn mem_needs_drop(&self) -> bool
true
if dropping values of this type matters. Read moreSource§fn mem_forget(self)where
Self: Sized,
fn mem_forget(self)where
Self: Sized,
self
without running its destructor. Read moreSource§fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
Source§unsafe fn mem_zeroed<T>() -> T
unsafe fn mem_zeroed<T>() -> T
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§fn mem_as_bytes(&self) -> &[u8] ⓘ
fn mem_as_bytes(&self) -> &[u8] ⓘ
unsafe_slice
only.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Hook for T
impl<T> Hook for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError> ⓘ
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError> ⓘ
§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out
indicating that a T
is niched.