Trait IDirectSoundBuffer_Impl
pub trait IDirectSoundBuffer_Impl: IUnknownImpl {
Show 18 methods
// Required methods
fn GetCaps(&self, pdsbuffercaps: *mut DSBCAPS) -> Result<()>;
fn GetCurrentPosition(
&self,
pdwcurrentplaycursor: *mut u32,
pdwcurrentwritecursor: *mut u32,
) -> Result<()>;
fn GetFormat(
&self,
pwfxformat: *mut WAVEFORMATEX,
dwsizeallocated: u32,
pdwsizewritten: *mut u32,
) -> Result<()>;
fn GetVolume(&self) -> Result<i32>;
fn GetPan(&self) -> Result<i32>;
fn GetFrequency(&self) -> Result<u32>;
fn GetStatus(&self) -> Result<u32>;
fn Initialize(
&self,
pdirectsound: Ref<'_, IDirectSound>,
pcdsbufferdesc: *const DSBUFFERDESC,
) -> Result<()>;
fn Lock(
&self,
dwoffset: u32,
dwbytes: u32,
ppvaudioptr1: *mut *mut c_void,
pdwaudiobytes1: *mut u32,
ppvaudioptr2: *mut *mut c_void,
pdwaudiobytes2: *mut u32,
dwflags: u32,
) -> Result<()>;
fn Play(
&self,
dwreserved1: u32,
dwpriority: u32,
dwflags: u32,
) -> Result<()>;
fn SetCurrentPosition(&self, dwnewposition: u32) -> Result<()>;
fn SetFormat(&self, pcfxformat: *const WAVEFORMATEX) -> Result<()>;
fn SetVolume(&self, lvolume: i32) -> Result<()>;
fn SetPan(&self, lpan: i32) -> Result<()>;
fn SetFrequency(&self, dwfrequency: u32) -> Result<()>;
fn Stop(&self) -> Result<()>;
fn Unlock(
&self,
pvaudioptr1: *const c_void,
dwaudiobytes1: u32,
pvaudioptr2: *const c_void,
dwaudiobytes2: u32,
) -> Result<()>;
fn Restore(&self) -> Result<()>;
}
Required Methods§
fn GetCaps(&self, pdsbuffercaps: *mut DSBCAPS) -> Result<()>
fn GetCurrentPosition( &self, pdwcurrentplaycursor: *mut u32, pdwcurrentwritecursor: *mut u32, ) -> Result<()>
fn GetFormat( &self, pwfxformat: *mut WAVEFORMATEX, dwsizeallocated: u32, pdwsizewritten: *mut u32, ) -> Result<()>
fn GetVolume(&self) -> Result<i32>
fn GetPan(&self) -> Result<i32>
fn GetFrequency(&self) -> Result<u32>
fn GetStatus(&self) -> Result<u32>
fn Initialize( &self, pdirectsound: Ref<'_, IDirectSound>, pcdsbufferdesc: *const DSBUFFERDESC, ) -> Result<()>
fn Lock( &self, dwoffset: u32, dwbytes: u32, ppvaudioptr1: *mut *mut c_void, pdwaudiobytes1: *mut u32, ppvaudioptr2: *mut *mut c_void, pdwaudiobytes2: *mut u32, dwflags: u32, ) -> Result<()>
fn Play(&self, dwreserved1: u32, dwpriority: u32, dwflags: u32) -> Result<()>
fn SetCurrentPosition(&self, dwnewposition: u32) -> Result<()>
fn SetFormat(&self, pcfxformat: *const WAVEFORMATEX) -> Result<()>
fn SetVolume(&self, lvolume: i32) -> Result<()>
fn SetPan(&self, lpan: i32) -> Result<()>
fn SetFrequency(&self, dwfrequency: u32) -> Result<()>
fn Stop(&self) -> Result<()>
fn Unlock( &self, pvaudioptr1: *const c_void, dwaudiobytes1: u32, pvaudioptr2: *const c_void, dwaudiobytes2: u32, ) -> Result<()>
fn Restore(&self) -> Result<()>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.