D3D12DDI_DEVICE_FUNCS_CORE_0010 structure (d3d12umddi.h)

Contains core functions.

Syntax

typedef struct D3D12DDI_DEVICE_FUNCS_CORE_0010 {
  PFND3D12DDI_CHECKFORMATSUPPORT                                   pfnCheckFormatSupport;
  PFND3D12DDI_CHECKMULTISAMPLEQUALITYLEVELS                        pfnCheckMultisampleQualityLevels;
  PFND3D12DDI_GETMIPPACKING                                        pfnGetMipPacking;
  PFND3D12DDI_CALCPRIVATEELEMENTLAYOUTSIZE_0010                    pfnCalcPrivateElementLayoutSize;
  PFND3D12DDI_CREATEELEMENTLAYOUT_0010                             pfnCreateElementLayout;
  PFND3D12DDI_DESTROYELEMENTLAYOUT                                 pfnDestroyElementLayout;
  PFND3D12DDI_CALCPRIVATEBLENDSTATESIZE_0010                       pfnCalcPrivateBlendStateSize;
  PFND3D12DDI_CREATEBLENDSTATE_0010                                pfnCreateBlendState;
  PFND3D12DDI_DESTROYBLENDSTATE                                    pfnDestroyBlendState;
  PFND3D12DDI_CALCPRIVATEDEPTHSTENCILSTATESIZE_0010                pfnCalcPrivateDepthStencilStateSize;
  PFND3D12DDI_CREATEDEPTHSTENCILSTATE_0010                         pfnCreateDepthStencilState;
  PFND3D12DDI_DESTROYDEPTHSTENCILSTATE                             pfnDestroyDepthStencilState;
  PFND3D12DDI_CALCPRIVATERASTERIZERSTATESIZE_0010                  pfnCalcPrivateRasterizerStateSize;
  PFND3D12DDI_CREATERASTERIZERSTATE_0010                           pfnCreateRasterizerState;
  PFND3D12DDI_DESTROYRASTERIZERSTATE                               pfnDestroyRasterizerState;
  PFND3D12DDI_CALC_PRIVATE_SHADER_SIZE_0010                        pfnCalcPrivateShaderSize;
  PFND3D12DDI_CREATE_SHADER_0010                                   pfnCreateVertexShader;
  PFND3D12DDI_CREATE_SHADER_0010                                   pfnCreatePixelShader;
  PFND3D12DDI_CREATE_SHADER_0010                                   pfnCreateGeometryShader;
  PFND3D12DDI_CREATE_SHADER_0010                                   pfnCreateComputeShader;
  PFND3D12DDI_CALC_PRIVATE_GEOMETRY_SHADER_WITH_STREAM_OUTPUT_0010 pfnCalcPrivateGeometryShaderWithStreamOutput;
  PFND3D12DDI_CREATE_GEOMETRY_SHADER_WITH_STREAM_OUTPUT_0010       pfnCreateGeometryShaderWithStreamOutput;
  PFND3D12DDI_CALC_PRIVATE_SHADER_SIZE_0010                        pfnCalcPrivateTessellationShaderSize;
  PFND3D12DDI_CREATE_SHADER_0010                                   pfnCreateHullShader;
  PFND3D12DDI_CREATE_SHADER_0010                                   pfnCreateDomainShader;
  PFND3D12DDI_DESTROYSHADER                                        pfnDestroyShader;
  PFND3D12DDI_CALCPRIVATECOMMANDQUEUESIZE_0001                     pfnCalcPrivateCommandQueueSize;
  PFND3D12DDI_CREATECOMMANDQUEUE_0001                              pfnCreateCommandQueue;
  PFND3D12DDI_DESTROYCOMMANDQUEUE                                  pfnDestroyCommandQueue;
  PFND3D12DDI_CALCPRIVATECOMMANDALLOCATORSIZE                      pfnCalcPrivateCommandAllocatorSize;
  PFND3D12DDI_CREATECOMMANDALLOCATOR                               pfnCreateCommandAllocator;
  PFND3D12DDI_DESTROYCOMMANDALLOCATOR                              pfnDestroyCommandAllocator;
  PFND3D12DDI_RESETCOMMANDALLOCATOR                                pfnResetCommandAllocator;
  PFND3D12DDI_CALC_PRIVATE_PIPELINE_STATE_SIZE_0010                pfnCalcPrivatePipelineStateSize;
  PFND3D12DDI_CREATE_PIPELINE_STATE_0010                           pfnCreatePipelineState;
  PFND3D12DDI_DESTROY_PIPELINE_STATE                               pfnDestroyPipelineState;
  PFND3D12DDI_CALC_PRIVATE_COMMAND_LIST_SIZE_0001                  pfnCalcPrivateCommandListSize;
  PFND3D12DDI_CREATE_COMMAND_LIST_0001                             pfnCreateCommandList;
  PFND3D12DDI_DESTROYCOMMANDLIST                                   pfnDestroyCommandList;
  PFND3D12DDI_CALCPRIVATEFENCESIZE                                 pfnCalcPrivateFenceSize;
  PFND3D12DDI_CREATEFENCE                                          pfnCreateFence;
  PFND3D12DDI_DESTROYFENCE                                         pfnDestroyFence;
  PFND3D12DDI_CALC_PRIVATE_DESCRIPTOR_HEAP_SIZE_0001               pfnCalcPrivateDescriptorHeapSize;
  PFND3D12DDI_CREATE_DESCRIPTOR_HEAP_0001                          pfnCreateDescriptorHeap;
  PFND3D12DDI_DESTROY_DESCRIPTOR_HEAP                              pfnDestroyDescriptorHeap;
  PFND3D12DDI_GET_DESCRIPTOR_SIZE_IN_BYTES                         pfnGetDescriptorSizeInBytes;
  PFND3D12DDI_GET_CPU_DESCRIPTOR_HANDLE_FOR_HEAP_START             pfnGetCPUDescriptorHandleForHeapStart;
  PFND3D12DDI_GET_GPU_DESCRIPTOR_HANDLE_FOR_HEAP_START             pfnGetGPUDescriptorHandleForHeapStart;
  PFND3D12DDI_CREATE_SHADER_RESOURCE_VIEW_0002                     pfnCreateShaderResourceView;
  PFND3D12DDI_CREATE_CONSTANT_BUFFER_VIEW                          pfnCreateConstantBufferView;
  PFND3D12DDI_CREATE_SAMPLER                                       pfnCreateSampler;
  PFND3D12DDI_CREATE_UNORDERED_ACCESS_VIEW_0002                    pfnCreateUnorderedAccessView;
  PFND3D12DDI_CREATE_RENDER_TARGET_VIEW_0002                       pfnCreateRenderTargetView;
  PFND3D12DDI_CREATE_DEPTH_STENCIL_VIEW                            pfnCreateDepthStencilView;
  PFND3D12DDI_CALC_PRIVATE_ROOT_SIGNATURE_SIZE_0001                pfnCalcPrivateRootSignatureSize;
  PFND3D12DDI_CREATE_ROOT_SIGNATURE_0001                           pfnCreateRootSignature;
  PFND3D12DDI_DESTROY_ROOT_SIGNATURE                               pfnDestroyRootSignature;
  PFND3D12DDI_MAPHEAP                                              pfnMapHeap;
  PFND3D12DDI_UNMAPHEAP                                            pfnUnmapHeap;
  PFND3D12DDI_CALCPRIVATEHEAPANDRESOURCESIZES_0003                 pfnCalcPrivateHeapAndResourceSizes;
  PFND3D12DDI_CREATEHEAPANDRESOURCE_0003                           pfnCreateHeapAndResource;
  PFND3D12DDI_DESTROYHEAPANDRESOURCE                               pfnDestroyHeapAndResource;
  PFND3D12DDI_MAKERESIDENT_0001                                    pfnMakeResident;
  PFND3D12DDI_EVICT2                                               pfnEvict;
  PFND3D12DDI_CALCPRIVATEOPENEDHEAPANDRESOURCESIZES_0003           pfnCalcPrivateOpenedHeapAndResourceSizes;
  PFND3D12DDI_OPENHEAPANDRESOURCE_0003                             pfnOpenHeapAndResource;
  PFND3D12DDI_COPY_DESCRIPTORS_0003                                pfnCopyDescriptors;
  PFND3D12DDI_COPY_DESCRIPTORS_SIMPLE_0003                         pfnCopyDescriptorsSimple;
  PFND3D12DDI_CALC_PRIVATE_QUERY_HEAP_SIZE_0001                    pfnCalcPrivateQueryHeapSize;
  PFND3D12DDI_CREATE_QUERY_HEAP_0001                               pfnCreateQueryHeap;
  PFND3D12DDI_DESTROY_QUERY_HEAP                                   pfnDestroyQueryHeap;
  PFND3D12DDI_CALC_PRIVATE_COMMAND_SIGNATURE_SIZE_0001             pfnCalcPrivateCommandSignatureSize;
  PFND3D12DDI_CREATE_COMMAND_SIGNATURE_0001                        pfnCreateCommandSignature;
  PFND3D12DDI_DESTROY_COMMAND_SIGNATURE                            pfnDestroyCommandSignature;
  PFND3D12DDI_CHECKRESOURCEVIRTUALADDRESS                          pfnCheckResourceVirtualAddress;
  PFND3D12DDI_CHECKRESOURCEALLOCATIONINFO_0003                     pfnCheckResourceAllocationInfo;
  PFND3D12DDI_CHECKSUBRESOURCEINFO                                 pfnCheckSubresourceInfo;
  PFND3D12DDI_CHECKEXISITINGRESOURCEALLOCATIONINFO                 pfnCheckExistingResourceAllocationInfo;
  PFND3D12DDI_OFFERRESOURCES                                       pfnOfferResources;
  PFND3D12DDI_RECLAIMRESOURCES_0001                                pfnReclaimResources;
  PFND3D12DDI_GETIMPLICITPHYSICALADAPTERMASK                       pfnGetImplicitPhysicalAdapterMask;
  PFND3D12DDI_GET_PRESENT_PRIVATE_DRIVER_DATA_SIZE                 pfnGetPresentPrivateDriverDataSize;
  PFND3D12DDI_QUERY_NODE_MAP                                       pfnQueryNodeMap;
  PFND3D12DDI_RETRIEVE_SHADER_COMMENT_0003                         pfnRetrieveShaderComment;
  PFND3D12DDI_CHECKRESOURCEALLOCATIONHANDLE                        pfnCheckResourceAllocationHandle;
  PFND3D12DDI_CALC_PRIVATE_PIPELINE_LIBRARY_SIZE_0010              pfnCalcPrivatePipelineLibrarySize;
  PFND3D12DDI_CREATE_PIPELINE_LIBRARY_0010                         pfnCreatePipelineLibrary;
  PFND3D12DDI_DESTROY_PIPELINE_LIBRARY_0010                        pfnDestroyPipelineLibrary;
  PFND3D12DDI_ADD_PIPELINE_STATE_TO_LIBRARY_0010                   pfnAddPipelineStateToLibrary;
  PFND3D12DDI_CALC_SERIALIZED_LIBRARY_SIZE_0010                    pfnCalcSerializedLibrarySize;
  PFND3D12DDI_SERIALIZE_LIBRARY_0010                               pfnSerializeLibrary;
} D3D12DDI_DEVICE_FUNCS_CORE_0010;

