pub struct ID3D12DeviceVtbl {
pub parent: ID3D12ObjectVtbl,
pub GetNodeCount: unsafe extern "system" fn(This: *mut ID3D12Device) -> UINT,
pub CreateCommandQueue: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_COMMAND_QUEUE_DESC, riid: REFGUID, ppCommandQueue: *mut *mut c_void) -> HRESULT,
pub CreateCommandAllocator: unsafe extern "system" fn(This: *mut ID3D12Device, type_: D3D12_COMMAND_LIST_TYPE, riid: REFGUID, ppCommandAllocator: *mut *mut c_void) -> HRESULT,
pub CreateGraphicsPipelineState: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_GRAPHICS_PIPELINE_STATE_DESC, riid: REFGUID, ppPipelineState: *mut *mut c_void) -> HRESULT,
pub CreateComputePipelineState: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_COMPUTE_PIPELINE_STATE_DESC, riid: REFGUID, ppPipelineState: *mut *mut c_void) -> HRESULT,
pub CreateCommandList: unsafe extern "system" fn(This: *mut ID3D12Device, nodeMask: UINT, type_: D3D12_COMMAND_LIST_TYPE, pCommandAllocator: *mut ID3D12CommandAllocator, pInitialState: *mut ID3D12PipelineState, riid: REFGUID, ppCommandList: *mut *mut c_void) -> HRESULT,
pub CheckFeatureSupport: unsafe extern "system" fn(This: *mut ID3D12Device, Feature: D3D12_FEATURE, pFeatureSupportData: *mut c_void, FeatureSupportDataSize: UINT) -> HRESULT,
pub CreateDescriptorHeap: unsafe extern "system" fn(This: *mut ID3D12Device, pDescriptorHeapDesc: *const D3D12_DESCRIPTOR_HEAP_DESC, riid: REFGUID, ppvHeap: *mut *mut c_void) -> HRESULT,
pub GetDescriptorHandleIncrementSize: unsafe extern "system" fn(This: *mut ID3D12Device, DescriptorHeapType: D3D12_DESCRIPTOR_HEAP_TYPE) -> UINT,
pub CreateRootSignature: unsafe extern "system" fn(This: *mut ID3D12Device, nodeMask: UINT, pBlobWithRootSignature: *const c_void, blobLengthInBytes: SIZE_T, riid: REFGUID, ppvRootSignature: *mut *mut c_void) -> HRESULT,
pub CreateConstantBufferView: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_CONSTANT_BUFFER_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE),
pub CreateShaderResourceView: unsafe extern "system" fn(This: *mut ID3D12Device, pResource: *mut ID3D12Resource, pDesc: *const D3D12_SHADER_RESOURCE_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE),
pub CreateUnorderedAccessView: unsafe extern "system" fn(This: *mut ID3D12Device, pResource: *mut ID3D12Resource, pCounterResource: *mut ID3D12Resource, pDesc: *const D3D12_UNORDERED_ACCESS_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE),
pub CreateRenderTargetView: unsafe extern "system" fn(This: *mut ID3D12Device, pResource: *mut ID3D12Resource, pDesc: *const D3D12_RENDER_TARGET_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE),
pub CreateDepthStencilView: unsafe extern "system" fn(This: *mut ID3D12Device, pResource: *mut ID3D12Resource, pDesc: *const D3D12_DEPTH_STENCIL_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE),
pub CreateSampler: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_SAMPLER_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE),
pub CopyDescriptors: unsafe extern "system" fn(This: *mut ID3D12Device, NumDestDescriptorRanges: UINT, pDestDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE, pDestDescriptorRangeSizes: *const UINT, NumSrcDescriptorRanges: UINT, pSrcDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE, pSrcDescriptorRangeSizes: *const UINT, DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE),
pub CopyDescriptorsSimple: unsafe extern "system" fn(This: *mut ID3D12Device, NumDescriptors: UINT, DestDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE, SrcDescriptorRangeStart: D3D12_CPU_DESCRIPTOR_HANDLE, DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE),
pub GetResourceAllocationInfo: unsafe extern "system" fn(This: *mut ID3D12Device, visibleMask: UINT, numResourceDescs: UINT, pResourceDescs: *const D3D12_RESOURCE_DESC, __ret_val: *mut D3D12_RESOURCE_ALLOCATION_INFO) -> *mut D3D12_RESOURCE_ALLOCATION_INFO,
pub GetCustomHeapProperties: unsafe extern "system" fn(This: *mut ID3D12Device, nodeMask: UINT, heapType: D3D12_HEAP_TYPE, __ret_val: *mut D3D12_HEAP_PROPERTIES) -> *mut D3D12_HEAP_PROPERTIES,
pub CreateCommittedResource: unsafe extern "system" fn(This: *mut ID3D12Device, pHeapProperties: *const D3D12_HEAP_PROPERTIES, HeapFlags: D3D12_HEAP_FLAGS, pResourceDesc: *const D3D12_RESOURCE_DESC, InitialResourceState: D3D12_RESOURCE_STATES, pOptimizedClearValue: *const D3D12_CLEAR_VALUE, riidResource: REFGUID, ppvResource: *mut *mut c_void) -> HRESULT,
pub CreateHeap: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_HEAP_DESC, riid: REFGUID, ppvHeap: *mut *mut c_void) -> HRESULT,
pub CreatePlacedResource: unsafe extern "system" fn(This: *mut ID3D12Device, pHeap: *mut ID3D12Heap, HeapOffset: UINT64, pDesc: *const D3D12_RESOURCE_DESC, InitialState: D3D12_RESOURCE_STATES, pOptimizedClearValue: *const D3D12_CLEAR_VALUE, riid: REFGUID, ppvResource: *mut *mut c_void) -> HRESULT,
pub CreateReservedResource: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_RESOURCE_DESC, InitialState: D3D12_RESOURCE_STATES, pOptimizedClearValue: *const D3D12_CLEAR_VALUE, riid: REFGUID, ppvResource: *mut *mut c_void) -> HRESULT,
pub CreateSharedHandle: unsafe extern "system" fn(This: *mut ID3D12Device, pObject: *mut ID3D12DeviceChild, pAttributes: *const SECURITY_ATTRIBUTES, Access: DWORD, Name: LPCWSTR, pHandle: *mut HANDLE) -> HRESULT,
pub OpenSharedHandle: unsafe extern "system" fn(This: *mut ID3D12Device, NTHandle: HANDLE, riid: REFGUID, ppvObj: *mut *mut c_void) -> HRESULT,
pub OpenSharedHandleByName: unsafe extern "system" fn(This: *mut ID3D12Device, Name: LPCWSTR, Access: DWORD, pNTHandle: *mut HANDLE) -> HRESULT,
pub MakeResident: unsafe extern "system" fn(This: *mut ID3D12Device, NumObjects: UINT, ppObjects: *mut *mut ID3D12Pageable) -> HRESULT,
pub Evict: unsafe extern "system" fn(This: *mut ID3D12Device, NumObjects: UINT, ppObjects: *mut *mut ID3D12Pageable) -> HRESULT,
pub CreateFence: unsafe extern "system" fn(This: *mut ID3D12Device, InitialValue: UINT64, Flags: D3D12_FENCE_FLAGS, riid: REFGUID, ppFence: *mut *mut c_void) -> HRESULT,
pub GetDeviceRemovedReason: unsafe extern "system" fn(This: *mut ID3D12Device) -> HRESULT,
pub GetCopyableFootprints: unsafe extern "system" fn(This: *mut ID3D12Device, pResourceDesc: *const D3D12_RESOURCE_DESC, FirstSubresource: UINT, NumSubresources: UINT, BaseOffset: UINT64, pLayouts: *mut D3D12_PLACED_SUBRESOURCE_FOOTPRINT, pNumRows: *mut UINT, pRowSizeInBytes: *mut UINT64, pTotalBytes: *mut UINT64),
pub CreateQueryHeap: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_QUERY_HEAP_DESC, riid: REFGUID, ppvHeap: *mut *mut c_void) -> HRESULT,
pub SetStablePowerState: unsafe extern "system" fn(This: *mut ID3D12Device, Enable: BOOL) -> HRESULT,
pub CreateCommandSignature: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_COMMAND_SIGNATURE_DESC, pRootSignature: *mut ID3D12RootSignature, riid: REFGUID, ppvCommandSignature: *mut *mut c_void) -> HRESULT,
pub GetResourceTiling: unsafe extern "system" fn(This: *mut ID3D12Device, pTiledResource: *mut ID3D12Resource, pNumTilesForEntireResource: *mut UINT, pPackedMipDesc: *mut D3D12_PACKED_MIP_INFO, pStandardTileShapeForNonPackedMips: *mut D3D12_TILE_SHAPE, pNumSubresourceTilings: *mut UINT, FirstSubresourceTilingToGet: UINT, pSubresourceTilingsForNonPackedMips: *mut D3D12_SUBRESOURCE_TILING),
pub GetAdapterLuid: unsafe extern "system" fn(This: *mut ID3D12Device, __ret_val: *mut LUID) -> *mut LUID,
}
Fields
parent: ID3D12ObjectVtbl
GetNodeCount: unsafe extern "system" fn(This: *mut ID3D12Device) -> UINT
CreateCommandQueue: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_COMMAND_QUEUE_DESC, riid: REFGUID, ppCommandQueue: *mut *mut c_void) -> HRESULT
CreateCommandAllocator: unsafe extern "system" fn(This: *mut ID3D12Device, type_: D3D12_COMMAND_LIST_TYPE, riid: REFGUID, ppCommandAllocator: *mut *mut c_void) -> HRESULT
CreateGraphicsPipelineState: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_GRAPHICS_PIPELINE_STATE_DESC, riid: REFGUID, ppPipelineState: *mut *mut c_void) -> HRESULT
CreateComputePipelineState: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_COMPUTE_PIPELINE_STATE_DESC, riid: REFGUID, ppPipelineState: *mut *mut c_void) -> HRESULT
CreateCommandList: unsafe extern "system" fn(This: *mut ID3D12Device, nodeMask: UINT, type_: D3D12_COMMAND_LIST_TYPE, pCommandAllocator: *mut ID3D12CommandAllocator, pInitialState: *mut ID3D12PipelineState, riid: REFGUID, ppCommandList: *mut *mut c_void) -> HRESULT
CheckFeatureSupport: unsafe extern "system" fn(This: *mut ID3D12Device, Feature: D3D12_FEATURE, pFeatureSupportData: *mut c_void, FeatureSupportDataSize: UINT) -> HRESULT
CreateDescriptorHeap: unsafe extern "system" fn(This: *mut ID3D12Device, pDescriptorHeapDesc: *const D3D12_DESCRIPTOR_HEAP_DESC, riid: REFGUID, ppvHeap: *mut *mut c_void) -> HRESULT
GetDescriptorHandleIncrementSize: unsafe extern "system" fn(This: *mut ID3D12Device, DescriptorHeapType: D3D12_DESCRIPTOR_HEAP_TYPE) -> UINT
CreateRootSignature: unsafe extern "system" fn(This: *mut ID3D12Device, nodeMask: UINT, pBlobWithRootSignature: *const c_void, blobLengthInBytes: SIZE_T, riid: REFGUID, ppvRootSignature: *mut *mut c_void) -> HRESULT
CreateConstantBufferView: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_CONSTANT_BUFFER_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE)
CreateShaderResourceView: unsafe extern "system" fn(This: *mut ID3D12Device, pResource: *mut ID3D12Resource, pDesc: *const D3D12_SHADER_RESOURCE_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE)
CreateUnorderedAccessView: unsafe extern "system" fn(This: *mut ID3D12Device, pResource: *mut ID3D12Resource, pCounterResource: *mut ID3D12Resource, pDesc: *const D3D12_UNORDERED_ACCESS_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE)
CreateRenderTargetView: unsafe extern "system" fn(This: *mut ID3D12Device, pResource: *mut ID3D12Resource, pDesc: *const D3D12_RENDER_TARGET_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE)
CreateDepthStencilView: unsafe extern "system" fn(This: *mut ID3D12Device, pResource: *mut ID3D12Resource, pDesc: *const D3D12_DEPTH_STENCIL_VIEW_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE)
CreateSampler: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_SAMPLER_DESC, DestDescriptor: D3D12_CPU_DESCRIPTOR_HANDLE)
CopyDescriptors: unsafe extern "system" fn(This: *mut ID3D12Device, NumDestDescriptorRanges: UINT, pDestDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE, pDestDescriptorRangeSizes: *const UINT, NumSrcDescriptorRanges: UINT, pSrcDescriptorRangeStarts: *const D3D12_CPU_DESCRIPTOR_HANDLE, pSrcDescriptorRangeSizes: *const UINT, DescriptorHeapsType: D3D12_DESCRIPTOR_HEAP_TYPE)
GetResourceAllocationInfo: unsafe extern "system" fn(This: *mut ID3D12Device, visibleMask: UINT, numResourceDescs: UINT, pResourceDescs: *const D3D12_RESOURCE_DESC, __ret_val: *mut D3D12_RESOURCE_ALLOCATION_INFO) -> *mut D3D12_RESOURCE_ALLOCATION_INFO
GetCustomHeapProperties: unsafe extern "system" fn(This: *mut ID3D12Device, nodeMask: UINT, heapType: D3D12_HEAP_TYPE, __ret_val: *mut D3D12_HEAP_PROPERTIES) -> *mut D3D12_HEAP_PROPERTIES
CreateCommittedResource: unsafe extern "system" fn(This: *mut ID3D12Device, pHeapProperties: *const D3D12_HEAP_PROPERTIES, HeapFlags: D3D12_HEAP_FLAGS, pResourceDesc: *const D3D12_RESOURCE_DESC, InitialResourceState: D3D12_RESOURCE_STATES, pOptimizedClearValue: *const D3D12_CLEAR_VALUE, riidResource: REFGUID, ppvResource: *mut *mut c_void) -> HRESULT
CreateHeap: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_HEAP_DESC, riid: REFGUID, ppvHeap: *mut *mut c_void) -> HRESULT
CreatePlacedResource: unsafe extern "system" fn(This: *mut ID3D12Device, pHeap: *mut ID3D12Heap, HeapOffset: UINT64, pDesc: *const D3D12_RESOURCE_DESC, InitialState: D3D12_RESOURCE_STATES, pOptimizedClearValue: *const D3D12_CLEAR_VALUE, riid: REFGUID, ppvResource: *mut *mut c_void) -> HRESULT
CreateReservedResource: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_RESOURCE_DESC, InitialState: D3D12_RESOURCE_STATES, pOptimizedClearValue: *const D3D12_CLEAR_VALUE, riid: REFGUID, ppvResource: *mut *mut c_void) -> HRESULT
CreateSharedHandle: unsafe extern "system" fn(This: *mut ID3D12Device, pObject: *mut ID3D12DeviceChild, pAttributes: *const SECURITY_ATTRIBUTES, Access: DWORD, Name: LPCWSTR, pHandle: *mut HANDLE) -> HRESULT
OpenSharedHandle: unsafe extern "system" fn(This: *mut ID3D12Device, NTHandle: HANDLE, riid: REFGUID, ppvObj: *mut *mut c_void) -> HRESULT
OpenSharedHandleByName: unsafe extern "system" fn(This: *mut ID3D12Device, Name: LPCWSTR, Access: DWORD, pNTHandle: *mut HANDLE) -> HRESULT
MakeResident: unsafe extern "system" fn(This: *mut ID3D12Device, NumObjects: UINT, ppObjects: *mut *mut ID3D12Pageable) -> HRESULT
Evict: unsafe extern "system" fn(This: *mut ID3D12Device, NumObjects: UINT, ppObjects: *mut *mut ID3D12Pageable) -> HRESULT
CreateFence: unsafe extern "system" fn(This: *mut ID3D12Device, InitialValue: UINT64, Flags: D3D12_FENCE_FLAGS, riid: REFGUID, ppFence: *mut *mut c_void) -> HRESULT
GetDeviceRemovedReason: unsafe extern "system" fn(This: *mut ID3D12Device) -> HRESULT
CreateQueryHeap: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_QUERY_HEAP_DESC, riid: REFGUID, ppvHeap: *mut *mut c_void) -> HRESULT
SetStablePowerState: unsafe extern "system" fn(This: *mut ID3D12Device, Enable: BOOL) -> HRESULT
CreateCommandSignature: unsafe extern "system" fn(This: *mut ID3D12Device, pDesc: *const D3D12_COMMAND_SIGNATURE_DESC, pRootSignature: *mut ID3D12RootSignature, riid: REFGUID, ppvCommandSignature: *mut *mut c_void) -> HRESULT
GetResourceTiling: unsafe extern "system" fn(This: *mut ID3D12Device, pTiledResource: *mut ID3D12Resource, pNumTilesForEntireResource: *mut UINT, pPackedMipDesc: *mut D3D12_PACKED_MIP_INFO, pStandardTileShapeForNonPackedMips: *mut D3D12_TILE_SHAPE, pNumSubresourceTilings: *mut UINT, FirstSubresourceTilingToGet: UINT, pSubresourceTilingsForNonPackedMips: *mut D3D12_SUBRESOURCE_TILING)
GetAdapterLuid: unsafe extern "system" fn(This: *mut ID3D12Device, __ret_val: *mut LUID) -> *mut LUID