-
-
Save retep998/cf0246b7b56723fdc149 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#ifndef __ID3D12Device_INTERFACE_DEFINED__ | |
#define __ID3D12Device_INTERFACE_DEFINED__ | |
/* interface ID3D12Device */ | |
/* [unique][local][object][uuid] */ | |
EXTERN_C const IID IID_ID3D12Device; | |
#if defined(__cplusplus) && !defined(CINTERFACE) | |
MIDL_INTERFACE("189819f1-1db6-4b57-be54-1821339b85f7") | |
ID3D12Device : public ID3D12Object | |
{ | |
public: | |
virtual UINT STDMETHODCALLTYPE GetNodeCount( void) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateCommandQueue( | |
_In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, | |
REFIID riid, | |
_COM_Outptr_ void **ppCommandQueue) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateCommandAllocator( | |
_In_ D3D12_COMMAND_LIST_TYPE type, | |
REFIID riid, | |
_COM_Outptr_ void **ppCommandAllocator) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateGraphicsPipelineState( | |
_In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, | |
REFIID riid, | |
_COM_Outptr_ void **ppPipelineState) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateComputePipelineState( | |
_In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, | |
REFIID riid, | |
_COM_Outptr_ void **ppPipelineState) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateCommandList( | |
_In_ UINT nodeMask, | |
_In_ D3D12_COMMAND_LIST_TYPE type, | |
_In_ ID3D12CommandAllocator *pCommandAllocator, | |
_In_opt_ ID3D12PipelineState *pInitialState, | |
REFIID riid, | |
_COM_Outptr_ void **ppCommandList) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CheckFeatureSupport( | |
D3D12_FEATURE Feature, | |
_Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, | |
UINT FeatureSupportDataSize) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateDescriptorHeap( | |
_In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, | |
REFIID riid, | |
_COM_Outptr_ void **ppvHeap) = 0; | |
virtual UINT STDMETHODCALLTYPE GetDescriptorHandleIncrementSize( | |
_In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateRootSignature( | |
_In_ UINT nodeMask, | |
_In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, | |
_In_ SIZE_T blobLengthInBytes, | |
REFIID riid, | |
_COM_Outptr_ void **ppvRootSignature) = 0; | |
virtual void STDMETHODCALLTYPE CreateConstantBufferView( | |
_In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; | |
virtual void STDMETHODCALLTYPE CreateShaderResourceView( | |
_In_opt_ ID3D12Resource *pResource, | |
_In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; | |
virtual void STDMETHODCALLTYPE CreateUnorderedAccessView( | |
_In_opt_ ID3D12Resource *pResource, | |
_In_opt_ ID3D12Resource *pCounterResource, | |
_In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; | |
virtual void STDMETHODCALLTYPE CreateRenderTargetView( | |
_In_opt_ ID3D12Resource *pResource, | |
_In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; | |
virtual void STDMETHODCALLTYPE CreateDepthStencilView( | |
_In_opt_ ID3D12Resource *pResource, | |
_In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; | |
virtual void STDMETHODCALLTYPE CreateSampler( | |
_In_ const D3D12_SAMPLER_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor) = 0; | |
virtual void STDMETHODCALLTYPE CopyDescriptors( | |
_In_ UINT NumDestDescriptorRanges, | |
_In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, | |
_In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, | |
_In_ UINT NumSrcDescriptorRanges, | |
_In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, | |
_In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, | |
_In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType) = 0; | |
virtual void STDMETHODCALLTYPE CopyDescriptorsSimple( | |
_In_ UINT NumDescriptors, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, | |
_In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType) = 0; | |
virtual D3D12_RESOURCE_ALLOCATION_INFO STDMETHODCALLTYPE GetResourceAllocationInfo( | |
_In_ UINT visibleMask, | |
_In_ UINT numResourceDescs, | |
_In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs) = 0; | |
virtual D3D12_HEAP_PROPERTIES STDMETHODCALLTYPE GetCustomHeapProperties( | |
_In_ UINT nodeMask, | |
D3D12_HEAP_TYPE heapType) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateCommittedResource( | |
_In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, | |
D3D12_HEAP_FLAGS HeapFlags, | |
_In_ const D3D12_RESOURCE_DESC *pResourceDesc, | |
D3D12_RESOURCE_STATES InitialResourceState, | |
_In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, | |
REFIID riidResource, | |
_COM_Outptr_opt_ void **ppvResource) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateHeap( | |
_In_ const D3D12_HEAP_DESC *pDesc, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvHeap) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreatePlacedResource( | |
_In_ ID3D12Heap *pHeap, | |
UINT64 HeapOffset, | |
_In_ const D3D12_RESOURCE_DESC *pDesc, | |
D3D12_RESOURCE_STATES InitialState, | |
_In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvResource) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateReservedResource( | |
_In_ const D3D12_RESOURCE_DESC *pDesc, | |
D3D12_RESOURCE_STATES InitialState, | |
_In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvResource) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateSharedHandle( | |
_In_ ID3D12DeviceChild *pObject, | |
_In_opt_ const SECURITY_ATTRIBUTES *pAttributes, | |
DWORD Access, | |
_In_opt_ LPCWSTR Name, | |
_Out_ HANDLE *pHandle) = 0; | |
virtual HRESULT STDMETHODCALLTYPE OpenSharedHandle( | |
_In_ HANDLE NTHandle, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvObj) = 0; | |
virtual HRESULT STDMETHODCALLTYPE OpenSharedHandleByName( | |
_In_ LPCWSTR Name, | |
DWORD Access, | |
/* [annotation][out] */ | |
_Out_ HANDLE *pNTHandle) = 0; | |
virtual HRESULT STDMETHODCALLTYPE MakeResident( | |
UINT NumObjects, | |
_In_reads_(NumObjects) ID3D12Pageable *const *ppObjects) = 0; | |
virtual HRESULT STDMETHODCALLTYPE Evict( | |
UINT NumObjects, | |
_In_reads_(NumObjects) ID3D12Pageable *const *ppObjects) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateFence( | |
UINT64 InitialValue, | |
D3D12_FENCE_FLAGS Flags, | |
REFIID riid, | |
_COM_Outptr_ void **ppFence) = 0; | |
virtual HRESULT STDMETHODCALLTYPE GetDeviceRemovedReason( void) = 0; | |
virtual void STDMETHODCALLTYPE GetCopyableFootprints( | |
_In_ const D3D12_RESOURCE_DESC *pResourceDesc, | |
_In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, | |
_In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, | |
UINT64 BaseOffset, | |
_Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, | |
_Out_writes_opt_(NumSubresources) UINT *pNumRows, | |
_Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, | |
_Out_opt_ UINT64 *pTotalBytes) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateQueryHeap( | |
_In_ const D3D12_QUERY_HEAP_DESC *pDesc, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvHeap) = 0; | |
virtual HRESULT STDMETHODCALLTYPE SetStablePowerState( | |
BOOL Enable) = 0; | |
virtual HRESULT STDMETHODCALLTYPE CreateCommandSignature( | |
_In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, | |
_In_opt_ ID3D12RootSignature *pRootSignature, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvCommandSignature) = 0; | |
virtual void STDMETHODCALLTYPE GetResourceTiling( | |
_In_ ID3D12Resource *pTiledResource, | |
_Out_opt_ UINT *pNumTilesForEntireResource, | |
_Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, | |
_Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, | |
_Inout_opt_ UINT *pNumSubresourceTilings, | |
_In_ UINT FirstSubresourceTilingToGet, | |
_Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips) = 0; | |
virtual LUID STDMETHODCALLTYPE GetAdapterLuid( void) = 0; | |
}; | |
#else /* C style interface */ | |
typedef struct ID3D12DeviceVtbl | |
{ | |
BEGIN_INTERFACE | |
HRESULT ( STDMETHODCALLTYPE *QueryInterface )( | |
ID3D12Device * This, | |
REFIID riid, | |
_COM_Outptr_ void **ppvObject); | |
ULONG ( STDMETHODCALLTYPE *AddRef )( | |
ID3D12Device * This); | |
ULONG ( STDMETHODCALLTYPE *Release )( | |
ID3D12Device * This); | |
HRESULT ( STDMETHODCALLTYPE *GetPrivateData )( | |
ID3D12Device * This, | |
_In_ REFGUID guid, | |
_Inout_ UINT *pDataSize, | |
_Out_writes_bytes_opt_( *pDataSize ) void *pData); | |
HRESULT ( STDMETHODCALLTYPE *SetPrivateData )( | |
ID3D12Device * This, | |
_In_ REFGUID guid, | |
_In_ UINT DataSize, | |
_In_reads_bytes_opt_( DataSize ) const void *pData); | |
HRESULT ( STDMETHODCALLTYPE *SetPrivateDataInterface )( | |
ID3D12Device * This, | |
_In_ REFGUID guid, | |
_In_opt_ const IUnknown *pData); | |
HRESULT ( STDMETHODCALLTYPE *SetName )( | |
ID3D12Device * This, | |
_In_z_ LPCWSTR Name); | |
UINT ( STDMETHODCALLTYPE *GetNodeCount )( | |
ID3D12Device * This); | |
HRESULT ( STDMETHODCALLTYPE *CreateCommandQueue )( | |
ID3D12Device * This, | |
_In_ const D3D12_COMMAND_QUEUE_DESC *pDesc, | |
REFIID riid, | |
_COM_Outptr_ void **ppCommandQueue); | |
HRESULT ( STDMETHODCALLTYPE *CreateCommandAllocator )( | |
ID3D12Device * This, | |
_In_ D3D12_COMMAND_LIST_TYPE type, | |
REFIID riid, | |
_COM_Outptr_ void **ppCommandAllocator); | |
HRESULT ( STDMETHODCALLTYPE *CreateGraphicsPipelineState )( | |
ID3D12Device * This, | |
_In_ const D3D12_GRAPHICS_PIPELINE_STATE_DESC *pDesc, | |
REFIID riid, | |
_COM_Outptr_ void **ppPipelineState); | |
HRESULT ( STDMETHODCALLTYPE *CreateComputePipelineState )( | |
ID3D12Device * This, | |
_In_ const D3D12_COMPUTE_PIPELINE_STATE_DESC *pDesc, | |
REFIID riid, | |
_COM_Outptr_ void **ppPipelineState); | |
HRESULT ( STDMETHODCALLTYPE *CreateCommandList )( | |
ID3D12Device * This, | |
_In_ UINT nodeMask, | |
_In_ D3D12_COMMAND_LIST_TYPE type, | |
_In_ ID3D12CommandAllocator *pCommandAllocator, | |
_In_opt_ ID3D12PipelineState *pInitialState, | |
REFIID riid, | |
_COM_Outptr_ void **ppCommandList); | |
HRESULT ( STDMETHODCALLTYPE *CheckFeatureSupport )( | |
ID3D12Device * This, | |
D3D12_FEATURE Feature, | |
_Inout_updates_bytes_(FeatureSupportDataSize) void *pFeatureSupportData, | |
UINT FeatureSupportDataSize); | |
HRESULT ( STDMETHODCALLTYPE *CreateDescriptorHeap )( | |
ID3D12Device * This, | |
_In_ const D3D12_DESCRIPTOR_HEAP_DESC *pDescriptorHeapDesc, | |
REFIID riid, | |
_COM_Outptr_ void **ppvHeap); | |
UINT ( STDMETHODCALLTYPE *GetDescriptorHandleIncrementSize )( | |
ID3D12Device * This, | |
_In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapType); | |
HRESULT ( STDMETHODCALLTYPE *CreateRootSignature )( | |
ID3D12Device * This, | |
_In_ UINT nodeMask, | |
_In_reads_(blobLengthInBytes) const void *pBlobWithRootSignature, | |
_In_ SIZE_T blobLengthInBytes, | |
REFIID riid, | |
_COM_Outptr_ void **ppvRootSignature); | |
void ( STDMETHODCALLTYPE *CreateConstantBufferView )( | |
ID3D12Device * This, | |
_In_opt_ const D3D12_CONSTANT_BUFFER_VIEW_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); | |
void ( STDMETHODCALLTYPE *CreateShaderResourceView )( | |
ID3D12Device * This, | |
_In_opt_ ID3D12Resource *pResource, | |
_In_opt_ const D3D12_SHADER_RESOURCE_VIEW_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); | |
void ( STDMETHODCALLTYPE *CreateUnorderedAccessView )( | |
ID3D12Device * This, | |
_In_opt_ ID3D12Resource *pResource, | |
_In_opt_ ID3D12Resource *pCounterResource, | |
_In_opt_ const D3D12_UNORDERED_ACCESS_VIEW_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); | |
void ( STDMETHODCALLTYPE *CreateRenderTargetView )( | |
ID3D12Device * This, | |
_In_opt_ ID3D12Resource *pResource, | |
_In_opt_ const D3D12_RENDER_TARGET_VIEW_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); | |
void ( STDMETHODCALLTYPE *CreateDepthStencilView )( | |
ID3D12Device * This, | |
_In_opt_ ID3D12Resource *pResource, | |
_In_opt_ const D3D12_DEPTH_STENCIL_VIEW_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); | |
void ( STDMETHODCALLTYPE *CreateSampler )( | |
ID3D12Device * This, | |
_In_ const D3D12_SAMPLER_DESC *pDesc, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptor); | |
void ( STDMETHODCALLTYPE *CopyDescriptors )( | |
ID3D12Device * This, | |
_In_ UINT NumDestDescriptorRanges, | |
_In_reads_(NumDestDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pDestDescriptorRangeStarts, | |
_In_reads_opt_(NumDestDescriptorRanges) const UINT *pDestDescriptorRangeSizes, | |
_In_ UINT NumSrcDescriptorRanges, | |
_In_reads_(NumSrcDescriptorRanges) const D3D12_CPU_DESCRIPTOR_HANDLE *pSrcDescriptorRangeStarts, | |
_In_reads_opt_(NumSrcDescriptorRanges) const UINT *pSrcDescriptorRangeSizes, | |
_In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); | |
void ( STDMETHODCALLTYPE *CopyDescriptorsSimple )( | |
ID3D12Device * This, | |
_In_ UINT NumDescriptors, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE DestDescriptorRangeStart, | |
_In_ D3D12_CPU_DESCRIPTOR_HANDLE SrcDescriptorRangeStart, | |
_In_ D3D12_DESCRIPTOR_HEAP_TYPE DescriptorHeapsType); | |
D3D12_RESOURCE_ALLOCATION_INFO ( STDMETHODCALLTYPE *GetResourceAllocationInfo )( | |
ID3D12Device * This, | |
_In_ UINT visibleMask, | |
_In_ UINT numResourceDescs, | |
_In_reads_(numResourceDescs) const D3D12_RESOURCE_DESC *pResourceDescs); | |
D3D12_HEAP_PROPERTIES ( STDMETHODCALLTYPE *GetCustomHeapProperties )( | |
ID3D12Device * This, | |
_In_ UINT nodeMask, | |
D3D12_HEAP_TYPE heapType); | |
HRESULT ( STDMETHODCALLTYPE *CreateCommittedResource )( | |
ID3D12Device * This, | |
_In_ const D3D12_HEAP_PROPERTIES *pHeapProperties, | |
D3D12_HEAP_FLAGS HeapFlags, | |
_In_ const D3D12_RESOURCE_DESC *pResourceDesc, | |
D3D12_RESOURCE_STATES InitialResourceState, | |
_In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, | |
REFIID riidResource, | |
_COM_Outptr_opt_ void **ppvResource); | |
HRESULT ( STDMETHODCALLTYPE *CreateHeap )( | |
ID3D12Device * This, | |
_In_ const D3D12_HEAP_DESC *pDesc, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvHeap); | |
HRESULT ( STDMETHODCALLTYPE *CreatePlacedResource )( | |
ID3D12Device * This, | |
_In_ ID3D12Heap *pHeap, | |
UINT64 HeapOffset, | |
_In_ const D3D12_RESOURCE_DESC *pDesc, | |
D3D12_RESOURCE_STATES InitialState, | |
_In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvResource); | |
HRESULT ( STDMETHODCALLTYPE *CreateReservedResource )( | |
ID3D12Device * This, | |
_In_ const D3D12_RESOURCE_DESC *pDesc, | |
D3D12_RESOURCE_STATES InitialState, | |
_In_opt_ const D3D12_CLEAR_VALUE *pOptimizedClearValue, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvResource); | |
HRESULT ( STDMETHODCALLTYPE *CreateSharedHandle )( | |
ID3D12Device * This, | |
_In_ ID3D12DeviceChild *pObject, | |
_In_opt_ const SECURITY_ATTRIBUTES *pAttributes, | |
DWORD Access, | |
_In_opt_ LPCWSTR Name, | |
_Out_ HANDLE *pHandle); | |
HRESULT ( STDMETHODCALLTYPE *OpenSharedHandle )( | |
ID3D12Device * This, | |
_In_ HANDLE NTHandle, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvObj); | |
HRESULT ( STDMETHODCALLTYPE *OpenSharedHandleByName )( | |
ID3D12Device * This, | |
_In_ LPCWSTR Name, | |
DWORD Access, | |
/* [annotation][out] */ | |
_Out_ HANDLE *pNTHandle); | |
HRESULT ( STDMETHODCALLTYPE *MakeResident )( | |
ID3D12Device * This, | |
UINT NumObjects, | |
_In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); | |
HRESULT ( STDMETHODCALLTYPE *Evict )( | |
ID3D12Device * This, | |
UINT NumObjects, | |
_In_reads_(NumObjects) ID3D12Pageable *const *ppObjects); | |
HRESULT ( STDMETHODCALLTYPE *CreateFence )( | |
ID3D12Device * This, | |
UINT64 InitialValue, | |
D3D12_FENCE_FLAGS Flags, | |
REFIID riid, | |
_COM_Outptr_ void **ppFence); | |
HRESULT ( STDMETHODCALLTYPE *GetDeviceRemovedReason )( | |
ID3D12Device * This); | |
void ( STDMETHODCALLTYPE *GetCopyableFootprints )( | |
ID3D12Device * This, | |
_In_ const D3D12_RESOURCE_DESC *pResourceDesc, | |
_In_range_(0,D3D12_REQ_SUBRESOURCES) UINT FirstSubresource, | |
_In_range_(0,D3D12_REQ_SUBRESOURCES-FirstSubresource) UINT NumSubresources, | |
UINT64 BaseOffset, | |
_Out_writes_opt_(NumSubresources) D3D12_PLACED_SUBRESOURCE_FOOTPRINT *pLayouts, | |
_Out_writes_opt_(NumSubresources) UINT *pNumRows, | |
_Out_writes_opt_(NumSubresources) UINT64 *pRowSizeInBytes, | |
_Out_opt_ UINT64 *pTotalBytes); | |
HRESULT ( STDMETHODCALLTYPE *CreateQueryHeap )( | |
ID3D12Device * This, | |
_In_ const D3D12_QUERY_HEAP_DESC *pDesc, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvHeap); | |
HRESULT ( STDMETHODCALLTYPE *SetStablePowerState )( | |
ID3D12Device * This, | |
BOOL Enable); | |
HRESULT ( STDMETHODCALLTYPE *CreateCommandSignature )( | |
ID3D12Device * This, | |
_In_ const D3D12_COMMAND_SIGNATURE_DESC *pDesc, | |
_In_opt_ ID3D12RootSignature *pRootSignature, | |
REFIID riid, | |
_COM_Outptr_opt_ void **ppvCommandSignature); | |
void ( STDMETHODCALLTYPE *GetResourceTiling )( | |
ID3D12Device * This, | |
_In_ ID3D12Resource *pTiledResource, | |
_Out_opt_ UINT *pNumTilesForEntireResource, | |
_Out_opt_ D3D12_PACKED_MIP_INFO *pPackedMipDesc, | |
_Out_opt_ D3D12_TILE_SHAPE *pStandardTileShapeForNonPackedMips, | |
_Inout_opt_ UINT *pNumSubresourceTilings, | |
_In_ UINT FirstSubresourceTilingToGet, | |
_Out_writes_(*pNumSubresourceTilings) D3D12_SUBRESOURCE_TILING *pSubresourceTilingsForNonPackedMips); | |
LUID ( STDMETHODCALLTYPE *GetAdapterLuid )( | |
ID3D12Device * This); | |
END_INTERFACE | |
} ID3D12DeviceVtbl; | |
interface ID3D12Device | |
{ | |
CONST_VTBL struct ID3D12DeviceVtbl *lpVtbl; | |
}; | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment