énumération IDDCX_ADAPTER_FLAGS (iddcx.h)

IDDCX_ADAPTER_FLAGS spécifie les indicateurs de fonctionnalité booléenne pour une carte graphique indirecte.

Syntax

typedef enum IDDCX_ADAPTER_FLAGS {
  IDDCX_ADAPTER_FLAGS_NONE = 0,
  IDDCX_ADAPTER_FLAGS_USE_SMALLEST_MODE = 0x1,
  IDDCX_ADAPTER_FLAGS_CAN_USE_MOVE_REGIONS = 0x2,
  IDDCX_ADAPTER_FLAGS_REMOTE_SESSION_DRIVER = 0x4,
  IDDCX_ADAPTER_FLAGS_PREFER_PHYSICALLY_CONTIGUOUS = 0x8,
  IDDCX_ADAPTER_FLAGS_REMOTE_ALL_CURSOR_POSITION = 0x10,
  IDDCX_ADAPTER_FLAGS_PREFER_PRECISE_PRESENT_REGIONS = 0x20,
  IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16 = 0x40,
  IDDCX_ADAPTER_FLAGS_REMOTE_ALL_TARGET_MODES_MONITOR_COMPATIBLE = 0x80
} ;

Constantes

 
IDDCX_ADAPTER_FLAGS_NONE
Valeur : 0
Indique qu’aucun indicateur n’est défini pour l’adaptateur.
IDDCX_ADAPTER_FLAGS_USE_SMALLEST_MODE
Valeur : 0x1
Le modèle d’affichage indirect prend automatiquement en charge les modes virtuels du système d’exploitation, ce qui permet au système d’effectuer en toute transparence des modifications de mode à l’aide de Desktop Window Manager (DWM) sur une base par image sans modification du mode d’affichage. Un inconvénient se produit lorsqu’un mode Bureau plus petit est utilisé par l’utilisateur : l’image de bureau fournie au pilote est supérieure à la taille du bureau, ce qui entraîne l’encodage et la transmission de la bande passante.

Cette valeur d’énumération indique au système d’exploitation d’utiliser la plus petite taille possible de surface de bureau lorsque le mode bureau est modifié. Une solution qui a une surcharge de traitement importante ou une bande passante de transmission limitée utilise généralement cet indicateur pour réduire la taille de l’image de bureau afin de traiter autant que possible.

La définition de cet indicateur entraîne un changement de mode chaque fois que la résolution du bureau est modifiée.
IDDCX_ADAPTER_FLAGS_CAN_USE_MOVE_REGIONS
Valeur : 0x2
Cet indicateur a été déconseillé à partir de IddCx v1.7. Les pilotes peuvent toujours définir cet indicateur pour IddCx 1.7 et versions ultérieures, mais cela n’aura aucun effet. Si un pilote est conçu pour s’exécuter sur la version antérieure à IddCx 1.7 et définit cet indicateur, ce pilote doit avoir la logique pour traiter les déplacements ; sinon, les utilisateurs verront des problèmes visuels lors de l’exécution sur des systèmes pré-IddCx 1.7.

Indique si le pilote peut utiliser les régions de déplacement fournies par le système d’exploitation en plus des sale rects lors de l’encodage de l’image. Le pilote doit uniquement définir cette valeur sur TRUE s’il utilise les régions de déplacement, car le système d’exploitation entraîne un coût lors de la génération de ces ressources supplémentaires. Si le pilote définit cette valeur sur FALSE, le système d’exploitation convertit toutes les régions de déplacement en sale rects.
IDDCX_ADAPTER_FLAGS_REMOTE_SESSION_DRIVER
Valeur : 0x4
Indique si le pilote est un pilote de session à distance prenant en charge les moniteurs de session à distance, plutôt que les moniteurs de session de console. Un pilote de session à distance ne peut pas prendre en charge les moniteurs de session de console, et un pilote de session de console ne peut pas prendre en charge les moniteurs de session à distance. Pris en charge à partir d’IddCx version 1.4.
IDDCX_ADAPTER_FLAGS_PREFER_PHYSICALLY_CONTIGUOUS
Valeur : 0x8
Indique que le pilote préfère utiliser la mémoire physiquement contiguë pour les mémoires tampons de chaîne d’échange, ce qui lui permet d’analyser directement les mémoires tampons sans avoir besoin d’une copie intermédiaire. Pris en charge à partir d’IddCx version 1.6.
IDDCX_ADAPTER_FLAGS_REMOTE_ALL_CURSOR_POSITION
Valeur : 0x10
Indique que le pilote souhaite recevoir toutes les modifications de position du curseur ; Autrement dit, il souhaite recevoir à la fois l’entrée de la souris injectée dans la session à distance à partir du client distant et les déplacements procéduraux provoqués par un appel d’API à partir d’une application ou du système d’exploitation sur le serveur.

