Método IDXCoreAdapterFactory::CreateAdapterList
Genera una lista de objetos de adaptador que representan el estado actual del adaptador del sistema y cumple los criterios especificados. Para obtener instrucciones de programación y ejemplos de código, consulte Uso de DXCore para enumerar adaptadores.
Sintaxis
virtual HRESULT STDMETHODCALLTYPE CreateAdapterList(
uint32_t numAttributes,
_In_reads_(numAttributes) const GUID *filterAttributes,
REFIID riid,
_COM_Outptr_ void **ppvAdapterList) = 0;
template<class T>
HRESULT STDMETHODCALLTYPE CreateAdapterList(
uint32_t numAttributes,
_In_reads_(numAttributes) const GUID *filterAttributes,
_COM_Outptr_ T **ppvAdapterList);
Parámetros
numAttributes
Tipo: uint32_t
Número de elementos de la matriz a los que apunta el argumento filterAttributes .
filterAttributes [in]
Tipo: GUID const*
Puntero a una matriz de GUID de atributo de adaptador. Para obtener una lista de GUID de atributo, consulte GUID de atributo del adaptador dxcore. Se debe proporcionar al menos un GUID. En caso de que se proporcione más de un GUID en la matriz, solo los adaptadores que cumplan todos los atributos solicitados se incluirán en la lista devuelta.
riid
Tipo: REFIID
Referencia al identificador único global (GUID) de la interfaz que desea devolver en ppvAdapterList. Se espera que sea el identificador de interfaz (IID) de IDXCoreAdapterList.
ppvAdapterList [out]
Tipo: void**
Dirección de un puntero a una interfaz con el IID especificado en el parámetro riid . Tras la devolución correcta, *ppvAdapterList (la dirección desreferenciada) contiene un puntero a la lista de adaptadores creada.
Devoluciones
Tipo: HRESULT
Si la función se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de errorHRESULT.
Valor devuelto | Descripción |
---|---|
E_INVALIDARG | nullptr se proporcionó para filterAttributes o 0 para numAttributes. |
E_NOINTERFACE | Se proporcionó un valor no válido para riid. |
E_POINTER | nullptr se proporcionó para ppvAdapterList. |
Comentarios
Incluso si no se encuentra ningún adaptador, siempre y cuando los argumentos sean válidos, CreateAdapterList crea un objeto IDXCoreAdapterList válido y devuelve S_OK. Una vez generados, los adaptadores de esta lista específica no cambiarán. Pero la lista se considerará obsoleta si uno de los adaptadores más adelante deja de ser válido, o si llega un nuevo adaptador que cumple los criterios de filtro proporcionados. La lista devuelta por CreateAdapterList no se ordena de ninguna manera determinada, pero la ordenación de una lista es coherente en varias llamadas e incluso en los reinicios del sistema operativo. La ordenación puede cambiar en los cambios de configuración del sistema, incluida la adición o eliminación de un adaptador, o una actualización del controlador en un adaptador existente. Puede registrarse para estos cambios con IDXCoreAdapterFactory::RegisterEventNotification mediante el tipo de notificación DXCoreNotificationType.AdapterListStale.
Consulte también
IDXCoreAdapterFactory, DXCore Reference, DXCore adapter ATTRIBUTE GUIDs, Using DXCore to enumerate adapters
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de