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 die Abfrage 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 Eingabestatusdetailspuffers in Bytes, den Sie (optional) zuordnen und in inputStateDetails angeben.

inputStateDetails [in]

Typ: void const*

Ein optionaler Zeiger auf einen Puffer mit konstanten Eingabezustandsdetails, den Sie in Ihrer Anwendung zuweisen, 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 in outputBuffer zuordnen und 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 .

Gibt zurück

Typ: HRESULT

Wenn die Funktion erfolgreich ist, gibt sie S_OK zurück. 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 nicht erkannt. Rufen Sie IsQueryStateSupported auf , um zu bestätigen, dass die Abfrage der Zustandsart für diesen Adapter und das Betriebssystem verfügbar ist.
DXGI_ERROR_UNSUPPORTED Die im Status angegebene Zustandsart wird vom Adapter nicht unterstützt. Rufen Sie IsQueryStateSupported auf , um zu bestätigen, dass die Abfrage der Zustandsart für diesen Adapter und das Betriebssystem verfügbar ist.
E_INVALIDARG Für outputBuffer (oder für inputStateDetails , bei denen ein Eingabezustandsdetailspuffer erforderlich ist) wird eine unzureichende Puffergröße bereitgestellt.
E_POINTER nullptr wurde für outputBuffer (oder für inputStateDetails , bei denen ein Puffer für Eingabestatusdetails erforderlich ist) bereitgestellt.

Hinweise

Weitere Informationen zu den einzelnen Adapterstatusart und den verwendeten Ein- und Ausgängen finden Sie unter DXCoreAdapterState . Diese Funktion stellt den outputBuffer-Puffer auf Null, bevor er ausgefüllt wird.

Siehe auch

IDXCoreAdapter, DXCore-Referenz, Verwenden von DXCore zum Auflisten von Adaptern