Members

pfnCheckFormatSupport

A function that checks format support. See pfnCheckFormatSupport.

pfnCheckMultisampleQualityLevels

A function that checks multi-sample quality levels. See pfnCheckMultisampleQualityLevels.

pfnGetMipPacking

A function that gets MIP packing. See pfnGetMipPacking.

pfnCalcPrivateElementLayoutSize

A function that calculates layout size for a private element. pfnCalcPrivateElementLayoutSize.

pfnCreateElementLayout

A function that creates an element layout. See pfnCreateElementLayout.

pfnDestroyElementLayout

A function that destroys an element layout. See pfnDestroyElementLayout.

pfnCalcPrivateBlendStateSize

A function that calculates the size of a private blend state. See pfnCalcPrivateBlendStateSize.

pfnCreateBlendState

A function that creates a blend state. See pfnCreateBlendState.

pfnDestroyBlendState

A function that destroys a blend state. See pfnDestroyBlendState.

pfnCalcPrivateDepthStencilStateSize

A function that calculates the size of the state of a private depth stencil. See pfnCalcPrivateDepthStencilStateSize.

pfnCreateDepthStencilState

A function that creates a depth stencil state. See pfnCreateDepthStencilState.

pfnDestroyDepthStencilState

A function that destroys a depth stencil state. See pfnDestroyDepthStencilState.

