IDXCoreAdapter::QueryState, méthode

Récupère l’état actuel de l’élément spécifié sur l’adaptateur. Avant d’appeler QueryState pour un type de propriété, appelez IsQueryStateSupported pour vérifier que l’interrogation du type d’état est disponible pour cet adaptateur et ce système d’exploitation.

Syntaxe

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);

Paramètres

state

Type : DXCoreAdapterState

Type d’élément d’état sur l’adaptateur dont vous souhaitez récupérer l’état. Pour plus d’informations sur chaque type d’état d’adaptateur, consultez le tableau dans DXCoreAdapterState .

inputStateDetailsSize

Type : size_t

Taille, en octets, de la mémoire tampon des détails de l’état d’entrée que vous allouez (éventuellement) et fournissez dans inputStateDetails.

inputStateDetails [in]

Type : void const*

Pointeur facultatif vers une mémoire tampon d’état d’entrée constante que vous allouez dans votre application, contenant toutes les informations relatives à votre demande requises pour le type d’état que vous spécifiez dans l’état. Consultez le tableau dans DXCoreAdapterState pour plus d’informations sur toute exigence de mémoire tampon d’entrée pour un type d’état donné.

outputBufferSize

Type : size_t

Taille, en octets, de la mémoire tampon de sortie que vous allouez et fournissez dans outputBuffer.

outputBuffer [out]

Type : void*

Pointeur vers une mémoire tampon de sortie que vous allouez dans votre application et dans laquelle la fonction se remplit. Consultez le tableau dans DXCoreAdapterState pour plus d’informations sur l’exigence de mémoire tampon de sortie pour un type d’état donné.

Retours

Type : HRESULT

Si la fonction réussit, elle retourne S_OK. Sinon, elle retourne un codeHRESULTerror.

Valeur retournée Description
DXGI_ERROR_DEVICE_REMOVED L’adaptateur n’est plus dans un état valide.
DXGI_ERROR_INVALID_CALL Le type d’état spécifié dans l’état n’est pas reconnu par ce système d’exploitation. Appelez IsQueryStateSupported pour vérifier que l’interrogation du type d’état est disponible pour cet adaptateur et ce système d’exploitation.
DXGI_ERROR_UNSUPPORTED Le type d’état spécifié dans l’état n’est pas pris en charge par l’adaptateur. Appelez IsQueryStateSupported pour vérifier que l’interrogation du type d’état est disponible pour cet adaptateur et ce système d’exploitation.
E_INVALIDARG Une taille de mémoire tampon insuffisante est fournie pour outputBuffer (ou pour inputStateDetails où une mémoire tampon de détails d’état d’entrée est nécessaire).
E_POINTER nullptr a été fourni pour outputBuffer (ou pour inputStateDetails où une mémoire tampon de détails d’état d’entrée est nécessaire).

Notes

Pour plus d’informations sur chaque type d’état d’adaptateur, consultez DXCoreAdapterState et les entrées et sorties utilisées. Cette fonction supprime la mémoire tampon outputBuffer avant de la remplir.

Voir aussi

IDXCoreAdapter, référence DXCore, utilisation de DXCore pour énumérer les adaptateurs