Cet indicateur n’est valide qu’en cas de combinaison avec IDDCX_ADAPTER_FLAGS_REMOTE_SESSION_DRIVER. IddCxAdapterInitAsync échoue si IDDCX_ADAPTER_FLAGS_REMOTE_ALL_CURSOR_POSITION est défini sans IDDCX_ADAPTER_FLAGS_REMOTE_SESSION_DRIVER.

Pris en charge à partir d’IddCx version 1.7.
IDDCX_ADAPTER_FLAGS_PREFER_PRECISE_PRESENT_REGIONS
Valeur : 0x20
Un pilote qui définit cet indicateur demande au système d’exploitation de suivre plus précisément sale régions des mises à jour du bureau. Ce suivi plus précis ayant une petite surcharge d’utilisation du processeur, les pilotes ne doivent définir cet indicateur que si les régions sale plus petites sont bénéfiques pour le pilote.

Pris en charge à partir d’IddCx version 1.8.
IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16
Indique que le pilote peut traiter les surfaces de la chaîne d’échange à virgule flottante à demi-précision IEEE (FP16). Un pilote doit définir IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16 même pour les adaptateurs qui ne prennent pas en charge HDR ou SDR WCG. Le système d’exploitation envoie les surfaces et modes WC HDR ou SDR au pilote lorsque la combinaison appropriée de moniteur, de fonctionnalités cibles, de paramètres O, etc. est en place. Par conséquent, un pilote qui définit IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16 doit également prendre en charge les fonctions IddCx version 1.10 qui permettent cette opération. Un pilote qui prend en charge HDR10 doit pouvoir :

* Réception et traitement des surfaces au format FP16 au sein d’une chaîne d’échange.
* Application du niveau blanc SDR indiqué aux curseurs de souris.

Les pilotes de console doivent également :

* Utilisez la nouvelle transformation de couleur de matrice 3x4.
* Acceptez et utilisez les métadonnées HDR.

Les pilotes distants doivent également :

* Fournissez la colorimétrie et le niveau blanc SDR si nécessaire.

Pris en charge à partir d’IddCx version 1.10. Consultez la section Notes.
IDDCX_ADAPTER_FLAGS_REMOTE_ALL_TARGET_MODES_MONITOR_COMPATIBLE
Valeur : 0x80
Seuls les pilotes distants peuvent définir cet indicateur.

Les pilotes distants peuvent utiliser IDDCX_ADAPTER_FLAGS_ALL_TARGET_MODES_MONITOR_COMPATIBLE pour leur permettre de spécifier des modes cibles qui ne font pas partie d’un descripteur de moniteur. Normalement, le système d’exploitation choisit un mode en fonction du fait qu’il figure à la fois dans la liste des modes moniteur et cible, signalé via EVT_IDD_CX_PARSE_MONITOR_DESCRIPTION ou EVT_IDD_CX_MONITOR_GET_DEFAULT_DESCRIPTION_MODES si aucun descripteur n’est disponible, et la liste des modes cibles. Les scénarios distants peuvent nécessiter des modes qui ne sont pas dans le descripteur. Au lieu de cela, le pilote peut utiliser les modes cibles pour les décrire et indiquer au système d’exploitation qu’ils ne doivent pas être vérifiés par rapport aux modes de surveillance.

Lorsqu’un pilote distant définit cet indicateur, il indique que chaque mode cible signalé dans les appels à EVT_IDD_CX_MONITOR_QUERY_TARGET_MODES2 et IddCxMonitorUpdateModes2 est garanti pour être compatible avec le moniteur actuellement connecté. Le système d’exploitation n’appelle alors pas EVT_IDD_CX_PARSE_MONITOR_DESCRIPTION2 ou EVT_IDD_CX_MONITOR_GET_DEFAULT_DESCRIPTION_MODES.

Pris en charge à partir d’IddCx version 1.10. Consultez la section Notes.

Remarques

Pour déterminer si le système d’exploitation accepte le paramètre de pilotes IDDCX_ADAPTER_FLAGS_CAN_PROCESS_FP16 ou IDDCX_ADAPTER_FLAGS_ALL_TARGET_MODES_MONITOR_COMPATIBLE, le pilote doit utiliser la macro IDD_IS_FUNCTION_AVAILABLE pour case activée la présence d’un des DDIs version 1.10, par exemple IDD_IS_FUNCTION_AVAILABLE(IddCxSwapChainReleaseAndAcquireBuffer2). Cette macro prend la valeur TRUE sur un système d’exploitation pris en charge par la version 1.10 et false dans le cas contraire. Pour plus d’informations, consultez Mises à jour pour IddCx versions 1.10 et ultérieures.

Configuration requise

Condition requise Valeur
En-tête iddcx.h

Voir aussi

IDDCX_ADAPTER_CAPS

IddCxAdapterInitAsync