pfnCalcPrivateRasterizerStateSize

A function that calculates the size of a private rasterizer state. See pfnCalcPrivateRasterizerStateSize.

pfnCreateRasterizerState

A function that creates a rasterizer state. See pfnCreateRasterizerState.

pfnDestroyRasterizerState

A function that destroys a rasterizer state. See pfnDestroyRasterizerState.

pfnCalcPrivateShaderSize

A function that calculates the size of a private shader. See pfnCalcPrivateShaderSize.

pfnCreateVertexShader

A function that creates a vertex shader. See PFND3D12DDI_CREATE_SHADER_0010.

pfnCreatePixelShader

A function that creates a shader. See PFND3D12DDI_CREATE_SHADER_0010.

pfnCreateGeometryShader

A function that creates a geometry shader. See PFND3D12DDI_CREATE_SHADER_0010.

pfnCreateComputeShader

A function that creates a compute shader. See PFND3D12DDI_CREATE_SHADER_0010.

pfnCalcPrivateGeometryShaderWithStreamOutput

A function that calculates a private geometry shader with stream output. See pfnCalcPrivateGeometryShaderWithStreamOutput.

pfnCreateGeometryShaderWithStreamOutput

A function that creates a private geometry shader with stream output. See pfnCreateGeometryShaderWithStreamOutput.

