Trait windows::Win32::Graphics::Direct3D12::ID3D12Device4_Impl

pub trait ID3D12Device4_Impl: Sized + ID3D12Device3_Impl {
    // Required methods
    fn CreateCommandList1(
        &self,
        nodemask: u32,
        type: D3D12_COMMAND_LIST_TYPE,
        flags: D3D12_COMMAND_LIST_FLAGS,
        riid: *const GUID,
        ppcommandlist: *mut *mut c_void,
    ) -> Result<()>;
    fn CreateProtectedResourceSession(
        &self,
        pdesc: *const D3D12_PROTECTED_RESOURCE_SESSION_DESC,
        riid: *const GUID,
        ppsession: *mut *mut c_void,
    ) -> Result<()>;
    fn CreateCommittedResource1(
        &self,
        pheapproperties: *const D3D12_HEAP_PROPERTIES,
        heapflags: D3D12_HEAP_FLAGS,
        pdesc: *const D3D12_RESOURCE_DESC,
        initialresourcestate: D3D12_RESOURCE_STATES,
        poptimizedclearvalue: *const D3D12_CLEAR_VALUE,
        pprotectedsession: Option<&ID3D12ProtectedResourceSession>,
        riidresource: *const GUID,
        ppvresource: *mut *mut c_void,
    ) -> Result<()>;
    fn CreateHeap1(
        &self,
        pdesc: *const D3D12_HEAP_DESC,
        pprotectedsession: Option<&ID3D12ProtectedResourceSession>,
        riid: *const GUID,
        ppvheap: *mut *mut c_void,
    ) -> Result<()>;
    fn CreateReservedResource1(
        &self,
        pdesc: *const D3D12_RESOURCE_DESC,
        initialstate: D3D12_RESOURCE_STATES,
        poptimizedclearvalue: *const D3D12_CLEAR_VALUE,
        pprotectedsession: Option<&ID3D12ProtectedResourceSession>,
        riid: *const GUID,
        ppvresource: *mut *mut c_void,
    ) -> Result<()>;
    fn GetResourceAllocationInfo1(
        &self,
        visiblemask: u32,
        numresourcedescs: u32,
        presourcedescs: *const D3D12_RESOURCE_DESC,
        presourceallocationinfo1: *mut D3D12_RESOURCE_ALLOCATION_INFO1,
    ) -> D3D12_RESOURCE_ALLOCATION_INFO;
}

Required Methods§

fn CreateCommandList1( &self, nodemask: u32, type: D3D12_COMMAND_LIST_TYPE, flags: D3D12_COMMAND_LIST_FLAGS, riid: *const GUID, ppcommandlist: *mut *mut c_void, ) -> Result<()>

fn CreateProtectedResourceSession( &self, pdesc: *const D3D12_PROTECTED_RESOURCE_SESSION_DESC, riid: *const GUID, ppsession: *mut *mut c_void, ) -> Result<()>

fn CreateCommittedResource1( &self, pheapproperties: *const D3D12_HEAP_PROPERTIES, heapflags: D3D12_HEAP_FLAGS, pdesc: *const D3D12_RESOURCE_DESC, initialresourcestate: D3D12_RESOURCE_STATES, poptimizedclearvalue: *const D3D12_CLEAR_VALUE, pprotectedsession: Option<&ID3D12ProtectedResourceSession>, riidresource: *const GUID, ppvresource: *mut *mut c_void, ) -> Result<()>

fn CreateHeap1( &self, pdesc: *const D3D12_HEAP_DESC, pprotectedsession: Option<&ID3D12ProtectedResourceSession>, riid: *const GUID, ppvheap: *mut *mut c_void, ) -> Result<()>

fn CreateReservedResource1( &self, pdesc: *const D3D12_RESOURCE_DESC, initialstate: D3D12_RESOURCE_STATES, poptimizedclearvalue: *const D3D12_CLEAR_VALUE, pprotectedsession: Option<&ID3D12ProtectedResourceSession>, riid: *const GUID, ppvresource: *mut *mut c_void, ) -> Result<()>

fn GetResourceAllocationInfo1( &self, visiblemask: u32, numresourcedescs: u32, presourcedescs: *const D3D12_RESOURCE_DESC, presourceallocationinfo1: *mut D3D12_RESOURCE_ALLOCATION_INFO1, ) -> D3D12_RESOURCE_ALLOCATION_INFO

Object Safety§

This trait is not object safe.

Implementors§