DXGK_DIAGNOSTIC_PSR structure (dispmprt.h)

Diagnostic qui indique que le panneau connecté via la cible dans le champ TargetId de la structure DXGK_DIAGNOSTIC_HEADER a entré ou quitté un état d’auto-actualisation du panneau (PSR).

Syntaxe

typedef struct _DXGK_DIAGNOSTIC_PSR {
  DXGK_DIAGNOSTIC_HEADER Header;
  union {
    DXGK_DIAGNOSTIC_PSR_REFRESH_REASON RefreshReason;
    UINT                               Value;
  };
} DXGK_DIAGNOSTIC_PSR;

Membres

Header

Structure DXGK_DIAGNOSTIC_HEADER qui indique le type de diagnostic signalé.

RefreshReason

Ensemble de champs de bits DXGK_DIAGNOSTIC_PSR_REFRESH_REASON qui indiquent la raison ou les raisons de la sortie du psr ou, si aucun n’est défini, indique que la cible entre dans PSR.

Value

Valeur du PSR.

Remarques

Lorsque le panneau entre dans l’actualisation automatique, le pilote doit envoyer ce diagnostic sans aucun des champs de bits définis dans le champ RefreshReason .

Lorsque le panneau doit quitter l’actualisation automatique pour mettre à jour le contenu, le pilote doit envoyer ce diagnostic avec au moins un des champs de bits dans RefreshReason, en indiquant la ou les raisons de la fermeture de PSR. Si plusieurs facteurs ont provoqué la fermeture de PSR, le pilote doit tenter de définir toutes les raisons appropriées pour les champs binaires. Toutefois, il est plus important que les indicateurs ne soient pas définis si la raison n’était pas le déclencheur pour quitter PSR, plutôt que de capturer toutes les raisons qui ont déclenché la sortie. Cela est dû au fait qu’une fois que le PSR a été arrêté, le pilote ne doit pas signaler par la suite d’autres raisons pour lesquelles le PSR aurait été arrêté, de sorte que dans la déclaration est valide, tant qu’au moins une raison est fournie.

Si le panneau et le pilote prennent en charge PSR2, où les mises à jour ne nécessitent pas l’envoi d’un cadre complet au panneau afin d’actualiser une plus petite partie, ces mises à jour doivent toujours être signalées au système d’exploitation lors de la fermeture de PSR. Par exemple, si l’affichage est en PSR et que la forme du curseur est modifiée sans aucune autre mise à jour, le pilote doit être en mesure d’envoyer une petite fraction de l’image complète des pixels, probablement uniquement les lignes contenant le curseur. Dans ce cas, le pilote doit toujours signaler que psR a été arrêté, avec raison CursorUpdate. Dans une version ultérieure, des champs de diagnostic supplémentaires peuvent être ajoutés pour distinguer les mises à jour partielles et complètes.

Configuration requise

Condition requise Valeur
En-tête dispmprt.h