Bagikan melalui


struktur VIDEO_MODE_INFORMATION (ntddvdeo.h)

Struktur VIDEO_MODE_INFORMATION berisi semua informasi tentang satu mode adaptor video.

Sintaksis

typedef struct _VIDEO_MODE_INFORMATION {
  ULONG Length;
  ULONG ModeIndex;
  ULONG VisScreenWidth;
  ULONG VisScreenHeight;
  ULONG ScreenStride;
  ULONG NumberOfPlanes;
  ULONG BitsPerPlane;
  ULONG Frequency;
  ULONG XMillimeter;
  ULONG YMillimeter;
  ULONG NumberRedBits;
  ULONG NumberGreenBits;
  ULONG NumberBlueBits;
  ULONG RedMask;
  ULONG GreenMask;
  ULONG BlueMask;
  ULONG AttributeFlags;
  ULONG VideoMemoryBitmapWidth;
  ULONG VideoMemoryBitmapHeight;
  ULONG DriverSpecificAttributeFlags;
} VIDEO_MODE_INFORMATION, *PVIDEO_MODE_INFORMATION;

Anggota

Length

Menentukan panjang, dalam byte, dari struktur ini. Driver miniport dapat menggunakan nilai ini untuk menentukan versi struktur ini.

ModeIndex

Menentukan indeks mode tertentu yang akan digunakan dalam panggilan ke driver miniport.

VisScreenWidth

Menentukan jumlah piksel yang terlihat pada satu garis pemindaian horizontal.

VisScreenHeight

Menentukan jumlah baris yang terlihat (atau garis pemindaian) pada layar.

ScreenStride

Menentukan jumlah byte antara awal satu baris pemindaian dan baris berikutnya.

NumberOfPlanes

Menentukan jumlah bidang terpisah yang digabungkan oleh perangkat.

BitsPerPlane

Menentukan jumlah bit per piksel per bidang.

Frequency

Menentukan laju refresh layar, di Hertz.

XMillimeter

Menentukan lebar, dalam milimeter, dari wilayah aktif pada perangkat output.

YMillimeter

Menentukan tinggi, dalam milimeter, dari wilayah aktif pada perangkat output.

NumberRedBits

Menentukan jumlah bit dalam DAC merah.

NumberGreenBits

Menentukan jumlah bit dalam DAC hijau.

NumberBlueBits

Menentukan jumlah bit dalam DAC biru.

RedMask

Adalah masker warna merah untuk perangkat dengan mode warna langsung. Misalnya, untuk menunjukkan bahwa bit 0 hingga 4 akan digunakan untuk merah, gunakan nilai 0x001F.

GreenMask

Adalah masker warna hijau untuk perangkat dengan mode warna langsung. Misalnya, untuk menunjukkan bahwa bit 5 hingga 9 akan digunakan untuk hijau, gunakan nilai 0x03E0.

BlueMask

Adalah masker warna biru untuk perangkat dengan mode warna langsung. Misalnya, untuk menunjukkan bahwa bit 10 hingga 14 akan digunakan untuk biru, gunakan nilai 0x7C00.

AttributeFlags

Adalah sekumpulan bendera yang menunjukkan perilaku tertentu untuk perangkat. Bendera dan maknanya diperlihatkan dalam tabel berikut.

Nama Bendera Nilai Bendera Nomor Bit Nilai dan Arti Bit
VIDEO_MODE_COLOR 0x0001 0 0 = Kompatibel mono
1 = Warna
VIDEO_MODE_GRAPHICS 0x0002 1 0 = Mode teks
1 = Grafik
VIDEO_MODE_PALETTE_DRIVEN 0x0004 2 0 = Warna langsung
1 = Warna diindeks ke palet
VIDEO_MODE_MANAGED_PALETTE 0x0008 3 0 = Palet diperbaiki (harus dikueri dari driver miniport)
1 = Palet dapat diatur
VIDEO_MODE_INTERLACED 0x0010 4 0 = Mode non-interlaced
1 = Mode terjalin
VIDEO_MODE_NO_OFF_SCREEN 0x0020 5 0 = Memori di luar layar tersedia
1 = Memori di luar layar tidak dapat digunakan untuk menyimpan informasi
VIDEO_MODE_NO_64_BIT_ACCESS 0x0040 6 0 = penulisan memori 64-bit ke buffer bingkai ditangani dengan benar
1 = penulisan memori 64-bit ke buffer bingkai tidak ditangani

VideoMemoryBitmapWidth

Menentukan lebar, dalam piksel, dari bitmap memori video.

VideoMemoryBitmapHeight

Menentukan tinggi, dalam piksel, dari bitmap memori video.

DriverSpecificAttributeFlags

Adalah sekumpulan bendera yang menunjukkan perilaku tertentu untuk perangkat. Bendera privat ini didefinisikan dalam driver miniport, dan hanya untuk digunakan oleh driver miniport dan tampilan.

Komentar

Driver miniport video mengembalikan array struktur VIDEO_MODE_INFORMATION sebagai respons terhadap permintaan IOCTL_VIDEO_QUERY_AVAIL_MODES, dengan setiap struktur berisi informasi tentang satu mode adaptor. Driver miniport mengembalikan satu struktur VIDEO_MODE_INFORMATION yang berisi informasi tentang mode adaptor saat ini sebagai respons terhadap permintaan IOCTL_VIDEO_QUERY_CURRENT_MODE.

Tiga anggota VIDEO_MODE_INFORMATION, VisScreenWidth, VideoMemoryBitmapWidth, dan ScreenStride, dikaitkan dengan lebar layar horizontal. Untuk tampilan yang menggunakan satu atau beberapa byte per piksel, anggota ini memenuhi ketidaksamaan
VisScreenWidth<= VideoMemoryBitmapWidth<= ScreenStride.
Dalam hubungan yang sama untuk tinggi layar vertikal, VisScreenHeight dan VideoMemoryBitmapHeight memenuhi ketidaksamaan
VisScreenHeight<= VideoMemoryBitmapHeight.

Persyaratan

Syarat Nilai
Header ntddvdeo.h (termasuk Ntddvdeo.h)

Lihat juga

IOCTL_VIDEO_QUERY_AVAIL_MODES

IOCTL_VIDEO_QUERY_CURRENT_MODE

VIDEO_MEMORY_INFORMATION