struktur D3DDDI_ALLOCATIONINFO (d3dukmdt.h)

Struktur D3DDDI_ALLOCATIONINFO menjelaskan alokasi untuk WDDM v1. Klien grafis mode pengguna harus menggunakan D3DDDI_ALLOCATIONINFO2 sebagai gantinya.

Sintaks

typedef struct _D3DDDI_ALLOCATIONINFO {
  D3DKMT_HANDLE                  hAllocation;
  void                           D3DKMT_PTR(
    const VOID *unnamedParam1,
    pSystemMem unnamedParam2
  );
  void                           D3DKMT_PTR(
    VOID               *unnamedParam1,
    pPrivateDriverData unnamedParam2
  );
  UINT                           PrivateDriverDataSize;
  D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId;
  union {
    struct {
      UINT Primary : 1;
      UINT Stereo : 1;
#if ...
      UINT Reserved : 30;
#else
      UINT Reserved : 31;
#endif
    };
    UINT Value;
  } Flags;
} D3DDDI_ALLOCATIONINFO;

Anggota

hAllocation

[keluar] 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.

void D3DKMT_PTR( const VOID *unnamedParam1, pSystemMem unnamedParam2)

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. 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.Reserved

[in] Anggota ini dicadangkan dan harus diatur ke nol.

Flags.Value

[in] Nilai 32-bit yang mengidentifikasi jenis alokasi.

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 Vista
Header d3dukmdt.h (termasuk D3dumddi.h, D3dkmddi.h)

Lihat juga

CreateResource

D3DDDICB_ALLOCATE

D3DDDI_ALLOCATIONINFO2

D3DDDI_SURFACEINFO

D3DKMDDI_SHAREDPRIMARYSURFACEDATA

DXGKARG_CREATEALLOCATION

DXGK_ALLOCATIONINFO

DxgkDdiCreateAllocation

pfnAllocateCb