struktur D3DDDI_ALLOCATIONINFO2 (d3dukmdt.h)
Struktur D3DDDI_ALLOCATIONINFO2 menjelaskan alokasi.
Sintaks
typedef struct _D3DDDI_ALLOCATIONINFO2 {
D3DKMT_HANDLE hAllocation;
union {
HANDLE hSection;
const VOID *pSystemMem;
} D3DKMT_ALIGN64;
void D3DKMT_PTR(
VOID *unnamedParam1,
pPrivateDriverData unnamedParam2
);
UINT PrivateDriverDataSize;
D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId;
union {
struct {
UINT Primary : 1;
UINT Stereo : 1;
UINT OverridePriority : 1;
#if ...
UINT Reserved : 29;
#elif
UINT Reserved : 30;
#else
UINT Reserved : 31;
#endif
};
UINT Value;
} Flags;
D3DKMT_ALIGN64 D3DGPU_VIRTUAL_ADDRESS GpuVirtualAddress;
union {
UINT Priority;
D3DKMT_ALIGN64 ULONG_PTR Unused;
};
#if ...
D3DKMT_ALIGN64 ULONG_PTR Reserved[5];
#else
D3DKMT_ALIGN64 ULONG_PTR Reserved[6];
#endif
} D3DDDI_ALLOCATIONINFO2;
Anggota
hAllocation
[keluar] Handel D3DKMT_HANDLE yang mewakili handel mode kernel ke alokasi. Handel ini dikaitkan dengan handel sumber daya mode kernel (jika non-NULL) yang dikembalikan fungsi pfnAllocateCb runtime Direct3D di anggota hKMResource dari struktur D3DDDICB_ALLOCATE . Driver tampilan mode pengguna dapat menggunakan handel alokasi mode kernel ini untuk mereferensikan alokasi dalam buffer perintah.
D3DKMT_ALIGN64
Bersatu dengan hSection dan pSystemMem.
D3DKMT_ALIGN64.hSection
[in] Handel ke objek bagian yang valid. Gunakan hSection saat D3DKMT_CREATEALLOCATIONFLAGS::ExistingSection diatur.
D3DKMT_ALIGN64.pSystemMem
[in] Penunjuk ke memori sistem yang telah dialokasikan sebelumnya. Gunakan pSystemMem saat D3DKMT_CREATEALLOCATIONFLAGS::ExistingSection tidak diatur.
void D3DKMT_PTR( VOID *unnamedParam1, pPrivateDriverData unnamedParam2)
PrivateDriverDataSize
[in] Ukuran dalam byte data privat.
VidPnSourceId
[in] Nomor identifikasi VidPN berbasis nol dari sumber video yang ada di jalur topologi video present network (VidPN) jika alokasi adalah untuk permukaan utama. Driver harus mengatur VidPnSourceId hanya untuk jenis alokasi utama dan bukan untuk jenis alokasi lainnya. Jika driver mengatur VidPnSourceId untuk jenis alokasi lain dalam panggilan ke fungsi pfnAllocateCb , pfnAllocateCb mengembalikan D3DDDI_ID_NOTAPPLICABLE.
Ketika subsistem kernel grafis DirectX memulai pembuatan alokasi untuk permukaan utama bersama, driver miniport tampilan dapat menentukan nomor identifikasi dari anggota VidPnSourceId dari struktur D3DKMDDI_SHAREDPRIMARYSURFACEDATA yang ditunjuk anggota pPrivateDriverData dari struktur DXGK_ALLOCATIONINFO .
Flags
[in] Serikat yang berisi struktur atau nilai 32-bit yang mengidentifikasi jenis alokasi.
Flags.Primary
[in] UINT yang menentukan apakah alokasi adalah bagian dari desktop. Alokasi semacam itu secara implisit dapat diakses oleh CPU. Alokasi utama dapat disematkan saat pembuatan atau tidak disematkan saat pembuatan.
Mengatur anggota ini setara dengan mengatur bit pertama dari anggota Nilai 32-bit (0x00000001).
Flags.Stereo
[in] Didukung dimulai dengan Windows 8 (WDDM 1.2). UINT yang menentukan apakah alokasi adalah alokasi utama stereo. Anggota Stereo hanya dapat diatur saat anggota Utama diatur.
Mengatur anggota ini setara dengan mengatur bit kedua dari anggota Nilai 32-bit (0x00000002).
Flags.OverridePriority
[in] Didukung mulai Windows 10 versi 1703 (WDDM 2.2). Ambil alih prioritas, seperti yang ditetapkan oleh driver grafis mode pengguna.
Flags.Reserved
[in] Anggota ini dicadangkan dan harus diatur ke nol.
Flags.Value
[in] Nilai 32-bit yang mengidentifikasi jenis alokasi.
GpuVirtualAddress
[keluar] Alamat virtual GPU dari alokasi yang dibuat.
Priority
[in] Prioritas alokasi.
Unused
Tidak digunakan.
Reserved[5]
Reserved[6]
Keterangan
Ketika driver tampilan mode pengguna mengatur bendera bidang bit Utama di anggota Bendera D3DDDI_ALLOCATIONINFO, pembatasan tertentu berlaku untuk struktur DXGK_ALLOCATIONINFO di anggota pAllocationInfo dari struktur DXGKARG_CREATEALLOCATION untuk alokasi dalam panggilan ke fungsi DxgkDdiCreateAllocation driver miniport tampilan. Pembatasan ini mencakup hal-hal berikut:
Alokasi dialokasikan sesuai dengan preferensi; jika tidak, alokasi default ke kumpulan segmen tulis yang didukung, dan semua segmen yang ditentukan dalam set segmen tulis harus dapat diakses CPU.
Driver miniport tampilan tidak dapat mengatur bendera bidang bit berikut di anggota BenderaDXGK_ALLOCATIONINFO:
PermanentSysMem
Di-cache
Protected
ExistingSysMem
ExistingKernelSysMem
Konstanta D3DDDI_ID_NOTAPPLICABLE didefinisikan dalam D3dukmdt.h.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 7 |
Header | d3dukmdt.h |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk