Trait alto::SourceTrait [] [src]

pub unsafe trait SourceTrait<'d: 'c, 'c> {
    fn context(&self) -> &Context<'d>;
    fn as_raw(&self) -> ALuint;
    fn state(&self) -> AltoResult<SourceState>;
    fn play(&mut self) -> AltoResult<()>;
    fn pause(&mut self) -> AltoResult<()>;
    fn stop(&mut self) -> AltoResult<()>;
    fn rewind(&mut self) -> AltoResult<()>;
    fn relative(&self) -> AltoResult<bool>;
    fn set_relative(&mut self, _: bool) -> AltoResult<()>;
    fn gain(&self) -> AltoResult<f32>;
    fn set_gain(&mut self, _: f32) -> AltoResult<()>;
    fn min_gain(&self) -> AltoResult<f32>;
    fn set_min_gain(&mut self, _: f32) -> AltoResult<()>;
    fn max_gain(&self) -> AltoResult<f32>;
    fn set_max_gain(&mut self, _: f32) -> AltoResult<()>;
    fn reference_distance(&self) -> AltoResult<f32>;
    fn set_reference_distance(&mut self, _: f32) -> AltoResult<()>;
    fn rolloff_factor(&self) -> AltoResult<f32>;
    fn set_rolloff_factor(&mut self, _: f32) -> AltoResult<()>;
    fn max_distance(&self) -> AltoResult<f32>;
    fn set_max_distance(&mut self, _: f32) -> AltoResult<()>;
    fn pitch(&self) -> AltoResult<f32>;
    fn set_pitch(&mut self, _: f32) -> AltoResult<()>;
    fn position<V: From<[f32; 3]>>(&self) -> AltoResult<V>;
    fn set_position<V: Into<[f32; 3]>>(&mut self, _: V) -> AltoResult<()>;
    fn velocity<V: From<[f32; 3]>>(&self) -> AltoResult<V>;
    fn set_velocity<V: Into<[f32; 3]>>(&mut self, _: V) -> AltoResult<()>;
    fn direction<V: From<[f32; 3]>>(&self) -> AltoResult<V>;
    fn set_direction<V: Into<[f32; 3]>>(&mut self, _: V) -> AltoResult<()>;
    fn cone_inner_angle(&self) -> AltoResult<f32>;
    fn set_cone_inner_angle(&mut self, _: f32) -> AltoResult<()>;
    fn cone_outer_angle(&self) -> AltoResult<f32>;
    fn set_cone_outer_angle(&mut self, _: f32) -> AltoResult<()>;
    fn cone_outer_gain(&self) -> AltoResult<f32>;
    fn set_cone_outer_gain(&mut self, _: f32) -> AltoResult<()>;
    fn sec_offset(&self) -> AltoResult<f32>;
    fn set_sec_offset(&mut self, _: f32) -> AltoResult<()>;
    fn sample_offset(&self) -> AltoResult<ALint>;
    fn set_sample_offset(&mut self, _: ALint) -> AltoResult<()>;
    fn byte_offset(&self) -> AltoResult<ALint>;
    fn set_byte_offset(&mut self, _: ALint) -> AltoResult<()>;
    fn soft_sec_offset_latency(&self) -> AltoResult<(f64, f64)>;
    fn soft_sample_frac_offset_latency(&self) -> AltoResult<(i32, i32, i64)>;
    fn soft_sec_length(&self) -> AltoResult<f32>;
    fn soft_sample_length(&self) -> AltoResult<ALint>;
    fn soft_byte_length(&self) -> AltoResult<ALint>;
    fn soft_direct_channels(&self) -> AltoResult<bool>;
    fn set_soft_direct_channels(&mut self, _: bool) -> AltoResult<()>;
    fn distance_model(&self) -> AltoResult<DistanceModel>;
    fn set_distance_model(&mut self, _: DistanceModel) -> AltoResult<()>;
    fn set_direct_filter<F: FilterTrait<'d, 'c>>(&mut self,
                                                 value: &F)
                                                 -> AltoResult<()>; fn clear_direct_filter(&mut self) -> AltoResult<()>; fn set_auxiliary_send(&mut self,
                          send: ALint,
                          value: &mut AuxEffectSlot<'d, 'c>)
                          -> AltoResult<()>; fn set_auxiliary_send_filter<F: FilterTrait<'d, 'c>>(&mut self,
                                                         send: ALint,
                                                         slot: &mut AuxEffectSlot<'d, 'c>,
                                                         filter: &F)
                                                         -> AltoResult<()>; fn clear_auxiliary_send(&mut self, send: ALint) -> AltoResult<()>; fn air_absorption_factor(&self) -> AltoResult<f32>; fn set_air_absorption_factor(&mut self, _: f32) -> AltoResult<()>; fn room_rolloff_factor(&self) -> AltoResult<f32>; fn set_room_rolloff_factor(&mut self, _: f32) -> AltoResult<()>; fn cone_outer_gainhf(&self) -> AltoResult<f32>; fn set_cone_outer_gainhf(&mut self, _: f32) -> AltoResult<()>; fn direct_filter_gainhf_auto(&self) -> AltoResult<bool>; fn set_direct_filter_gainhf_auto(&mut self, _: bool) -> AltoResult<()>; }

