// d3d12umddi.h
typedef struct D3D12DDI_DEVICE_FUNCS_CORE_0021 {
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_0021 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_0013 pfnCalcPrivateRootSignatureSize;
PFND3D12DDI_CREATE_ROOT_SIGNATURE_0013 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;
PFND3D12DDI_GET_DEBUG_ALLOCATION_INFO_0014 pfnGetDebugAllocationInfo;
} D3D12DDI_DEVICE_FUNCS_CORE_0021;
View the official Windows Driver Kit DDI referenceNo description available.
Specifies core device functions.
pfnCheckFormatSupportpfnCheckMultisampleQualityLevelspfnGetMipPackingpfnCalcPrivateElementLayoutSizepfnCreateElementLayoutpfnDestroyElementLayoutpfnCalcPrivateBlendStateSizepfnCreateBlendStatepfnDestroyBlendStatepfnCalcPrivateDepthStencilStateSizepfnCreateDepthStencilStatepfnDestroyDepthStencilStatepfnCalcPrivateRasterizerStateSizepfnCreateRasterizerStatepfnDestroyRasterizerStatepfnCalcPrivateShaderSizepfnCreateVertexShaderpfnCreatePixelShaderpfnCreateGeometryShaderpfnCreateComputeShaderpfnCalcPrivateGeometryShaderWithStreamOutputpfnCreateGeometryShaderWithStreamOutputpfnCalcPrivateTessellationShaderSizepfnCreateHullShaderpfnCreateDomainShaderpfnDestroyShaderpfnCalcPrivateCommandQueueSizepfnCreateCommandQueuepfnDestroyCommandQueuepfnCalcPrivateCommandAllocatorSizepfnCreateCommandAllocatorpfnDestroyCommandAllocatorpfnResetCommandAllocatorpfnCalcPrivatePipelineStateSizeA callback function that calculates the size of a private pipeline state.
pfnCreatePipelineStateA callback function that creates a pipeline state.
pfnDestroyPipelineStateA callback function that destroys a pipeline state.
pfnCalcPrivateCommandListSizepfnCreateCommandListpfnDestroyCommandListpfnCalcPrivateFenceSizepfnCreateFencepfnDestroyFencepfnCalcPrivateDescriptorHeapSizepfnCreateDescriptorHeappfnDestroyDescriptorHeappfnGetDescriptorSizeInBytespfnGetCPUDescriptorHandleForHeapStartpfnGetGPUDescriptorHandleForHeapStartpfnCreateShaderResourceViewpfnCreateConstantBufferViewpfnCreateSamplerpfnCreateUnorderedAccessViewpfnCreateRenderTargetViewpfnCreateDepthStencilViewpfnCalcPrivateRootSignatureSizepfnCreateRootSignaturepfnDestroyRootSignaturepfnMapHeappfnUnmapHeappfnCalcPrivateHeapAndResourceSizespfnCreateHeapAndResourcepfnDestroyHeapAndResourcepfnMakeResidentpfnEvictpfnCalcPrivateOpenedHeapAndResourceSizespfnOpenHeapAndResourcepfnCopyDescriptorspfnCopyDescriptorsSimplepfnCalcPrivateQueryHeapSizepfnCreateQueryHeappfnDestroyQueryHeappfnCalcPrivateCommandSignatureSizepfnCreateCommandSignaturepfnDestroyCommandSignaturepfnCheckResourceVirtualAddresspfnCheckResourceAllocationInfopfnCheckSubresourceInfopfnCheckExistingResourceAllocationInfopfnOfferResourcespfnReclaimResourcespfnGetImplicitPhysicalAdapterMaskpfnGetPresentPrivateDriverDataSizepfnQueryNodeMappfnRetrieveShaderCommentpfnCheckResourceAllocationHandlepfnCalcPrivatePipelineLibrarySizepfnCreatePipelineLibrarypfnDestroyPipelineLibrarypfnAddPipelineStateToLibrarypfnCalcSerializedLibrarySizepfnSerializeLibrarypfnGetDebugAllocationInfo