Partager via


D3DKMDT_VPPR_GET_OFFSET_ROTATION, fonction (d3dkmdt.h)

Fonction d’assistance qui extrait l’angle de décalage à partir d’une valeur donnée de l’énumération D3DKMDT_VIDPN_PRESENT_PATH_ROTATION . Seuls les pilotes qui prennent en charge la rotation indépendante du chemin (DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM1_3_PATH_INDEPENDENT_ROTATION) doivent appeler cette fonction.

Syntaxe

D3DKMDT_VIDPN_PRESENT_PATH_ROTATION D3DKMDT_VPPR_GET_OFFSET_ROTATION(
  D3DKMDT_VIDPN_PRESENT_PATH_ROTATION Rotation
);

Paramètres

Rotation

Lors de l’entrée, une valeur de l’énumération D3DKMDT_VIDPN_PRESENT_PATH_ROTATION .

En sortie, une valeur comprise entre 1 et 4, inclusive, qui correspond à la partie OFFSET de la D3DKMDT_VIDPN_PRESENT_PATH_ROTATION valeurs constantes. Une valeur de sortie de 1 (identité) représente 0 degré de décalage, 2 représente 90 degrés, et ainsi de suite. Une valeur de sortie de 0 indique que le chemin VidPN n’est pas initialisé.

La valeur de sortie est toujours l’une des valeurs prises en charge spécifiées pour ce chemin d’accès dans la structure D3DKMDT_VIDPN_PRESENT_PATH_ROTATION_SUPPORT .

Valeur retournée

La valeur retournée correspond à l’angle de décalage comme suit :

Valeur d’énumération d’entrée Constante d’énumération d’entrée Décalage en degrés Valeur de rotation de sortie
0 D3DKMDT_VPPR_UNINITIALIZED - 0
1 D3DKMDT_VPPR_IDENTITY 0 1
2 D3DKMDT_VPPR_ROTATE90 0 1
3 D3DKMDT_VPPR_ROTATE180 0 1
4 D3DKMDT_VPPR_ROTATE270 0 1
5 D3DKMDT_VPPR_IDENTITY_OFFSET90 90 2
6 D3DKMDT_VPPR_ROTATE90_OFFSET90 90 2
7 D3DKMDT_VPPR_ROTATE180_OFFSET90 90 2
8 D3DKMDT_VPPR_ROTATE270_OFFSET90 90 2
9 D3DKMDT_VPPR_IDENTITY_OFFSET180 180 3
10 D3DKMDT_VPPR_ROTATE90_OFFSET180 180 3
11 D3DKMDT_VPPR_ROTATE180_OFFSET180 180 3
12 D3DKMDT_VPPR_ROTATE270_OFFSET180 180 3
13 D3DKMDT_VPPR_IDENTITY_OFFSET270 270 4
14 D3DKMDT_VPPR_ROTATE90_OFFSET270 270 4
15 D3DKMDT_VPPR_ROTATE180_OFFSET270 270 4
16 D3DKMDT_VPPR_ROTATE270_OFFSET270 270 4

Remarques

Cette fonction est déclarée inline dans D3dkmdt.h comme suit :

__inline
D3DKMDT_VIDPN_PRESENT_PATH_ROTATION 
    D3DKMDT_VPPR_GET_OFFSET_ROTATION(
        D3DKMDT_VIDPN_PRESENT_PATH_ROTATION Rotation)
{
    if ((Rotation >= D3DKMDT_VPPR_IDENTITY) &&
        (Rotation <= D3DKMDT_VPPR_ROTATE270_OFFSET270))
    {
        Rotation = (D3DKMDT_VIDPN_PRESENT_PATH_ROTATION)(
            ((Rotation - 1) / 4) + 1);
    }
    return Rotation;
}

Le pilote doit utiliser la valeur de sortie du paramètre Rotation pour faire pivoter le contenu du chemin du clone secondaire lorsque le Gestionnaire de fenêtres du bureau (DWM) a déjà fait pivoter le contenu du chemin d’accès du clone principal. Pour plus d’informations, consultez Prise en charge de la rotation Path-Independent.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8.1,DXGKDDI_INTERFACE_VERSION >= DXGKDDI_INTERFACE_VERSION_WDDM1_3_PATH_INDEPENDENT_ROTATION
Serveur minimal pris en charge Windows Server 2012 R2
Plateforme cible Desktop (Expérience utilisateur)
En-tête d3dkmdt.h

Voir aussi

D3DKMDT_VIDPN_PRESENT_PATH_ROTATION

D3DKMDT_VIDPN_PRESENT_PATH_ROTATION_SUPPORT