Struct ID3D12DeviceVtbl

Source
#[repr(C)]
pub struct ID3D12DeviceVtbl {
Show 38 fields 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, ret: *mut D3D12_RESOURCE_ALLOCATION_INFO, visibleMask: UINT, numResourceDescs: UINT, pResourceDescs: *const D3D12_RESOURCE_DESC) -> *mut D3D12_RESOURCE_ALLOCATION_INFO, pub GetCustomHeapProperties: unsafe extern "system" fn(This: *mut ID3D12Device, ret: *mut D3D12_HEAP_PROPERTIES, nodeMask: UINT, heapType: D3D12_HEAP_TYPE) -> *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: *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)§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)§GetResourceAllocationInfo: unsafe extern "system" fn(This: *mut ID3D12Device, ret: *mut D3D12_RESOURCE_ALLOCATION_INFO, visibleMask: UINT, numResourceDescs: UINT, pResourceDescs: *const D3D12_RESOURCE_DESC) -> *mut D3D12_RESOURCE_ALLOCATION_INFO§GetCustomHeapProperties: unsafe extern "system" fn(This: *mut ID3D12Device, ret: *mut D3D12_HEAP_PROPERTIES, nodeMask: UINT, heapType: D3D12_HEAP_TYPE) -> *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§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)§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: *mut LUID) -> *mut LUID

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.