pub trait IDirectSoundCaptureBuffer_Impl: Sized {
    // Required methods
    fn GetCaps(&self) -> Result<DSCBCAPS>;
    fn GetCurrentPosition(
        &self,
        pdwcaptureposition: *mut u32,
        pdwreadposition: *mut u32,
    ) -> Result<()>;
    fn GetFormat(
        &self,
        pwfxformat: *mut WAVEFORMATEX,
        dwsizeallocated: u32,
        pdwsizewritten: *mut u32,
    ) -> Result<()>;
    fn GetStatus(&self) -> Result<u32>;
    fn Initialize(
        &self,
        pdirectsoundcapture: Option<&IDirectSoundCapture>,
        pcdscbufferdesc: *const DSCBUFFERDESC,
    ) -> 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 Start(&self, dwflags: u32) -> Result<()>;
    fn Stop(&self) -> Result<()>;
    fn Unlock(
        &self,
        pvaudioptr1: *const c_void,
        dwaudiobytes1: u32,
        pvaudioptr2: *const c_void,
        dwaudiobytes2: u32,
    ) -> Result<()>;
}

Required Methods§

fn GetCaps(&self) -> Result<DSCBCAPS>

fn GetCurrentPosition( &self, pdwcaptureposition: *mut u32, pdwreadposition: *mut u32, ) -> Result<()>

fn GetFormat( &self, pwfxformat: *mut WAVEFORMATEX, dwsizeallocated: u32, pdwsizewritten: *mut u32, ) -> Result<()>

fn GetStatus(&self) -> Result<u32>

fn Initialize( &self, pdirectsoundcapture: Option<&IDirectSoundCapture>, pcdscbufferdesc: *const DSCBUFFERDESC, ) -> 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 Start(&self, dwflags: u32) -> Result<()>

fn Stop(&self) -> Result<()>

fn Unlock( &self, pvaudioptr1: *const c_void, dwaudiobytes1: u32, pvaudioptr2: *const c_void, dwaudiobytes2: u32, ) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§