VIDEO_PUBLIC_ACCESS_RANGES structure (ntddvdeo.h)
La structure VIDEO_PUBLIC_ACCESS_RANGES contient des informations sur les ressources vidéo autres que les mémoires tampons d’images et la mémoire ram vidéo, telles que les registres d’E/S mappés en mémoire ou les ports.
Syntaxe
typedef struct _VIDEO_PUBLIC_ACCESS_RANGES {
ULONG InIoSpace;
ULONG MappedInIoSpace;
PVOID VirtualAddress;
} VIDEO_PUBLIC_ACCESS_RANGES, *PVIDEO_PUBLIC_ACCESS_RANGES;
Membres
InIoSpace
Indique l’emplacement de la plage. Ce paramètre peut être l’une des valeurs suivantes ou certaines combinaisons au niveau du bit de ces valeurs :
Valeur | Signification |
---|---|
VIDEO_MEMORY_SPACE_DENSE | Obsolète. |
VIDEO_MEMORY_SPACE_IO | Les plages d’adresses indiquées se trouvent dans l’espace d’E/S système plutôt que dans l’espace mémoire. |
VIDEO_MEMORY_SPACE_MEMORY | Les plages d’adresses indiquées se trouvent dans l’espace mémoire plutôt que dans l’espace d’E/S système. |
VIDEO_MEMORY_SPACE_P6CACHE | Le processeur agrège une séquence d’opérations d’écriture et les envoie à une ligne de cache donnée. Le processeur vide ensuite le cache. Cet indicateur n’est significatif que lorsque VIDEO_MEMORY_SPACE_IO n’est pas défini. |
VIDEO_MEMORY_SPACE_USER_MODE | Indique que la plage d’adresses spécifiée doit être mappée en mode utilisateur plutôt qu’en mode noyau. Cet indicateur n’est significatif que lorsque VIDEO_MEMORY_SPACE_IO n’est pas défini. |
MappedInIoSpace
Indique, sur la plateforme actuelle, si les registres ou les ports sont mappés dans l’espace d’E/S ou dans l’espace mémoire. La valeur TRUE (1) indique que les registres ou les ports sont mappés dans l’espace d’E/S ; La valeur FALSE (0) indique que les registres ou les ports sont mappés dans l’espace mémoire.
VirtualAddress
Pointeur vers l’emplacement des registres ou des ports d’E/S mappés sous l’architecture actuelle.
Remarques
VIDEO_PUBLIC_ACCESS_RANGES est similaire à VIDEO_ACCESS_RANGE en ce sens que les deux sont utilisés par les pilotes de miniport pour obtenir des informations sur les ressources d’affichage. La principale différence réside dans le fait que VIDEO_PUBLIC_ACCESS_RANGES contient des informations sur les registres de contrôle et d’accélérateur pour une carte, tandis que VIDEO_ACCESS_RANGE est utilisé pour contenir les adresses de mémoire tampon d’images et de ram vidéo.
VIDEO_PUBLIC_ACCESS_RANGES est utilisé comme mémoire tampon d’entrée avec la requête IOCTL_VIDEO_QUERY_PUBLIC_ACCESS_RANGES .
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | ntddvdeo.h (incluez Ntddvdeo.h) |