VIDEO_PUBLIC_ACCESS_RANGES構造体 (ntddvdeo.h)
VIDEO_PUBLIC_ACCESS_RANGES構造体には、メモリ マップされた I/O レジスタやポートなど、フレーム バッファー およびビデオ RAM 以外のビデオ リソースに関する情報が含まれています。
構文
typedef struct _VIDEO_PUBLIC_ACCESS_RANGES {
ULONG InIoSpace;
ULONG MappedInIoSpace;
PVOID VirtualAddress;
} VIDEO_PUBLIC_ACCESS_RANGES, *PVIDEO_PUBLIC_ACCESS_RANGES;
メンバーズ
InIoSpace
範囲の位置を示します。 このパラメーターには、次のいずれかの値、またはこれらの値の特定のビットごとの組み合わせを指定できます。
価値 | 意味 |
---|---|
VIDEO_MEMORY_SPACE_DENSE | 廃れた。 |
VIDEO_MEMORY_SPACE_IO | 指定されたアドレス範囲は、メモリ領域ではなくシステム I/O 領域にあります。 |
VIDEO_MEMORY_SPACE_MEMORY | 指定されたアドレス範囲は、システム I/O 領域ではなくメモリ領域にあります。 |
VIDEO_MEMORY_SPACE_P6CACHE | プロセッサは、一連の書き込み操作を集計し、特定のキャッシュ ラインに送信します。 その後、プロセッサによってキャッシュがフラッシュされます。 このフラグは、VIDEO_MEMORY_SPACE_IOが設定されていない場合にのみ意味があります。 |
VIDEO_MEMORY_SPACE_USER_MODE | 指定されたアドレス範囲をカーネル モードではなくユーザー モードにマップする必要があることを示します。 このフラグは、VIDEO_MEMORY_SPACE_IOが設定されていない場合にのみ意味があります。 |
MappedInIoSpace
現在のプラットフォームで、レジスタまたはポートが I/O 領域またはメモリ領域のいずれにマップされているかを示します。 TRUE (1) の値は、レジスタまたはポートが I/O 領域にマップされていることを示します。FALSE (0) の値は、レジスタまたはポートがメモリ領域にマップされていることを示します。
VirtualAddress
現在のアーキテクチャでマップされているレジスタまたは I/O ポートの場所へのポインター。
備考
VIDEO_PUBLIC_ACCESS_RANGESは、両方がディスプレイ リソースに関する情報を取得するためにミニポート ドライバーによって使用されるという点で VIDEO_ACCESS_RANGE に似ています。 主な違いは、VIDEO_PUBLIC_ACCESS_RANGESにはアダプターの制御レジスタとアクセラレータ レジスタに関する情報が含まれているのに対し、VIDEO_ACCESS_RANGEはフレーム バッファーとビデオ RAM アドレスを保持するために使用されます。
VIDEO_PUBLIC_ACCESS_RANGESは、IOCTL_VIDEO_QUERY_PUBLIC_ACCESS_RANGES 要求を含む入力バッファーとして使用されます。
必要条件
要件 | 価値 |
---|---|
ヘッダー | ntddvdeo.h (Ntddvdeo.h を含む) |