// d3d10umddi.h
typedef struct D3D10DDI_CORELAYER_DEVICECALLBACKS {
PFND3D10DDI_SETERROR_CB pfnSetErrorCb;
PFND3D10DDI_STATE_VS_CONSTBUF_CB pfnStateVsConstBufCb;
PFND3D10DDI_STATE_PS_SRV_CB pfnStatePsSrvCb;
PFND3D10DDI_STATE_PS_SHADER_CB pfnStatePsShaderCb;
PFND3D10DDI_STATE_PS_SAMPLER_CB pfnStatePsSamplerCb;
PFND3D10DDI_STATE_VS_SHADER_CB pfnStateVsShaderCb;
PFND3D10DDI_STATE_PS_CONSTBUF_CB pfnStatePsConstBufCb;
PFND3D10DDI_STATE_IA_INPUTLAYOUT_CB pfnStateIaInputLayoutCb;
PFND3D10DDI_STATE_IA_VERTEXBUF_CB pfnStateIaVertexBufCb;
PFND3D10DDI_STATE_IA_INDEXBUF_CB pfnStateIaIndexBufCb;
PFND3D10DDI_STATE_GS_CONSTBUF_CB pfnStateGsConstBufCb;
PFND3D10DDI_STATE_GS_SHADER_CB pfnStateGsShaderCb;
PFND3D10DDI_STATE_IA_PRIMITIVE_TOPOLOGY_CB pfnStateIaPrimitiveTopologyCb;
PFND3D10DDI_STATE_VS_SRV_CB pfnStateVsSrvCb;
PFND3D10DDI_STATE_VS_SAMPLER_CB pfnStateVsSamplerCb;
PFND3D10DDI_STATE_GS_SRV_CB pfnStateGsSrvCb;
PFND3D10DDI_STATE_GS_SAMPLER_CB pfnStateGsSamplerCb;
PFND3D10DDI_STATE_OM_RENDERTARGETS_CB pfnStateOmRenderTargetsCb;
PFND3D10DDI_STATE_OM_BLENDSTATE_CB pfnStateOmBlendStateCb;
PFND3D10DDI_STATE_OM_DEPTHSTATE_CB pfnStateOmDepthStateCb;
PFND3D10DDI_STATE_RS_RASTSTATE_CB pfnStateRsRastStateCb;
PFND3D10DDI_STATE_SO_TARGETS_CB pfnStateSoTargetsCb;
PFND3D10DDI_STATE_RS_VIEWPORTS_CB pfnStateRsViewportsCb;
PFND3D10DDI_STATE_RS_SCISSOR_CB pfnStateRsScissorCb;
PFND3D10DDI_DISABLE_DEFERRED_STAGING_RESOURCE_DESTRUCTION_CB pfnDisableDeferredStagingResourceDestruction;
PFND3D10DDI_STATE_TEXTFILTERSIZE_CB pfnStateTextFilterSizeCb;
} D3D10DDI_CORELAYER_DEVICECALLBACKS;
View the official Windows Driver Kit DDI referenceNo description available.
The D3D10DDI_CORELAYER_DEVICECALLBACKS structure contains Microsoft Direct3D 10 runtime callback functions that the user-mode display driver can use.
pfnSetErrorCbA pointer to the pfnSetErrorCb function, which the driver uses to send errors back to the Direct3D 10 runtime because many of the driver's functions (in D3D10DDI_DEVICEFUNCS) return void.
pfnStateVsConstBufCbA pointer to the pfnStateVsConstBufCb function.
pfnStatePsSrvCbA pointer to the pfnStatePsSrvCb function.
pfnStatePsShaderCbA pointer to the pfnStatePsShaderCb function.
pfnStatePsSamplerCbA pointer to the pfnStatePsSamplerCb function.
pfnStateVsShaderCbA pointer to the pfnStateVsShaderCb function.
pfnStatePsConstBufCbA pointer to the pfnStatePsConstBufCb function.
pfnStateIaInputLayoutCbA pointer to the pfnStateIaInputLayoutCb function.
pfnStateIaVertexBufCbA pointer to the pfnStateIaVertexBufCb function.
pfnStateIaIndexBufCbA pointer to the pfnStateIaIndexBufCb function.
pfnStateGsConstBufCbA pointer to the pfnStateGsConstBufCb function.
pfnStateGsShaderCbA pointer to the pfnStateGsShaderCb function.
pfnStateIaPrimitiveTopologyCbA pointer to the pfnStateIaPrimitiveTopologyCb function.
pfnStateVsSrvCbA pointer to the pfnStateVsSrvCb function.
pfnStateVsSamplerCbA pointer to the pfnStateVsSamplerCb function.
pfnStateGsSrvCbA pointer to the pfnStateGsSrvCb function.
pfnStateGsSamplerCbA pointer to the pfnStateGsSamplerCb function.
pfnStateOmRenderTargetsCbA pointer to the pfnStateOmRenderTargetsCb function.
pfnStateOmBlendStateCbA pointer to the pfnStateOmBlendStateCb function.
pfnStateOmDepthStateCbA pointer to the pfnStateOmDepthStateCb function.
pfnStateRsRastStateCbA pointer to the pfnStateRsRastStateCb function.
pfnStateSoTargetsCbA pointer to the pfnStateSoTargetsCb function.
pfnStateRsViewportsCbA pointer to the pfnStateRsViewportsCb function.
pfnStateRsScissorCbA pointer to the pfnStateRsScissorCb function.
pfnDisableDeferredStagingResourceDestructionA pointer to the pfnDisableDeferredStagingResourceDestruction function. By default, the Direct3D 10 runtime defers the destruction of staging resources until the driver indicates that the hardware no longer requires them. The driver can call this function to disable this feature if the driver does not require the deferred destruction functionality.
pfnStateTextFilterSizeCbA pointer to the pfnStateTextFilterSizeCb function.
Because the Direct3D 10 runtime might change the function pointers dynamically, the user-mode display driver cannot cache the function pointers directly.
The driver uses the functions with "State" in their name to retrieve the current state of the pipeline.