Trait windows::Win32::Media::MediaFoundation::ID3D12VideoDevice2_Impl
pub trait ID3D12VideoDevice2_Impl: Sized + ID3D12VideoDevice1_Impl {
// Required methods
fn CreateVideoDecoder1(
&self,
pdesc: *const D3D12_VIDEO_DECODER_DESC,
pprotectedresourcesession: Option<&ID3D12ProtectedResourceSession>,
riid: *const GUID,
ppvideodecoder: *mut *mut c_void
) -> Result<()>;
fn CreateVideoDecoderHeap1(
&self,
pvideodecoderheapdesc: *const D3D12_VIDEO_DECODER_HEAP_DESC,
pprotectedresourcesession: Option<&ID3D12ProtectedResourceSession>,
riid: *const GUID,
ppvideodecoderheap: *mut *mut c_void
) -> Result<()>;
fn CreateVideoProcessor1(
&self,
nodemask: u32,
poutputstreamdesc: *const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC,
numinputstreamdescs: u32,
pinputstreamdescs: *const D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC,
pprotectedresourcesession: Option<&ID3D12ProtectedResourceSession>,
riid: *const GUID,
ppvideoprocessor: *mut *mut c_void
) -> Result<()>;
fn CreateVideoExtensionCommand(
&self,
pdesc: *const D3D12_VIDEO_EXTENSION_COMMAND_DESC,
pcreationparameters: *const c_void,
creationparametersdatasizeinbytes: usize,
pprotectedresourcesession: Option<&ID3D12ProtectedResourceSession>,
riid: *const GUID,
ppvideoextensioncommand: *mut *mut c_void
) -> Result<()>;
fn ExecuteExtensionCommand(
&self,
pextensioncommand: Option<&ID3D12VideoExtensionCommand>,
pexecutionparameters: *const c_void,
executionparameterssizeinbytes: usize,
poutputdata: *mut c_void,
outputdatasizeinbytes: usize
) -> Result<()>;
}
Required Methods§
fn CreateVideoDecoder1( &self, pdesc: *const D3D12_VIDEO_DECODER_DESC, pprotectedresourcesession: Option<&ID3D12ProtectedResourceSession>, riid: *const GUID, ppvideodecoder: *mut *mut c_void ) -> Result<()>
fn CreateVideoDecoderHeap1( &self, pvideodecoderheapdesc: *const D3D12_VIDEO_DECODER_HEAP_DESC, pprotectedresourcesession: Option<&ID3D12ProtectedResourceSession>, riid: *const GUID, ppvideodecoderheap: *mut *mut c_void ) -> Result<()>
fn CreateVideoProcessor1( &self, nodemask: u32, poutputstreamdesc: *const D3D12_VIDEO_PROCESS_OUTPUT_STREAM_DESC, numinputstreamdescs: u32, pinputstreamdescs: *const D3D12_VIDEO_PROCESS_INPUT_STREAM_DESC, pprotectedresourcesession: Option<&ID3D12ProtectedResourceSession>, riid: *const GUID, ppvideoprocessor: *mut *mut c_void ) -> Result<()>
fn CreateVideoExtensionCommand( &self, pdesc: *const D3D12_VIDEO_EXTENSION_COMMAND_DESC, pcreationparameters: *const c_void, creationparametersdatasizeinbytes: usize, pprotectedresourcesession: Option<&ID3D12ProtectedResourceSession>, riid: *const GUID, ppvideoextensioncommand: *mut *mut c_void ) -> Result<()>
fn ExecuteExtensionCommand( &self, pextensioncommand: Option<&ID3D12VideoExtensionCommand>, pexecutionparameters: *const c_void, executionparameterssizeinbytes: usize, poutputdata: *mut c_void, outputdatasizeinbytes: usize ) -> Result<()>
Object Safety§
This trait is not object safe.