IDXCoreAdapterList::GetAdapter-Methode
Ruft einen bestimmten Adapter nach Index aus einem DXCore-Adapterlistenobjekt ab. Programmieranleitungen und Codebeispiele finden Sie unter Using DXCore to enumerate adapters(Verwenden von DXCore zum Aufzählen von Adaptern).
Syntax
virtual HRESULT STDMETHODCALLTYPE GetAdapter(
uint32_t index,
REFIID riid,
_COM_Outptr_ void **ppvAdapter) = 0;
template<class T>
HRESULT STDMETHODCALLTYPE GetAdapter(
uint32_t index,
_COM_Outptr_ T **ppvAdapter);
Parameter
Index
Typ: uint32_t
Ein nullbasierter Index, der eine Adapterinstanz in der DXCore-Adapterliste identifiziert.
riid
Typ: REFIID
Ein Verweis auf die GUID (Globally Unique Identifier) der Schnittstelle, die in ppvAdapter zurückgegeben werden soll. Es wird erwartet, dass dies der Schnittstellenbezeichner (IID) von IDXCoreAdapter ist.
ppvAdapter [out]
Typ: * * void
Die Adresse eines Zeigers auf eine Schnittstelle mit der IID, die im riid-Parameter angegeben ist. Nach erfolgreicher Rückgabe enthält * ppvAdapter (die dereferenzierte Adresse) einen Zeiger auf den erstellten DXCore-Adapter.
Rückgabe
Typ: HRESULT
Wenn die Funktion erfolgreich ist, gibt sie S_OK. Andernfalls wird ein HRESULT-Fehlercode zurückgegeben.
| Rückgabewert | BESCHREIBUNG |
|---|---|
| DXGI_ERROR_DEVICE_REMOVED | Der Index ist gültig, aber der Adapter befindet sich nicht mehr in einem gültigen Zustand. |
| E_INVALIDARG | Der bereitgestellte Index ist ungültig. |
| E_NOINTERFACE | Für riid wurde ein ungültiger Wert bereitgestellt. |
| E_POINTER | nullptrwurde für ppvAdapter bereitgestellt. |
Bemerkungen
Mehrere Aufrufe, die einen Index übergeben, der denselben Adapter darstellt, geben identische Schnittstellenzeige zurück, auch über verschiedene Adapterlisten hinweg. Daher ist es sicher, Schnittstellenzeker zu vergleichen, um zu bestimmen, ob mehrere Zeiger auf das gleiche Adapterobjekt verweisen.
Weitere Informationen
IDXCoreAdapterList, DXCore-Referenz, Verwenden von DXCore zum Auflisten von Adaptern