IDXCoreAdapter::GetProperty-Methode

Ruft den Wert der angegebenen Adaptereigenschaft ab. Rufen Sie vor dem Aufrufen von GetProperty für einen Eigenschaftentyp IsPropertySupported auf, um zu bestätigen, dass der Eigenschaftstyp für diesen Adapter und das Betriebssystem verfügbar ist. Rufen Sie außerdem vor dem Aufrufen von GetProperty GetPropertySize auf, um die erforderliche Größe des Puffers zu bestimmen, in dem der Eigenschaftswert empfangen werden soll.

Syntax

virtual HRESULT STDMETHODCALLTYPE GetProperty(
  DXCoreAdapterProperty property,
  size_t bufferSize,
  _Out_writes_bytes_(bufferSize) void *propertyData) = 0;

template <class T>
HRESULT GetProperty( 
  DXCoreAdapterProperty property,
  _Out_writes_bytes_(sizeof(T)) T *propertyData);

Parameter

property

Typ: DXCoreAdapterProperty

Der Typ der Eigenschaft, deren Wert Sie abrufen möchten. Weitere Informationen zu den einzelnen Adaptereigenschaften finden Sie in der Tabelle in DXCoreAdapterProperty.

bufferSize

Typ: size_t

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

propertyData [out]

Typ: * void

Ein Zeiger auf einen Ausgabepuffer, den Sie in Ihrer Anwendung zuordnen und den die Funktion ausfüllt. Rufen Sie GetPropertySize auf, um die Größe zu bestimmen, die der propertyData-Puffer für eine bestimmte Adaptereigenschaft haben soll.

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_INVALID_CALL Der in der -Eigenschaft angegebene Eigenschaftentyp wird von diesem Betriebssystem (Betriebssystem) nicht erkannt. Rufen Sie IsPropertySupported auf, um zu bestätigen, dass der Eigenschaftstyp für diesen Adapter und das Betriebssystem verfügbar ist.
DXGI_ERROR_UNSUPPORTED Der in der -Eigenschaft angegebene Eigenschaftentyp wird vom Adapter nicht unterstützt. Rufen Sie IsPropertySupported auf, um zu bestätigen, dass der Eigenschaftstyp für diesen Adapter und das Betriebssystem verfügbar ist.
E_INVALIDARG Eine unzureichende Puffergröße wird in propertyData bereitgestellt. Rufen Sie GetPropertySize auf, um die Größe zu bestimmen, die der propertyData-Puffer für eine bestimmte Adaptereigenschaft haben soll.
E_POINTER nullptr wurde für propertyData bereitgestellt.

Bemerkungen

Sie können GetProperty für einen Adapter aufrufen, der nicht mehr gültig ist, da die Funktion dadurch — nicht fehlschlägt. Diese Funktion entfernt den propertyData-Puffer auf null, bevor er ausgefüllt wird.

Weitere Informationen

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