Freigeben über


PDXGK_INITIAL_COMPONENT_STATE Rückruffunktion (d3dkmthk.h)

Die PDXGK_INITIAL_COMPONENT_STATE Rückruffunktion wird vom Clienttreiber implementiert, um den Komponentenzustand zu initialisieren.

Syntax

PDXGK_INITIAL_COMPONENT_STATE PdxgkInitialComponentState;

VOID PdxgkInitialComponentState(
  PVOID GraphicsDeviceHandle,
  PVOID PrivateHandle,
  ULONG ComponentIndex,
  BOOLEAN IsBlockingType,
  UINT InitialFState,
  GUID ComponentGuid,
  UINT PowerComponentMappingFlag
)
{...}

Parameter

GraphicsDeviceHandle

Ein Handle für das Grafikgerät.

PrivateHandle

Ein undurchsichtiges Handle, das in allen Rückrufen bereitgestellt wird. Dieser Handle muss global eindeutig sein, daher sollte ein Zeiger auf das PDO oder FDO des aufrufenden Treibers verwendet werden.

ComponentIndex

Der Index der Komponente. Im Allgemeinen ist dies der Index, der vom Grafikkartenadapter verwendet wird. Die Ausnahme gilt für LDA-Szenarien (Linked Display Adapter), in denen das HIWORD des ComponentIndex- den Adapterindex angibt, wie es geschieht, wenn der Grafiktreiber vom Grafikkern für F-Zustandsänderungen in LDA-Szenarien aufgerufen wird.

IsBlockingType

Set TRUE if the component is "blocking"; Beispielsweise hat der Grafiktreiber die Komponente als ActiveInD3 = 0 gemeldet. Andernfalls legen Sie FALSE fest.

InitialFState

Der F-Zustand einer Komponente, dargestellt durch ComponentIndex zum Zeitpunkt des Aufrufs. Wenn derzeit ein F-Zustandsübergang ausgeführt wird, folgt ein PDXGK_FSTATE_NOTIFICATION Abschlussbenachrichtigungsrückruf mit PreNotification=FALSE einige Zeit später, wenn der Übergang abgeschlossen ist. Je nach Anzeigedauer kann ein PreNotification=TRUE Rückruf auftreten. Wenn dies der Fall ist, wird dem Abschlussbenachrichtigungsrückruf vorangestellt.

ComponentGuid

Ein GUID-Wert, der die Komponenten-GUID ist, wie vom Grafiktreiber für diese Komponente während der DXGKQAITYPE_POWERCOMPONENTINFO Antwort gemeldet.

PowerComponentMappingFlag

Das HIWORD gibt an, ob es sich um einen benutzerdefinierten Treiber definierten Wert handelt (0 = nein, 1 = ja). Wenn 0 (nein) ist, stellt das niedrige Wort einen DXGKMT_POWER_SHARED_TYPE Enumerationswert dar. Diese Werte werden vom Grafiktreiber während der DXGKQAITYPE_POWERCOMPONENTINFO Antwort mithilfe des DXGK_POWER_COMPONENT_SHARED_DESC Typs festgelegt, der DXGK_POWER_COMPONENT_MAPPINGhinzugefügt wurde.

Rückgabewert

Nichts

Bemerkungen

Bei der Registrierung gemeinsam genutzter Energie (IoCallDriver Anruf), wenn PDXGK_INITIAL_COMPONENT_STATE bereitgestellt wurde, wird sie für jede gemeinsam genutzte Energiekomponente, die der Grafiktreiber gemeldet hat, einmal aufgerufen. Das Verhalten dieses Rückrufs ist so, dass:

  • Bei diesen Anrufen handelt es sich um Erneutanrufe, die vor IoCallDriver Rückgabe erfolgen.
  • Diese Aufrufe erfolgen bei DISPATCH_LEVEL, was erfordert, dass Treibercode und Daten speicherresident
  • Da diese Rückrufe vor IoCallDriver- Rückgabe auftreten, wäre DXGK_GRAPHICSPOWER_REGISTER_OUTPUT noch nicht ausgefüllt worden.
  • Wenn derzeit F-Zustandsübergänge ausgeführt werden, benachrichtigt eine PDXGK_FSTATE_NOTIFICATION den Treiber des endgültigen Zustands. Solche Aufrufe werden garantiert nach den InitialComponentStateCb-Aufrufen erfolgen. Es ist jedoch möglich, dass solche Rückrufe vor IoCallDriver zurückgegeben werden können, wenn die Synchronisierung erforderlich ist. Eine Drehsperre sollte sich um IoCallDriver- und den PDXGK_FSTATE_NOTIFICATION-Handler herum bewegen.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 8
mindestens unterstützte Server- Windows Server 2012
Header- d3dkmthk.h
IRQL- DISPATCH_LEVEL

Siehe auch

DXGK_GRAPHICSPOWER_REGISTER_OUTPUT

DXGK_POWER_COMPONENT_MAPPING

DXGK_QUERYADAPTERINFOTYPE

DXGKMT_POWER_SHARED_TYPE

PDXGK_FSTATE_NOTIFICATION