struktur D3DKMT_PRESENTFLAGS (d3dkmthk.h)
Struktur D3DKMT_PRESENTFLAGS mengidentifikasi cara melakukan operasi saat ini.
Sintaks
typedef struct _D3DKMT_PRESENTFLAGS {
union {
struct {
UINT Blt : 1;
UINT ColorFill : 1;
UINT Flip : 1;
UINT FlipDoNotFlip : 1;
UINT FlipDoNotWait : 1;
UINT FlipRestart : 1;
UINT DstRectValid : 1;
UINT SrcRectValid : 1;
UINT RestrictVidPnSource : 1;
UINT SrcColorKey : 1;
UINT DstColorKey : 1;
UINT LinearToSrgb : 1;
UINT PresentCountValid : 1;
UINT Rotate : 1;
UINT PresentToBitmap : 1;
UINT RedirectedFlip : 1;
UINT RedirectedBlt : 1;
UINT FlipStereo : 1;
UINT FlipStereoTemporaryMono : 1;
UINT FlipStereoPreferRight : 1;
UINT BltStereoUseRight : 1;
UINT PresentHistoryTokenOnly : 1;
UINT PresentRegionsValid : 1;
UINT PresentDDA : 1;
UINT ProtectedContentBlankedOut : 1;
UINT RemoteSession : 1;
UINT CrossAdapter : 1;
UINT DurationValid : 1;
UINT PresentIndirect : 1;
UINT PresentHMD : 1;
#if ...
UINT Reserved : 2;
#elif
UINT Reserved : 6;
#else
UINT Reserved : 15;
#endif
};
UINT Value;
};
} D3DKMT_PRESENTFLAGS;
Anggota
Blt
Nilai UINT yang menentukan apakah akan mentransfer bit-block (bitblt) data ke permukaan utama. Bendera bit-field ini dapat digunakan dengan bendera bit-field DstRectValid dan SrcRectValid .
Mengatur anggota ini setara dengan mengatur bit pertama anggota Nilai 32-bit (0x00000001).
ColorFill
Nilai UINT yang menentukan apakah akan melakukan bitblt isi warna ke permukaan utama dengan menggunakan nilai di anggota Warna struktur D3DKMT_PRESENT . Bendera bit-field ini dapat digunakan dengan bendera bit-field DstRectValid .
Mengatur anggota ini setara dengan mengatur bit kedua anggota Nilai 32-bit (0x00000002).
Flip
Nilai UINT yang menentukan apakah akan membalik ke permukaan baru.
Mengatur anggota ini setara dengan mengatur bit ketiga dari anggota Nilai 32-bit (0x00000004).
FlipDoNotFlip
Nilai UINT yang menentukan apakah akan menyisipkan tunggu antrean ke dalam aliran penyajian. Mengatur anggota ini menunjukkan untuk membalik ke permukaan yang sama yang saat ini sedang dipindai.
Mengatur anggota ini setara dengan mengatur bit keempat dari anggota Nilai 32-bit (0x00000008).
FlipDoNotWait
Nilai UINT yang menentukan apakah driver klien yang dapat diinstal OpenGL (ICD) mengharuskan operasi saat ini menunggu jumlah permukaan balik antrean berada di bawah batas tertentu sebelum operasi dimulai. Mengatur anggota ini menunjukkan bahwa ICD tidak memerlukan menunggu. Batas default untuk jumlah permukaan flip yang diantrekan adalah tiga.
Mengatur anggota ini setara dengan mengatur bit kelima dari anggota Nilai 32-bit (0x00000010).
FlipRestart
Nilai UINT yang menentukan apakah akan memulai ulang flip ke permukaan baru.
Mengatur anggota ini setara dengan mengatur bit keenam dari anggota Nilai 32-bit (0x00000020).
DstRectValid
Nilai UINT yang menentukan apakah bitblt menggunakan area persegi panjang tujuan.
Mengatur anggota ini setara dengan mengatur bit ketujuh dari anggota Nilai 32-bit (0x00000040).
SrcRectValid
Nilai UINT yang menentukan apakah bitblt menggunakan area persegi panjang sumber.
Mengatur anggota ini setara dengan mengatur bit kedelapan dari anggota Nilai 32-bit (0x00000080).
RestrictVidPnSource
Nilai UINT yang menentukan apakah akan membatasi bitblt. Jika anggota hWindow adalah NULL, anggota VidPnSourceId dari struktur D3DKMT_PRESENT menunjukkan output mana yang diarahkan bitblt layar penuh; jika hWindownon-NULL, VidPnSourceId menunjukkan output mana yang akan membatasi bitblt berjendela.
Mengatur anggota ini setara dengan mengatur bit kesembilan anggota Nilai 32-bit (0x00000100).
SrcColorKey
Nilai UINT yang menentukan apakah akan melakukan penekanan kunci warna sumber dengan menggunakan nilai di anggota Warna struktur D3DKMT_PRESENT . Artinya, piksel apa pun di permukaan sumber yang cocok dengan kunci warna tidak boleh disalin ke permukaan tujuan, dan semua piksel sumber yang tidak cocok dengan kunci warna harus disalin.
Mengatur anggota ini setara dengan mengatur bit kesepuluh dari anggota Nilai 32-bit (0x00000200).
DstColorKey
Nilai UINT yang menentukan apakah akan melakukan penekanan kunci warna tujuan dengan menggunakan nilai di anggota Warna D3DKMT_PRESENT. Artinya, piksel apa pun di permukaan tujuan yang cocok dengan kunci warna harus diganti dengan piksel yang sesuai dari permukaan sumber, dan semua piksel tujuan yang tidak cocok dengan kunci warna tidak boleh diganti.
Mengatur anggota ini setara dengan mengatur bit ke-sebelas dari anggota Nilai 32-bit (0x00000400).
LinearToSrgb
Nilai UINT yang menentukan apakah akan mengonversi sumber berformat linier ke format sRGB selama operasi penyalinan. format sRGB dikoreksi gamma. Untuk informasi selengkapnya tentang format sRGB, lihat situs web sRGB .
Mengatur anggota ini setara dengan mengatur bit dua belas dari anggota Nilai 32-bit (0x00000800).
PresentCountValid
Nilai UINT yang menentukan apakah nilai yang ditetapkan dalam anggota PresentCount dari struktur D3DKMT_PRESENT valid.
Mengatur anggota ini setara dengan mengatur bit ketiga belas dari anggota Nilai 32-bit (0x00001000).
[in] Rotate
Nilai UINT yang menentukan apakah akan memutar data presentasi agar sesuai dengan orientasi layar saat ini selama transfer blok bit presentasi (bitblt). Orientasi layar saat ini diatur dalam anggota Rotasi dari struktur D3DKMDT_VIDPN_PRESENT_PATH_TRANSFORMATION , yang diatur dalam anggota ContentTransformation dari struktur D3DKMDT_VIDPN_PRESENT_PATH untuk jalur video yang ada.
Driver miniport tampilan harus memutar data hanya jika bendera Putar bit-field diatur. Bahkan jika driver menentukan bahwa orientasi layar saat ini diputar dari data presentasi dan Putar tidak diatur, driver tidak boleh memutar data.
Mengatur anggota ini setara dengan mengatur bit keempat belas dari anggota Nilai 32-bit (0x00002000).
PresentToBitmap
Nilai UINT yang menentukan apakah akan disajikan ke bitmap.
Mengatur anggota ini setara dengan mengatur bit kelima belas dari anggota Nilai 32-bit (0x00004000).
Didukung dimulai dengan Windows 7.
RedirectedFlip
Nilai UINT yang menentukan apakah akan mengalihkan balik ke permukaan baru.
Mengatur anggota ini setara dengan mengatur bit keenam belas dari anggota Nilai 32-bit (0x00008000).
Didukung dimulai dengan Windows 7.
RedirectedBlt
Nilai UINT yang menentukan apakah akan mengalihkan bitblt ke permukaan baru.
Mengatur anggota ini setara dengan mengatur bit ketujuh belas dari anggota Nilai 32-bit (0x00010000).
Didukung dimulai dengan Windows 7.
FlipStereo
Menentukan apakah driver harus membalik gambar kiri dan kanan alokasi stereo.
Jika anggota FlipOnNextVSync dari struktur DXGK_SETVIDPNSOURCEADDRESS_FLAGS diatur, driver harus menyelesaikan flip ke gambar kiri pada VSync berikutnya dan kemudian menyelesaikan flip ke gambar kanan pada VSync berikut.
Jika anggota FlipImmediate dari struktur DXGK_SETVIDPNSOURCEADDRESS_FLAGS diatur, driver harus segera mulai memindai dari alokasi baru. Misalnya, jika driver memindai gambar yang tepat, itu harus memulai pemindaian baru dari offset relatif yang sama di gambar yang tepat dari alokasi baru.
Anggota FlipStereo dan FlipStereoTemporaryMono tidak dapat keduanya diatur secara bersamaan.
Untuk persyaratan selengkapnya, lihat bagian Keterangan.
Mengatur anggota ini setara dengan mengatur bit kedelapan belas dari anggota Nilai 32-bit (0x00020000).
Didukung dimulai dengan Windows 8.
FlipStereoTemporaryMono
Menentukan apakah driver harus menggunakan gambar kiri alokasi stereo untuk bagian kanan dan kiri bingkai stereo. Driver melakukan operasi saat ini yang sama seperti dengan FlipStereo, kecuali bahwa driver harus memindai hanya dari gambar kiri untuk menghasilkan kedua gambar bingkai stereo.
Anggota ini harus diatur hanya jika driver melaporkan dukungan untuk opsi ini dalam mode tampilan saat ini dengan mengatur anggota Jenis struktur D3DKMDT_VIDPN_SOURCE_MODE ke D3DKMDT_RMT_GRAPHICS_STEREO_ADVANCED_SCAN.
Anggota FlipStereo dan FlipStereoTemporaryMono tidak dapat keduanya diatur secara bersamaan.
Anggota FlipStereoTemporaryMono dan FlipStereoPreferRight tidak dapat keduanya diatur secara bersamaan.
Untuk persyaratan selengkapnya, lihat bagian Keterangan.
Mengatur anggota ini setara dengan mengatur bit kesembilan belas dari anggota Nilai 32-bit (0x00040000).
Didukung dimulai dengan Windows 8.
FlipStereoPreferRight
Menentukan bahwa ketika driver mengkloning alokasi utama stereo ke monitor mono, itu harus menggunakan gambar yang tepat.
Anggota FlipStereoTemporaryMono dan FlipStereoPreferRight tidak dapat keduanya diatur secara bersamaan.
Untuk persyaratan selengkapnya, lihat bagian Keterangan.
Mengatur anggota ini setara dengan mengatur dua puluh bit anggota Nilai 32-bit (0x00080000).
Didukung dimulai dengan Windows 8.
BltStereoUseRight
Menentukan bahwa ketika driver disajikan dari alokasi stereo ke alokasi mono, itu harus menggunakan gambar yang tepat. Jika tidak diatur, driver harus menggunakan gambar kiri.
Mengatur anggota ini setara dengan mengatur bit dua puluh pertama dari anggota Nilai 32-bit (0x00100000).
Didukung dimulai dengan Windows 8.
PresentHistoryTokenOnly
Menentukan bahwa driver hanya boleh mengirimkan token riwayat saat ini.
Token riwayat saat ini adalah paket data yang dikirimkan aplikasi penyajian untuk menginformasikan Desktop Window Manager (DWM) bahwa penyajian selesai dan buffer swap chain back siap disajikan.
Mengatur anggota ini setara dengan mengatur bit dua puluh detik dari anggota Nilai 32-bit (0x00200000).
Didukung dimulai dengan Windows 8.
PresentRegionsValid
Menentukan bahwa D3DKMT_PRESENT. Anggota pPresentRegions adalah penunjuk yang valid (bukan NULL).
Mengatur anggota ini setara dengan mengatur bit dua puluh ketiga dari anggota Nilai 32-bit (0x00400000).
Didukung dimulai dengan Windows 8.
PresentDDA
Anggota ini dicadangkan dan harus diatur ke nol.
Mengatur anggota ini setara dengan mengatur bit dua puluh empat dari anggota Nilai 32-bit (0x00800000).
Didukung dimulai dengan Windows 8.
ProtectedContentBlankedOut
Anggota ini dicadangkan dan harus diatur ke nol.
Mengatur anggota ini setara dengan mengatur bit dua puluh lima dari anggota Nilai 32-bit (0x01000000).
Didukung dimulai dengan Windows 8.
RemoteSession
Menentukan bahwa operasi saat ini diarahkan ke sesi jarak jauh.
Mengatur anggota ini setara dengan mengatur bit dua puluh enam dari anggota Nilai 32-bit (0x02000000).
Didukung dimulai dengan Windows 8.
CrossAdapter
Adaptor silang.
DurationValid
Menunjukkan apakah durasi valid.
PresentIndirect
Ada tidak langsung.
PresentHMD
Reserved
Didukung dimulai dengan Windows 8.
Anggota ini dicadangkan dan harus diatur ke nol. Mengatur anggota ini ke nol setara dengan mengatur 9 bit yang tersisa (0xFF800000) dari anggota Nilai 32-bit ke nol.
Value
Nilai 32-bit yang mengidentifikasi cara melakukan operasi saat ini.
Keterangan
Jika salah satu anggota FlipStereo, FlipStereoTemporaryMono, atau FlipStereoPreferRight ditetapkan, kondisi ini berlaku:
- Anggota hAllocation dari struktur DXGKARG_SETVIDPNSOURCEADDRESS harus menunjuk ke alokasi yang dibuat dengan anggota Stereo yang diatur dalam anggota Bendera dari struktur D3DKMT_DISPLAYMODE .
- Anggota PrimarySegment dan PrimaryAddressdari DXGKARG_SETVIDPNSOURCEADDRESS harus menunjuk ke alamat fisik awal alokasi.
- Driver harus menghormati pengaturan anggota FlipImmediate dan FlipOnNextVSync dari struktur DXGK_SETVIDPNSOURCEADDRESS_FLAGS .
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Tersedia dimulai dengan Windows Vista. |
Header | d3dkmthk.h (termasuk D3dkmthk.h) |