Trait IDirectXVideoProcessor_Impl
pub trait IDirectXVideoProcessor_Impl: IUnknownImpl {
// 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: Ref<'_, 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: Ref<'_, IDirect3DSurface9>, pbltparams: *const DXVA2_VideoProcessBltParams, psamples: *const DXVA2_VideoSample, numsamples: u32, phandlecomplete: *mut HANDLE, ) -> 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.