Freigeben über


IDXCoreAdapter::GetProperty-Methode

Ruft den Wert der angegebenen Adaptereigenschaft ab. Rufen Sie vor dem Aufrufen von GetProperty für einen Eigenschaftstyp IsPropertySupported auf, um zu bestätigen, dass der Eigenschaftentyp für diesen Adapter und dieses Betriebssystem verfügbar ist. Rufen Sie vor dem Aufrufen von GetPropertySizeauch 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 sein soll.

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

Hinweise

Sie können GetProperty für einen nicht mehr gültigen Adapter aufrufen. Die Funktion schlägt daher nicht fehl. Mit dieser Funktion wird der PropertyData-Puffer vor dem Ausfüllen auf Null gesetzt.

Siehe auch

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