Trait windows::Win32::Media::Audio::XAudio2::IXAPO_Impl

pub trait IXAPO_Impl: Sized {
    // Required methods
    fn GetRegistrationProperties(
        &self,
    ) -> Result<*mut XAPO_REGISTRATION_PROPERTIES>;
    fn IsInputFormatSupported(
        &self,
        poutputformat: *const WAVEFORMATEX,
        prequestedinputformat: *const WAVEFORMATEX,
        ppsupportedinputformat: *mut *mut WAVEFORMATEX,
    ) -> Result<()>;
    fn IsOutputFormatSupported(
        &self,
        pinputformat: *const WAVEFORMATEX,
        prequestedoutputformat: *const WAVEFORMATEX,
        ppsupportedoutputformat: *mut *mut WAVEFORMATEX,
    ) -> Result<()>;
    fn Initialize(&self, pdata: *const c_void, databytesize: u32) -> Result<()>;
    fn Reset(&self);
    fn LockForProcess(
        &self,
        inputlockedparametercount: u32,
        pinputlockedparameters: *const XAPO_LOCKFORPROCESS_PARAMETERS,
        outputlockedparametercount: u32,
        poutputlockedparameters: *const XAPO_LOCKFORPROCESS_PARAMETERS,
    ) -> Result<()>;
    fn UnlockForProcess(&self);
    fn Process(
        &self,
        inputprocessparametercount: u32,
        pinputprocessparameters: *const XAPO_PROCESS_BUFFER_PARAMETERS,
        outputprocessparametercount: u32,
        poutputprocessparameters: *mut XAPO_PROCESS_BUFFER_PARAMETERS,
        isenabled: BOOL,
    );
    fn CalcInputFrames(&self, outputframecount: u32) -> u32;
    fn CalcOutputFrames(&self, inputframecount: u32) -> u32;
}

Required Methods§

fn GetRegistrationProperties(&self) -> Result<*mut XAPO_REGISTRATION_PROPERTIES>

fn IsInputFormatSupported( &self, poutputformat: *const WAVEFORMATEX, prequestedinputformat: *const WAVEFORMATEX, ppsupportedinputformat: *mut *mut WAVEFORMATEX, ) -> Result<()>

fn IsOutputFormatSupported( &self, pinputformat: *const WAVEFORMATEX, prequestedoutputformat: *const WAVEFORMATEX, ppsupportedoutputformat: *mut *mut WAVEFORMATEX, ) -> Result<()>

fn Initialize(&self, pdata: *const c_void, databytesize: u32) -> Result<()>

fn Reset(&self)

fn LockForProcess( &self, inputlockedparametercount: u32, pinputlockedparameters: *const XAPO_LOCKFORPROCESS_PARAMETERS, outputlockedparametercount: u32, poutputlockedparameters: *const XAPO_LOCKFORPROCESS_PARAMETERS, ) -> Result<()>

fn UnlockForProcess(&self)

fn Process( &self, inputprocessparametercount: u32, pinputprocessparameters: *const XAPO_PROCESS_BUFFER_PARAMETERS, outputprocessparametercount: u32, poutputprocessparameters: *mut XAPO_PROCESS_BUFFER_PARAMETERS, isenabled: BOOL, )

fn CalcInputFrames(&self, outputframecount: u32) -> u32

fn CalcOutputFrames(&self, inputframecount: u32) -> u32

Object Safety§

This trait is not object safe.

Implementors§