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) |