pfnCalcPrivateTessellationShaderSize

A function that creates private tessellation shader size. See pfnCalcPrivateTessellationShaderSize.

pfnCreateHullShader

A function that creates a hull shader. See pfnCreateHullShader.

pfnCreateDomainShader

A function that creates a domain shader. See pfnCreateDomainShader.

pfnDestroyShader

A function that destroys a shader. See pfnDestroyShader.

pfnCalcPrivateCommandQueueSize

A function that calculates the size of a private queue. See pfnCalcPrivateCommandQueueSize.

pfnCreateCommandQueue

A function that creates a command queue. See pfnCreateCommandQueue.

pfnDestroyCommandQueue

A function that destroys a command queue. See pfnDestroyCommandQueue.

pfnCalcPrivateCommandAllocatorSize

A function that calculates the size of a private command allocator. See pfnCalcPrivateCommandAllocatorSize.

pfnCreateCommandAllocator

A function that creates a command allocator. See pfnCreateCommandAllocator.

pfnDestroyCommandAllocator

A function that destroys a command allocator. See pfnDestroyCommandAllocator.

pfnResetCommandAllocator

A function that resets a command allocator. See pfnResetCommandAllocator.

pfnCalcPrivatePipelineStateSize

A function that calculate the size of a private pipeline state. See pfnCalcPrivatePipelineStateSize.

pfnCreatePipelineState

A function that crates a pipeline state. See pfnCreatePipelineState.

pfnDestroyPipelineState

A function that destroys a pipeline state. See pfnDestroyPipelineState.

pfnCalcPrivateCommandListSize

A function that calculate the size of a private command list. See pfnCalcPrivateCommandListSize.

pfnCreateCommandList

A function that creates a command list. See pfnCreateCommandList.

pfnDestroyCommandList

A function that destroys a command list. See pfnDestroyCommandList.

pfnCalcPrivateFenceSize

A function that calculates a private fence size. See pfnCalcPrivateFenceSize.

pfnCreateFence

A function that creates a fence. See pfnCreateFence.

pfnDestroyFence

A function that destroys a fence. See pfnDestroyFence.

pfnCalcPrivateDescriptorHeapSize

A function that calculates the size of a private descriptor heap. See pfnCalcPrivateDescriptorHeapSize.

pfnCreateDescriptorHeap

A function that creates a descriptor heap. See pfnCreateDescriptorHeap.

pfnDestroyDescriptorHeap

A function that destroys a descriptor heap. See pfnDestroyDescriptorHeap.

pfnGetDescriptorSizeInBytes

A function that gets the descriptor size, in bytes. See pfnGetDescriptorSizeInBytes.

pfnGetCPUDescriptorHandleForHeapStart

A function that gets a CPU descriptor handle. See pfnGetCPUDescriptorHandleForHeapStart.

pfnGetGPUDescriptorHandleForHeapStart

A function that gets a GPU descriptor handle. See pfnGetGPUDescriptorHandleForHeapStart.

pfnCreateShaderResourceView

A function that creates a shader resource view. See pfnCreateShaderResourceView.

pfnCreateConstantBufferView

A function that creates a constant buffer view. See pfnCreateConstantBufferView.

pfnCreateSampler

A function that creates a sampler. See pfnCreateSampler.

pfnCreateUnorderedAccessView

A function that creates an unordered access view. See pfnCreateUnorderedAccessView.

pfnCreateRenderTargetView

