| #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