structure KMDDOD_INITIALIZATION_DATA (dispmprt.h)
Contient des pointeurs vers les fonctions implémentées par un pilote d’affichage uniquement en mode noyau (KMDOD). La fonction DriverEntry de KMDOD fournit au sous-système du noyau graphique Microsoft DirectX des points d’entrée en remplissant les membres de cette structure.
Syntaxe
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;
Membres
Version
Entier positif qui indique la version de l’interface fonctionnelle implémentée par le KMDOD. Le KMDOD doit définir ce membre sur DXGKDDI_INTERFACE_VERSION, ce qui est défini dans Dispmprt.h.
DxgkDdiAddDevice
Pointeur vers la fonction DxgkDdiAddDevice du KMDOD.
DxgkDdiStartDevice
Pointeur vers la fonction DxgkDdiStartDevice du KMDOD.
DxgkDdiStopDevice
Pointeur vers la fonction DxgkDdiStopDevice du KMDOD.
DxgkDdiRemoveDevice
Pointeur vers la fonction DxgkDdiRemoveDevice du KMDOD.
DxgkDdiDispatchIoRequest
Pointeur vers la fonction DxgkDdiDispatchIoRequest du KMDOD.
DxgkDdiInterruptRoutine
Pointeur vers la fonction DxgkDdiInterruptRoutine du KMDOD.
DxgkDdiDpcRoutine
Pointeur vers la fonction DxgkDdiDpcRoutine du KMDOD.
DxgkDdiQueryChildRelations
Pointeur vers la fonction DxgkDdiQueryChildRelations de KMDOD.
DxgkDdiQueryChildStatus
Pointeur vers la fonction DxgkDdiQueryChildStatus du KMDOD.
DxgkDdiQueryDeviceDescriptor
Pointeur vers la fonction DxgkDdiQueryDeviceDescriptor de KMDOD.
DxgkDdiSetPowerState
Pointeur vers la fonction DxgkDdiSetPowerState du KMDOD.
DxgkDdiNotifyAcpiEvent
Pointeur vers la fonction DxgkDdiNotifyAcpiEvent du KMDOD.
DxgkDdiResetDevice
Pointeur vers la fonction DxgkDdiResetDevice du KMDOD.
DxgkDdiUnload
Pointeur vers la fonction DxgkDdiUnload du KMDOD.
DxgkDdiQueryInterface
Pointeur vers la fonction DxgkDdiQueryInterface du KMDOD.
DxgkDdiControlEtwLogging
Pointeur vers la fonction DxgkDdiControlEtwLogging du KMDOD.
DxgkDdiQueryAdapterInfo
Pointeur vers la fonction DxgkDdiQueryAdapterInfo du KMDOD.
DxgkDdiSetPalette
Pointeur vers la fonction DxgkDdiSetPalette du KMDOD qui définit la palette pour l’affichage.
DxgkDdiSetPointerPosition
Pointeur vers la fonction DxgkDdiSetPointerPosition du KMDOD.
DxgkDdiSetPointerShape
Pointeur vers la fonction DxgkDdiSetPointerShape du KMDOD.
DxgkDdiEscape
Pointeur vers la fonction DxgkDdiEscape du KMDOD.
DxgkDdiCollectDbgInfo
Pointeur vers la fonction DxgkDdiCollectDbgInfo du KMDOD.
DxgkDdiIsSupportedVidPn
Pointeur vers la fonction DxgkDdiIsSupportedVidPn du KMDOD.
DxgkDdiRecommendFunctionalVidPn
Pointeur vers la fonction DxgkDdiRecommendFunctionalVidPn de KMDOD.
DxgkDdiEnumVidPnCofuncModality
Pointeur vers la fonction DxgkDdiEnumVidPnCofuncModality de KMDOD.
DxgkDdiSetVidPnSourceVisibility
Pointeur vers la fonction DxgkDdiSetVidPnSourceVisibility du KMDOD.
DxgkDdiCommitVidPn
Pointeur vers la fonction DxgkDdiCommitVidPn du KMDOD.
DxgkDdiUpdateActiveVidPnPresentPath
Pointeur vers la fonction DxgkDdiUpdateActiveVidPnPresentPath de KMDOD.
DxgkDdiRecommendMonitorModes
Pointeur vers la fonction DxgkDdiRecommendMonitorModes du KMDOD.
DxgkDdiGetScanLine
Pointeur vers la fonction DxgkDdiGetScanLine du KMDOD.
DxgkDdiQueryVidPnHWCapability
Pointeur vers la fonction DxgkDdiQueryVidPnHWCapability de KMDOD.
DxgkDdiPresentDisplayOnly
Pointeur vers la fonction DxgkDdiPresentDisplayOnly de KMDOD.
DxgkDdiStopDeviceAndReleasePostDisplayOwnership
Pointeur vers la fonction DxgkDdiStopDeviceAndReleasePostDisplayOwnership de KMDOD.
DxgkDdiSystemDisplayEnable
Pointeur vers la fonction DxgkDdiSystemDisplayEnable de KMDOD.
DxgkDdiSystemDisplayWrite
Pointeur vers la fonction DxgkDdiSystemDisplayWrite de KMDOD.
DxgkDdiGetChildContainerId
Pointeur vers la fonction DxgkDdiGetChildContainerId du KMDOD.
DxgkDdiControlInterrupt
Pointeur vers la fonction DxgkDdiControlInterrupt du KMDOD.
DxgkDdiSetPowerComponentFState
Pointeur vers la fonction DxgkDdiSetPowerComponentFState de KMDOD.
DxgkDdiPowerRuntimeControlRequest
Pointeur vers la fonction DxgkDdiPowerRuntimeControlRequest de KMDOD.
DxgkDdiNotifySurpriseRemoval
Pointeur vers la fonction DxgkDdiNotifySurpriseRemoval de KMDOD.
DxgkDdiPowerRuntimeSetDeviceHandle
Pointeur vers la fonction DxgkDdiPowerRuntimeSetDeviceHandle de KMDOD.
Remarques
Si le pilote d’affichage uniquement en mode noyau (KMDOD) prend en charge la fonctionnalité de contrôle VSync, il doit implémenter toutes les fonctions DxgkDdiControlInterrupt, DxgkDdiGetScanLine, DxgkDdiInterruptRoutine et DxgkDdiDpcRoutine et doit fournir des pointeurs de fonction valides vers toutes ces fonctions de cette structure. À l’inverse, si kmDOD ne prend pas en charge la fonctionnalité de contrôle VSync, il ne doit pas implémenter les fonctions DxgkDdiControlInterrupt ou DxgkDdiGetScanLine et ne doit pas fournir de pointeurs de fonction valides vers l’une de ces fonctions dans cette structure. Pour plus d’informations, consultez Économies d’énergie avec le contrôle VSync.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 8 |
Serveur minimal pris en charge | Windows Server 2012 |
En-tête | dispmprt.h (inclure Dispmprt.h) |