pub trait ChannelControl {
Show 34 methods
// Required methods
fn add_dsp(&mut self, index: i32, dsp: &mut Dsp) -> Result<(), Error>;
fn add_fade_point(
&mut self,
dspclock: u64,
volume: f32,
) -> Result<(), Error>;
fn get_3d_attributes(&self) -> Result<([f32; 3], [f32; 3]), Error>;
fn get_3d_cone_orientation(&self) -> Result<[f32; 3], Error>;
fn get_3d_cone_settings(&self) -> Result<(f32, f32, f32), Error>;
fn get_3d_custom_rolloff(&self) -> Result<Vec<[f32; 3]>, Error>;
fn get_3d_distance_filter(&self) -> Result<(bool, f32, f32), Error>;
fn get_3d_doppler_level(&self) -> Result<f32, Error>;
fn get_3d_min_max_distance(&self) -> Result<(f32, f32), Error>;
fn get_3d_occlusion(&self) -> Result<(f32, f32), Error>;
fn get_3d_spread(&self) -> Result<f32, Error>;
fn get_audibility(&self) -> Result<f32, Error>;
fn get_delay(&self) -> Result<Delay, Error>;
fn get_dsp(&self, index: i32) -> Result<DspRef, Error>;
fn get_dsp_clock(&self) -> Result<u64, Error>;
fn get_dsp_clock_parent(&self) -> Result<u64, Error>;
fn get_dsp_index(&self, dsp: &Dsp) -> Result<i32, Error>;
fn get_low_pass_gain(&self) -> Result<f32, Error>;
fn get_mode(&self) -> Result<Mode, Error>;
fn get_mute(&self) -> Result<bool, Error>;
fn get_num_dsps(&self) -> Result<u32, Error>;
fn get_paused(&self) -> Result<bool, Error>;
fn get_reverb_properties(&self, instance: i32) -> Result<f32, Error>;
fn get_volume(&self) -> Result<f32, Error>;
fn is_playing(&self) -> Result<bool, Error>;
fn remove_dsp(&mut self, dsp: &mut Dsp) -> Result<(), Error>;
fn set_3d_attributes(
&mut self,
pos: [f32; 3],
vel: [f32; 3],
) -> Result<(), Error>;
fn set_delay(
&mut self,
dspclock_start: u64,
dspclock_end: u64,
stopchannels: bool,
) -> Result<(), Error>;
fn set_fade_point_ramp(
&mut self,
dspclock: u64,
volume: f32,
) -> Result<(), Error>;
fn set_mute(&mut self, mute: bool) -> Result<(), Error>;
fn set_paused(&mut self, paused: bool) -> Result<(), Error>;
fn set_reverb_properties(
&mut self,
instance: i32,
wet: f32,
) -> Result<(), Error>;
fn set_volume(&mut self, volume: f32) -> Result<(), Error>;
fn stop(&mut self) -> Result<(), Error>;
}
Required Methods§
fn add_dsp(&mut self, index: i32, dsp: &mut Dsp) -> Result<(), Error>
fn add_fade_point(&mut self, dspclock: u64, volume: f32) -> Result<(), Error>
fn get_3d_attributes(&self) -> Result<([f32; 3], [f32; 3]), Error>
fn get_3d_cone_orientation(&self) -> Result<[f32; 3], Error>
fn get_3d_cone_settings(&self) -> Result<(f32, f32, f32), Error>
fn get_3d_custom_rolloff(&self) -> Result<Vec<[f32; 3]>, Error>
fn get_3d_distance_filter(&self) -> Result<(bool, f32, f32), Error>
fn get_3d_doppler_level(&self) -> Result<f32, Error>
fn get_3d_min_max_distance(&self) -> Result<(f32, f32), Error>
fn get_3d_occlusion(&self) -> Result<(f32, f32), Error>
fn get_3d_spread(&self) -> Result<f32, Error>
fn get_audibility(&self) -> Result<f32, Error>
fn get_delay(&self) -> Result<Delay, Error>
fn get_dsp(&self, index: i32) -> Result<DspRef, Error>
fn get_dsp_clock(&self) -> Result<u64, Error>
fn get_dsp_clock_parent(&self) -> Result<u64, Error>
fn get_dsp_index(&self, dsp: &Dsp) -> Result<i32, Error>
fn get_low_pass_gain(&self) -> Result<f32, Error>
fn get_mode(&self) -> Result<Mode, Error>
fn get_mute(&self) -> Result<bool, Error>
fn get_num_dsps(&self) -> Result<u32, Error>
fn get_paused(&self) -> Result<bool, Error>
fn get_reverb_properties(&self, instance: i32) -> Result<f32, Error>
fn get_volume(&self) -> Result<f32, Error>
fn is_playing(&self) -> Result<bool, Error>
fn remove_dsp(&mut self, dsp: &mut Dsp) -> Result<(), Error>
fn set_3d_attributes( &mut self, pos: [f32; 3], vel: [f32; 3], ) -> Result<(), Error>
fn set_delay( &mut self, dspclock_start: u64, dspclock_end: u64, stopchannels: bool, ) -> Result<(), Error>
fn set_fade_point_ramp( &mut self, dspclock: u64, volume: f32, ) -> Result<(), Error>
fn set_mute(&mut self, mute: bool) -> Result<(), Error>
fn set_paused(&mut self, paused: bool) -> Result<(), Error>
Sourcefn set_reverb_properties(
&mut self,
instance: i32,
wet: f32,
) -> Result<(), Error>
fn set_reverb_properties( &mut self, instance: i32, wet: f32, ) -> Result<(), Error>
Set the wet level of a reverb instance.
instance
– Index of the particular reverb instance to target, from 0 to
fmod::dsp::REVERB_MAXINSTANCES
.
wet
– Send level for the signal to the reverb, from 0 (none) to 1.0
(full), default = 1.0 for Channel
s, 0.0 for ChannelGroups
.
A Channel
is automatically connected to all existing reverb instances due
to the default wet level of 1.0. A ChannelGroup
however will not send to
any reverb by default requiring an explicit call to this function.
A ChannelGroup
reverb is optimal for the case where you want to send 1
mixed signal to the reverb, rather than a lot of individual channel reverb
sends. It is advisable to do this to reduce CPU if you have many Channel
s
inside a ChannelGroup
.
Keep in mind when setting a wet level for a ChannelGroup
, any Channel
s
under that ChannelGroup
will still have their existing sends to the
reverb. To avoid this doubling up you should explicitly set the Channel
wet levels to 0.0.