KMDDOD_INITIALIZATION_DATA结构(dispmprt.h)
包含由内核模式仅显示驱动程序(KMDOD)实现的函数的指针。 KMDOD 的 DriverEntry 函数通过填写此结构的成员,提供具有入口点的 Microsoft DirectX 图形内核子系统。
语法
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;
成员
Version
一个正整数,指示 KMDOD 实现的功能接口的版本。 KMDOD 必须将此成员设置为 DXGKDDI_INTERFACE_VERSION,该成员在 Dispmprt.h 中定义。
DxgkDdiAddDevice
指向 KMDOD 的 DxgkDdiAddDevice 函数的指针。
DxgkDdiStartDevice
指向 KMDOD DxgkDdiStartDevice 函数的指针。
DxgkDdiStopDevice
指向 KMDOD DxgkDdiStopDevice 函数的指针。
DxgkDdiRemoveDevice
指向 KMDOD DxgkDdiRemoveDevice 函数的指针。
DxgkDdiDispatchIoRequest
指向 KMDOD DxgkDdiDispatchIoRequest 函数的指针。
DxgkDdiInterruptRoutine
指向 KMDOD DxgkDdiInterruptRoutine 函数的指针。
DxgkDdiDpcRoutine
指向 KMDOD 的 DxgkDdiDpcRoutine 函数的指针。
DxgkDdiQueryChildRelations
指向 KMDOD DxgkDdiQueryChildRelations 函数的指针。
DxgkDdiQueryChildStatus
指向 KMDOD DxgkDdiQueryChildStatus 函数的指针。
DxgkDdiQueryDeviceDescriptor
指向 KMDOD DxgkDdiQueryDeviceDescriptor 函数的指针。
DxgkDdiSetPowerState
指向 KMDOD 的 DxgkDdiSetPowerState 函数的指针。
DxgkDdiNotifyAcpiEvent
指向 KMDOD DxgkDdiNotifyAcpiEvent 函数的指针。
DxgkDdiResetDevice
指向 KMDOD 的 DxgkDdiResetDevice 函数的指针。
DxgkDdiUnload
指向 KMDOD DxgkDdiUnload 函数的指针。
DxgkDdiQueryInterface
指向 KMDOD DxgkDdiQueryInterface 函数的指针。
DxgkDdiControlEtwLogging
指向 KMDOD DxgkDdiControlEtwLogging 函数的指针。
DxgkDdiQueryAdapterInfo
指向 KMDOD DxgkDdiQueryAdapterInfo 函数的指针。
DxgkDdiSetPalette
指向 KMDOD DxgkDdiSetPalette 函数的指针,用于设置显示的调色板。
DxgkDdiSetPointerPosition
指向 KMDOD DxgkDdiSetPointerPosition 函数的指针。
DxgkDdiSetPointerShape
指向 KMDOD DxgkDdiSetPointerShape 函数的指针。
DxgkDdiEscape
指向 KMDOD DxgkDdiEscape 函数的指针。
DxgkDdiCollectDbgInfo
指向 KMDOD DxgkDdiCollectDbgInfo 函数的指针。
DxgkDdiIsSupportedVidPn
指向 KMDOD 的 DxgkDdiIsSupportedVidPn 函数的指针。
DxgkDdiRecommendFunctionalVidPn
指向 KMDOD DxgkDdiRecommendFunctionalVidPn 函数的指针。
DxgkDdiEnumVidPnCofuncModality
指向 KMDOD 的 DxgkDdiEnumVidPnCofuncModality 函数的指针。
DxgkDdiSetVidPnSourceVisibility
指向 KMDOD DxgkDdiSetVidPnSourceVisibility 函数的指针。
DxgkDdiCommitVidPn
指向 KMDOD DxgkDdiCommitVidPn 函数的指针。
DxgkDdiUpdateActiveVidPnPresentPath
指向 KMDOD 的 DxgkDdiUpdateActiveVidPnPresentPath 函数的指针。
DxgkDdiRecommendMonitorModes
指向 KMDOD DxgkDdiRecommendMonitorModes 函数的指针。
DxgkDdiGetScanLine
指向 KMDOD DxgkDdiGetScanLine 函数的指针。
DxgkDdiQueryVidPnHWCapability
指向 KMDOD DxgkDdiQueryVidPnHWCapability 函数的指针。
DxgkDdiPresentDisplayOnly
指向 KMDOD DxgkDdiPresentDisplayOnly 函数的指针。
DxgkDdiStopDeviceAndReleasePostDisplayOwnership
指向 KMDOD 的 DxgkDdiStopDeviceAndReleasePostDisplayOwnership 函数的指针。
DxgkDdiSystemDisplayEnable
指向 KMDOD 的 DxgkDdiSystemDisplayEnable 函数的指针。
DxgkDdiSystemDisplayWrite
指向 KMDOD DxgkDdiSystemDisplayWrite 函数的指针。
DxgkDdiGetChildContainerId
指向 KMDOD 的 DxgkDdiGetChildContainerId 函数的指针。
DxgkDdiControlInterrupt
指向 KMDOD DxgkDdiControlInterrupt 函数的指针。
DxgkDdiSetPowerComponentFState
指向 KMDOD DxgkDdiSetPowerComponentFState 函数的指针。
DxgkDdiPowerRuntimeControlRequest
指向 KMDOD DxgkDdiPowerRuntimeControlRequest 函数的指针。
DxgkDdiNotifySurpriseRemoval
指向 KMDOD DxgkDdiNotifySurpriseRemoval 函数的指针。
DxgkDdiPowerRuntimeSetDeviceHandle
指向 KMDOD 的 DxgkDdiPowerRuntimeSetDeviceHandle 函数的指针。
言论
如果内核模式仅显示驱动程序 (KMDOD) 支持 VSync 控制功能, 它必须实现所有 DxgkDdiControlInterrupt、DxgkDdiGetScanLine、DxgkDdiInterruptRoutine,DxgkDdiDpcRoutine 函数,并且必须提供指向此结构中所有这些函数的有效函数指针。 相反,如果 KMDOD 不支持 VSync 控制功能,则它不得实现 DxgkDdiControlInterrupt 或 DxgkDdiGetScanLine 函数,并且不能提供指向此结构中任一函数的有效函数指针。 有关详细信息,请参阅 使用 VSync Control节能。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | Windows 8 |
支持的最低服务器 | Windows Server 2012 |
标头 | dispmprt.h (包括 Dispmprt.h) |