次の方法で共有


VIDEO_PUBLIC_ACCESS_RANGES 構造体 (ntddvdeo.h)

VIDEO_PUBLIC_ACCESS_RANGES構造体には、 フレーム バッファー やビデオ RAM 以外のビデオ リソース (メモリ マップ I/O レジスタやポートなど) に関する情報が含まれています。

構文

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 要求を含む入力バッファーとして使用されます。

要件

要件
Header ntddvdeo.h (Ntddvdeo.h を含む)

こちらもご覧ください

IOCTL_VIDEO_QUERY_PUBLIC_ACCESS_RANGES

VIDEO_ACCESS_RANGE