IDXCoreAdapter::QueryState-Methode

Ruft den aktuellen Zustand des angegebenen Elements auf dem Adapter ab. Rufen Sie vor dem Aufrufen von QueryState für einen Eigenschaftstyp IsQueryStateSupported auf, um zu bestätigen, dass das Abfragen der Zustandsart für diesen Adapter und das Betriebssystem verfügbar ist.

Syntax

virtual HRESULT STDMETHODCALLTYPE QueryState( 
  DXCoreAdapterState state,
  size_t inputStateDetailsSize,
  _In_reads_bytes_opt_(inputStateDetailsSize) const void *inputStateDetails,
  size_t outputBufferSize,
  _Out_writes_bytes_(outputBufferSize) void *outputBuffer) = 0;

template <class T1, class T2>
HRESULT QueryState( 
  DXCoreAdapterState state,
  _In_reads_bytes_opt_(sizeof(T1)) const T1 *inputStateDetails,
  _Out_writes_bytes_(sizeof(T2)) T2 *outputBuffer);

template <class T>
HRESULT QueryState( 
  DXCoreAdapterState state,
  _Out_writes_bytes_(sizeof(T)) T *outputBuffer);

Parameter

state

Typ: DXCoreAdapterState

Die Art des Zustandselements auf dem Adapter, dessen Zustand Sie abrufen möchten. Weitere Informationen zu den einzelnen Adapterzustandsart finden Sie in der Tabelle in DXCoreAdapterState.

inputStateDetailsSize

Typ: size_t

Die Größe des Eingabezustandsdetailspuffers in Bytes, den Sie (optional) zuordnen und in inputStateDetails bereitstellen.

inputStateDetails [in]

Typ: void * const

Ein optionaler Zeiger auf einen konstanten Eingabezustandsdetailspuffer, den Sie in Ihrer Anwendung zuordnen, der alle Informationen zu Ihrer Anforderung enthält, die für die Zustandsart erforderlich sind, die Sie im Zustand angeben. Weitere Informationen zu Eingabepufferanforderungen für eine bestimmte Zustandsart finden Sie in der Tabelle in DXCoreAdapterState.

outputBufferSize

Typ: size_t

Die Größe des Ausgabepuffers in Bytes, den Sie zuordnen und in outputBuffer bereitstellen.

outputBuffer [out]

Typ: * void

Ein Zeiger auf einen Ausgabepuffer, den Sie in Ihrer Anwendung zuordnen und den die Funktion ausfüllt. Weitere Informationen zur Ausgabepufferanforderung für eine bestimmte Zustandsart finden Sie in der Tabelle in DXCoreAdapterState.

Rückgabe

Typ: HRESULT

Wenn die Funktion erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein HRESULT-Fehlercode zurückgegeben.

Rückgabewert BESCHREIBUNG
DXGI_ERROR_DEVICE_REMOVED Der Adapter befindet sich nicht mehr in einem gültigen Zustand.
DXGI_ERROR_INVALID_CALL Die im Zustand angegebene Zustandsart wird von diesem Betriebssystem (Betriebssystem) nicht erkannt. Rufen Sie IsQueryStateSupported auf, um zu bestätigen, dass das Abfragen der Zustandsart für diesen Adapter und das Betriebssystem verfügbar ist.
DXGI_ERROR_UNSUPPORTED Die im Zustand angegebene Zustandsart wird vom Adapter nicht unterstützt. Rufen Sie IsQueryStateSupported auf, um zu bestätigen, dass das Abfragen der Zustandsart für diesen Adapter und das Betriebssystem verfügbar ist.
E_INVALIDARG Für outputBuffer wird eine unzureichende Puffergröße bereitgestellt (oder für inputStateDetails, wenn ein Puffer für Eingabezustandsdetails erforderlich ist).
E_POINTER nullptr wurde für outputBuffer bereitgestellt (oder für inputStateDetails, wo ein Puffer für Eingabezustandsdetails erforderlich ist).

Bemerkungen

Weitere Informationen zu den einzelnen Adapterzustandsart und den verwendeten Eingaben und Ausgaben finden Sie unter DXCoreAdapterState. Mit dieser Funktion wird der outputBuffer-Puffer vor dem Auffüllen auf null gesetzt.

Weitere Informationen

IDXCoreAdapter, DXCore-Referenz, Verwenden von DXCore zum Aufzählen von Adaptern