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 は、このメンバーを Dispmprt.h で定義されている DXGKDDI_INTERFACE_VERSIONに設定する必要があります。

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 制御機能がサポートされている場合は、 DxgkDdiControlInterruptDxgkDdiGetScanLineDxgkDdiInterruptRoutineDxgkDdiDpcRoutine 関数をすべて実装し、この構造体内のすべての関数への有効な関数ポインターを提供する必要があります。 逆に、KMDOD が VSync 制御機能をサポートしていない場合は、 DxgkDdiControlInterrupt 関数または DxgkDdiGetScanLine 関数を実装せず、この構造体内のこれらの関数のいずれかに有効な関数ポインターを提供することはできません。 詳細については、「 VSync コントロールを使用してエネルギーを節約する」を参照してください。

要件

要件
サポートされている最小のクライアント Windows 8
サポートされている最小のサーバー Windows Server 2012
Header dispmprt.h (Dispmprt.h を含む)

こちらもご覧ください

ディスプレイ ミニポート ドライバーの DriverEntry

DxgkInitializeDisplayOnlyDriver