Capabilities common to both static and streaming sources.

Required Methods

The context from which this source was created.

Raw handle as provided by OpenAL.

alGetSourcei(AL_SOURCE_STATE)

alSourcePlay()

alSourcePause()

alSourceStop()

alSourceRewind()

alGetSourcei(AL_SOURCE_RELATIVE)

alSourcei(AL_SOURCE_RELATIVE)

alGetSourcef(AL_GAIN)

alSourcef(AL_GAIN)

alGetSourcef(AL_MIN_GAIN)

alSourcef(AL_MIN_GAIN)

alGetSourcef(AL_MAX_GAIN)

alSourcef(AL_MAX_GAIN)

alGetSourcef(AL_REFERENCE_DISTANCE)

alSourcef(AL_REFERENCE_DISTANCE)

alGetSourcef(AL_ROLLOFF_FACTOR)

alSourcef(AL_ROLLOFF_FACTOR)

alGetSourcef(AL_MAX_DISTANCE)

alSourcef(AL_MAX_DISTANCE)

alGetSourcef(AL_PITCH)

alSourcef(AL_PITCH)

alGetSourcefv(AL_POSITION)

alSourcefv(AL_POSITION)

alGetSourcefv(AL_VELOCITY)

alSourcefv(AL_VELOCITY)

alGetSourcefv(AL_DIRECTION)

alSourcefv(AL_DIRECTION)

alGetSourcef(AL_CONE_INNER_ANGLE)

alSourcef(AL_CONE_INNER_ANGLE)

alGetSourcef(AL_CONE_OUTER_ANGLE)

alSourcef(AL_CONE_OUTER_ANGLE)

alGetSourcef(AL_CONE_OUTER_GAIN)

alSourcef(AL_CONE_OUTER_GAIN)

alGetSourcef(AL_SEC_OFFSET)

alSourcef(AL_SEC_OFFSET)

alSetSourcei(AL_SAMPLE_OFFSET)

alSourcei(AL_SAMPLE_OFFSET)

alSetSourcei(AL_BYTE_OFFSET)

alSourcei(AL_BYTE_OFFSET)

alGetSourcedvSOFT(AL_SEC_OFFSET_LATENCY_SOFT) Requires AL_SOFT_source_latency

alGetSourcei16vSOFT(AL_SAMPLE_OFFSET_LATENCY_SOFT) Requires AL_SOFT_source_latency

alGetSourcef(AL_SEC_LENGTH_SOFT) Requires AL_SOFT_source_length

alGetSourcei(AL_SAMPLE_LENGTH_SOFT) Requires AL_SOFT_source_length

alGetSourcei(AL_BYTE_LENGTH_SOFT) Requires AL_SOFT_source_length

alGetSourcei(AL_DIRECT_CHANNELS_SOFT) Requires AL_SOFT_direct_channels

alSourcei(AL_DIRECT_CHANNELS_SOFT) Requires AL_SOFT_direct_channels

alGetSourcei(AL_DISTANCE_MODEL) Requires AL_EXT_source_distance_model

alSourcei(AL_DISTANCE_MODEL) Requires AL_EXT_source_distance_model

alSourcei(AL_DIRECT_FILTER) Requires ALC_EXT_EFX

alSourcei(AL_DIRECT_FILTER) Requires ALC_EXT_EFX

alSourceiv(AL_AUXILIARY_SEND_FILTER) Requires ALC_EXT_EFX

alSourceiv(AL_AUXILIARY_SEND_FILTER) Requires ALC_EXT_EFX

alSourceiv(AL_AUXILIARY_SEND_FILTER) Requires ALC_EXT_EFX

alGetSourcef(AL_AIR_ABSORPTION_FACTOR) Requires ALC_EXT_EFX

alSourcef(AL_AIR_ABSORPTION_FACTOR) Requires ALC_EXT_EFX

alGetSourcef(AL_ROOM_ROLLOFF_FACTOR) Requires ALC_EXT_EFX

alSourcef(AL_ROOM_ROLLOFF_FACTOR) Requires ALC_EXT_EFX

alGetSourcef(AL_CONE_OUTER_GAINHF) Requires ALC_EXT_EFX

alSourcef(AL_CONE_OUTER_GAINHF) Requires ALC_EXT_EFX

alGetSourcei(AL_DIRECT_FILTER_GAINHF_AUTO) Requires ALC_EXT_EFX

alSourcei(AL_DIRECT_FILTER_GAINHF_AUTO) Requires ALC_EXT_EFX

Implementors