A function that creates a render target view. See pfnCreateRenderTargetView.

pfnCreateDepthStencilView

A function that creates a depth stencil view. See pfnCreateDepthStencilView.

pfnCalcPrivateRootSignatureSize

A function that calculates the size of a private root signature. See pfnCalcPrivateRootSignatureSize.

pfnCreateRootSignature

A function that creates a root signature. See pfnCreateRootSignature.

pfnDestroyRootSignature

A function that destroys a root signature. See pfnDestroyRootSignature.

pfnMapHeap

A function that maps a heap. See pfnMapHeap.

pfnUnmapHeap

A function that unmaps a heap. See pfnUnmapHeap.

pfnCalcPrivateHeapAndResourceSizes

A function that calculates sizes for private heap and resource. See pfnCalcPrivateHeapAndResourceSizes.

pfnCreateHeapAndResource

A function that create a heap and resource. See pfnCreateHeapAndResource.

pfnDestroyHeapAndResource

A function that destroys a heap and resource. See pfnDestroyHeapAndResource.

pfnMakeResident

A function that makes a resident. See pfnMakeResident.

pfnEvict

A function that evicts. See pfnEvict.

pfnCalcPrivateOpenedHeapAndResourceSizes

A function that calculates sizes for private opened heap and resources. See pfnCalcPrivateOpenedHeapAndResourceSizes.

pfnOpenHeapAndResource

A function that opens a heap and resource. See pfnOpenHeapAndResource.

pfnCopyDescriptors

A function that copies descriptors. See pfnCopyDescriptors.

pfnCopyDescriptorsSimple

A function that does a simple copy of descriptors. See pfnCopyDescriptorsSimple.

pfnCalcPrivateQueryHeapSize

A function that calculates the size of a private query heap. See pfnCalcPrivateQueryHeapSize.

pfnCreateQueryHeap

A function that creates a query heap. See pfnCreateQueryHeap.

pfnDestroyQueryHeap

A function that destroys a query heap. See pfnDestroyQueryHeap.

pfnCalcPrivateCommandSignatureSize

A function that calculates the size of a private command signature. See pfnCalcPrivateCommandSignatureSize.

pfnCreateCommandSignature

A function that creates a command signature. See pfnCreateCommandSignature.

pfnDestroyCommandSignature

A function that destroys a command signature. See pfnDestroyCommandSignature.

pfnCheckResourceVirtualAddress

A function that checks the virtual address of a resource. See pfnCheckResourceVirtualAddress.

pfnCheckResourceAllocationInfo

A function that checks allocation information of a resource. See pfnCheckResourceAllocationInfo.

pfnCheckSubresourceInfo

A function that checks information of a subresource. See pfnCheckSubresourceInfo.

pfnCheckExistingResourceAllocationInfo

A function that checks allocation information of an existing resource. See pfnCheckExistingResourceAllocationInfo.

pfnOfferResources

A function that offers resources. See pfnOfferResources.

pfnReclaimResources

A function that reclaims resources. See pfnReclaimResources.

pfnGetImplicitPhysicalAdapterMask

A function that gets an implicit physical adapter mask. See pfnGetImplicitPhysicalAdapterMask.

pfnGetPresentPrivateDriverDataSize

A function that gets the present size of private driver data. See pfnGetPresentPrivateDriverDataSize.

pfnQueryNodeMap

A function that queries a node map. See pfnQueryNodeMap.

pfnRetrieveShaderComment

A function that retrieves a shader comment. See pfnRetrieveShaderComment.

pfnCheckResourceAllocationHandle

A function that checks a resource allocation handle. See pfnCheckResourceAllocationHandle.

pfnCalcPrivatePipelineLibrarySize

A function that calculates the size of a private pipeline library. See pfnCalcPrivatePipelineLibrarySize.

pfnCreatePipelineLibrary

A function that creates a pipeline library. See pfnCreatePipelineLibrary.

pfnDestroyPipelineLibrary

A function that destroys a pipeline library. See pfnDestroyPipelineLibrary.

pfnAddPipelineStateToLibrary

A function that adds pipeline state to a library. See pfnAddPipelineStateToLibrary.

pfnCalcSerializedLibrarySize

A function that calculates the size of a serialized library. See pfnCalcSerializedLibrarySize.

pfnSerializeLibrary

A function that serializes a library. See pfnSerializeLibrary.

Requirements

Requirement Value
Header d3d12umddi.h (include D3d12umddi.h)