// dispmprt.h
typedef struct _KMDDOD_INITIALIZATION_DATA {
ULONG Version;
PDXGKDDI_ADD_DEVICE DxgkDdiAddDevice;
PDXGKDDI_START_DEVICE DxgkDdiStartDevice;
PDXGKDDI_STOP_DEVICE DxgkDdiStopDevice;
PDXGKDDI_REMOVE_DEVICE DxgkDdiRemoveDevice;
PDXGKDDI_DISPATCH_IO_REQUEST DxgkDdiDispatchIoRequest;
PDXGKDDI_INTERRUPT_ROUTINE DxgkDdiInterruptRoutine;
PDXGKDDI_DPC_ROUTINE DxgkDdiDpcRoutine;
PDXGKDDI_QUERY_CHILD_RELATIONS DxgkDdiQueryChildRelations;
PDXGKDDI_QUERY_CHILD_STATUS DxgkDdiQueryChildStatus;
PDXGKDDI_QUERY_DEVICE_DESCRIPTOR DxgkDdiQueryDeviceDescriptor;
PDXGKDDI_SET_POWER_STATE DxgkDdiSetPowerState;
PDXGKDDI_NOTIFY_ACPI_EVENT DxgkDdiNotifyAcpiEvent;
PDXGKDDI_RESET_DEVICE DxgkDdiResetDevice;
PDXGKDDI_UNLOAD DxgkDdiUnload;
PDXGKDDI_QUERY_INTERFACE DxgkDdiQueryInterface;
PDXGKDDI_CONTROL_ETW_LOGGING DxgkDdiControlEtwLogging;
PDXGKDDI_QUERYADAPTERINFO DxgkDdiQueryAdapterInfo;
PDXGKDDI_SETPALETTE DxgkDdiSetPalette;
PDXGKDDI_SETPOINTERPOSITION DxgkDdiSetPointerPosition;
PDXGKDDI_SETPOINTERSHAPE DxgkDdiSetPointerShape;
PDXGKDDI_ESCAPE DxgkDdiEscape;
PDXGKDDI_COLLECTDBGINFO DxgkDdiCollectDbgInfo;
PDXGKDDI_ISSUPPORTEDVIDPN DxgkDdiIsSupportedVidPn;
PDXGKDDI_RECOMMENDFUNCTIONALVIDPN DxgkDdiRecommendFunctionalVidPn;
PDXGKDDI_ENUMVIDPNCOFUNCMODALITY DxgkDdiEnumVidPnCofuncModality;
PDXGKDDI_SETVIDPNSOURCEVISIBILITY DxgkDdiSetVidPnSourceVisibility;
PDXGKDDI_COMMITVIDPN DxgkDdiCommitVidPn;
PDXGKDDI_UPDATEACTIVEVIDPNPRESENTPATH DxgkDdiUpdateActiveVidPnPresentPath;
PDXGKDDI_RECOMMENDMONITORMODES DxgkDdiRecommendMonitorModes;
PDXGKDDI_GETSCANLINE DxgkDdiGetScanLine;
PDXGKDDI_QUERYVIDPNHWCAPABILITY DxgkDdiQueryVidPnHWCapability;
PDXGKDDI_PRESENTDISPLAYONLY DxgkDdiPresentDisplayOnly;
PDXGKDDI_STOP_DEVICE_AND_RELEASE_POST_DISPLAY_OWNERSHIP DxgkDdiStopDeviceAndReleasePostDisplayOwnership;
PDXGKDDI_SYSTEM_DISPLAY_ENABLE DxgkDdiSystemDisplayEnable;
PDXGKDDI_SYSTEM_DISPLAY_WRITE DxgkDdiSystemDisplayWrite;
PDXGKDDI_GET_CHILD_CONTAINER_ID DxgkDdiGetChildContainerId;
PDXGKDDI_CONTROLINTERRUPT DxgkDdiControlInterrupt;
PDXGKDDISETPOWERCOMPONENTFSTATE DxgkDdiSetPowerComponentFState;
PDXGKDDIPOWERRUNTIMECONTROLREQUEST DxgkDdiPowerRuntimeControlRequest;
PDXGKDDI_NOTIFY_SURPRISE_REMOVAL DxgkDdiNotifySurpriseRemoval;
PDXGKDDI_POWERRUNTIMESETDEVICEHANDLE DxgkDdiPowerRuntimeSetDeviceHandle;
} KMDDOD_INITIALIZATION_DATA, *PKMDDOD_INITIALIZATION_DATA;
View the official Windows Driver Kit DDI referenceNo description available.
Contains pointers to functions implemented by a kernel mode display-only driver (KMDOD). The KMDOD's DriverEntry function provides the Microsoft DirectX graphics kernel subsystem with entry points by filling in the members of this structure.
VersionA positive integer that indicates the version of the functional interface implemented by the KMDOD. The KMDOD must set this member to DXGKDDI_INTERFACE_VERSION, which is defined in Dispmprt.h.
DxgkDdiAddDeviceA pointer to the KMDOD's DxgkDdiAddDevice function.
DxgkDdiStartDeviceA pointer to the KMDOD's DxgkDdiStartDevice function.
DxgkDdiStopDeviceA pointer to the KMDOD's DxgkDdiStopDevice function.
DxgkDdiRemoveDeviceA pointer to the KMDOD's DxgkDdiRemoveDevice function.
DxgkDdiDispatchIoRequestA pointer to the KMDOD's DxgkDdiDispatchIoRequest function.
DxgkDdiInterruptRoutineA pointer to the KMDOD's DxgkDdiInterruptRoutine function.
Note This function pointer has special requirements. For more information, see Remarks.
DxgkDdiDpcRoutineA pointer to the KMDOD's DxgkDdiDpcRoutine function.
Note This function pointer has special requirements. For more information, see Remarks.
DxgkDdiQueryChildRelationsA pointer to the KMDOD's DxgkDdiQueryChildRelations function.
DxgkDdiQueryChildStatusA pointer to the KMDOD's DxgkDdiQueryChildStatus function.
DxgkDdiQueryDeviceDescriptorA pointer to the KMDOD's DxgkDdiQueryDeviceDescriptor function.
DxgkDdiSetPowerStateA pointer to the KMDOD's DxgkDdiSetPowerState function.
DxgkDdiNotifyAcpiEventA pointer to the KMDOD's DxgkDdiNotifyAcpiEvent function.
DxgkDdiResetDeviceA pointer to the KMDOD's DxgkDdiResetDevice function.
DxgkDdiUnloadA pointer to the KMDOD's DxgkDdiUnload function.
DxgkDdiQueryInterfaceA pointer to the KMDOD's DxgkDdiQueryInterface function.
DxgkDdiControlEtwLoggingA pointer to the KMDOD's DxgkDdiControlEtwLogging function.
DxgkDdiQueryAdapterInfoA pointer to the KMDOD's DxgkDdiQueryAdapterInfo function.
DxgkDdiSetPaletteA pointer to the KMDOD's DxgkDdiSetPalette function that sets the palette for the display.
DxgkDdiSetPointerPositionA pointer to the KMDOD's DxgkDdiSetPointerPosition function.
DxgkDdiSetPointerShapeA pointer to the KMDOD's DxgkDdiSetPointerShape function.
DxgkDdiEscapeA pointer to the KMDOD's DxgkDdiEscape function.
DxgkDdiCollectDbgInfoA pointer to the KMDOD's DxgkDdiCollectDbgInfo function.
DxgkDdiIsSupportedVidPnA pointer to the KMDOD's DxgkDdiIsSupportedVidPn function.
DxgkDdiRecommendFunctionalVidPnA pointer to the KMDOD's DxgkDdiRecommendFunctionalVidPn function.
DxgkDdiEnumVidPnCofuncModalityA pointer to the KMDOD's DxgkDdiEnumVidPnCofuncModality function.
DxgkDdiSetVidPnSourceVisibilityA pointer to the KMDOD's DxgkDdiSetVidPnSourceVisibility function.
DxgkDdiCommitVidPnA pointer to the KMDOD's DxgkDdiCommitVidPn function.
DxgkDdiUpdateActiveVidPnPresentPathA pointer to the KMDOD's DxgkDdiUpdateActiveVidPnPresentPath function.
DxgkDdiRecommendMonitorModesA pointer to the KMDOD's DxgkDdiRecommendMonitorModes function.
DxgkDdiGetScanLineA pointer to the KMDOD's DxgkDdiGetScanLine function.
Note This function pointer has special requirements. For more information, see Remarks.
DxgkDdiQueryVidPnHWCapabilityA pointer to the KMDOD's DxgkDdiQueryVidPnHWCapability function.
DxgkDdiPresentDisplayOnlyA pointer to the KMDOD's DxgkDdiPresentDisplayOnly function.
DxgkDdiStopDeviceAndReleasePostDisplayOwnershipA pointer to the KMDOD's DxgkDdiStopDeviceAndReleasePostDisplayOwnership function.
DxgkDdiSystemDisplayEnableA pointer to the KMDOD's DxgkDdiSystemDisplayEnable function.
DxgkDdiSystemDisplayWriteA pointer to the KMDOD's DxgkDdiSystemDisplayWrite function.
DxgkDdiGetChildContainerIdA pointer to the KMDOD's DxgkDdiGetChildContainerId function.
DxgkDdiControlInterruptA pointer to the KMDOD's DxgkDdiControlInterrupt function.
Note This function pointer has special requirements. For more information, see Remarks.
DxgkDdiSetPowerComponentFStateA pointer to the KMDOD's DxgkDdiSetPowerComponentFState function.
DxgkDdiPowerRuntimeControlRequestA pointer to the KMDOD's DxgkDdiPowerRuntimeControlRequest function.
DxgkDdiNotifySurpriseRemovalA pointer to the KMDOD's DxgkDdiNotifySurpriseRemoval function.
DxgkDdiPowerRuntimeSetDeviceHandleA pointer to the KMDOD's DxgkDdiPowerRuntimeSetDeviceHandle function.
If the kernel mode display-only driver (KMDOD) supports the VSync control feature, it must implement all of the DxgkDdiControlInterrupt, DxgkDdiGetScanLine, DxgkDdiInterruptRoutine, and DxgkDdiDpcRoutine functions and must provide valid function pointers to all of these functions in this structure. Conversely, if the KMDOD does not support the VSync control feature, it must not implement either DxgkDdiControlInterrupt or DxgkDdiGetScanLine functions and must not provide valid function pointers to either of these functions in this structure. For more information, see Saving Energy with VSync Control.
DriverEntry of Display Miniport Driver
DxgkInitializeDisplayOnlyDriver