pub trait IDirectXVideoProcessor_Impl: Sized {
    // Required methods
    fn GetVideoProcessorService(&self) -> Result<IDirectXVideoProcessorService>;
    fn GetCreationParameters(
        &self,
        pdeviceguid: *mut GUID,
        pvideodesc: *mut DXVA2_VideoDesc,
        prendertargetformat: *mut D3DFORMAT,
        pmaxnumsubstreams: *mut u32
    ) -> Result<()>;
    fn GetVideoProcessorCaps(
        &self,
        pcaps: *mut DXVA2_VideoProcessorCaps
    ) -> Result<()>;
    fn GetProcAmpRange(&self, procampcap: u32) -> Result<DXVA2_ValueRange>;
    fn GetFilterPropertyRange(
        &self,
        filtersetting: u32
    ) -> Result<DXVA2_ValueRange>;
    fn VideoProcessBlt(
        &self,
        prendertarget: Option<&IDirect3DSurface9>,
        pbltparams: *const DXVA2_VideoProcessBltParams,
        psamples: *const DXVA2_VideoSample,
        numsamples: u32,
        phandlecomplete: *mut HANDLE
    ) -> Result<()>;
}

Required Methods§

fn GetVideoProcessorService(&self) -> Result<IDirectXVideoProcessorService>

fn GetCreationParameters( &self, pdeviceguid: *mut GUID, pvideodesc: *mut DXVA2_VideoDesc, prendertargetformat: *mut D3DFORMAT, pmaxnumsubstreams: *mut u32 ) -> Result<()>

fn GetVideoProcessorCaps( &self, pcaps: *mut DXVA2_VideoProcessorCaps ) -> Result<()>

fn GetProcAmpRange(&self, procampcap: u32) -> Result<DXVA2_ValueRange>

fn GetFilterPropertyRange(&self, filtersetting: u32) -> Result<DXVA2_ValueRange>

fn VideoProcessBlt( &self, prendertarget: Option<&IDirect3DSurface9>, pbltparams: *const DXVA2_VideoProcessBltParams, psamples: *const DXVA2_VideoSample, numsamples: u32, phandlecomplete: *mut HANDLE ) -> Result<()>

Object Safety§

This trait is not object safe.

Implementors§