struktur D3DDDICB_RENDER (d3dumddi.h)

Struktur D3DDDICB_RENDER menjelaskan buffer perintah saat ini yang akan dirender.

Sintaks

typedef struct _D3DDDICB_RENDER {
  UINT                     CommandLength;
  UINT                     CommandOffset;
  UINT                     NumAllocations;
  UINT                     NumPatchLocations;
  VOID                     *pNewCommandBuffer;
  UINT                     NewCommandBufferSize;
  D3DDDI_ALLOCATIONLIST    *pNewAllocationList;
  UINT                     NewAllocationListSize;
  D3DDDI_PATCHLOCATIONLIST *pNewPatchLocationList;
  UINT                     NewPatchLocationListSize;
  D3DDDICB_RENDERFLAGS     Flags;
  HANDLE                   hContext;
  UINT                     BroadcastContextCount;
  HANDLE                   BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
  ULONG                    QueuedBufferCount;
  D3DGPU_VIRTUAL_ADDRESS   NewCommandBuffer;
  VOID                     *pPrivateDriverData;
  UINT                     PrivateDriverDataSize;
  D3DDDI_MARKERLOGTYPE     MarkerLogType;
  UINT                     RenderCBSequence;
  union {
    struct {
      UINT FirstAPISequenceNumberHigh;
      UINT CompletedAPISequenceNumberLow0Size;
      UINT CompletedAPISequenceNumberLow1Size;
      UINT BegunAPISequenceNumberLow0Size;
      UINT BegunAPISequenceNumberLow1Size;
    };
    UINT BatchedMarkerDataCount;
  };
  union {
    struct {
      const UINT *pCompletedAPISequenceNumberLow0;
      const UINT *pCompletedAPISequenceNumberLow1;
      const UINT *pBegunAPISequenceNumberLow0;
      const UINT *pBegunAPISequenceNumberLow1;
    };
    const D3DDDI_BATCHEDMARKERDATA *pBatchedMarkerData;
  };
} D3DDDICB_RENDER;

Anggota

CommandLength

[in] Ukuran, dalam byte, dari buffer perintah, mulai dari offset nol.

CommandOffset

[in] Offset, dalam byte, ke perintah pertama dalam buffer perintah.

NumAllocations

[in] Jumlah elemen dalam daftar alokasi.

NumPatchLocations

[in] Jumlah elemen dalam daftar lokasi patch.

pNewCommandBuffer

[keluar] Penunjuk ke buffer perintah yang diterima driver tampilan mode pengguna untuk digunakan dalam panggilan berikutnya ke fungsi pfnRenderCb .

NewCommandBufferSize

[masuk/keluar] Ukuran, dalam byte, yang diminta driver tampilan mode pengguna untuk buffer perintah berikutnya.

Driver menerima ukuran, dalam byte, dari buffer perintah berikutnya untuk digunakan.

pNewAllocationList

[keluar] Array struktur D3DDDI_ALLOCATIONLIST yang diterima driver tampilan mode pengguna untuk digunakan sebagai daftar alokasi dalam panggilan berikutnya ke fungsi pfnRenderCb .

NewAllocationListSize

[masuk/keluar] Jumlah elemen yang diminta driver tampilan mode pengguna untuk daftar alokasi berikutnya.

Driver menerima jumlah elemen untuk daftar alokasi yang akan tersedia ketika buffer perintah berikutnya dikirimkan.

pNewPatchLocationList

[keluar] Array struktur D3DDDI_PATCHLOCATIONLIST yang diterima driver tampilan mode pengguna untuk digunakan sebagai daftar lokasi patch dalam panggilan berikutnya ke fungsi pfnRenderCb .

NewPatchLocationListSize

[masuk/keluar] Jumlah elemen yang diminta driver tampilan mode pengguna untuk daftar lokasi patch berikutnya.

Driver menerima jumlah elemen untuk daftar lokasi patch yang akan tersedia ketika buffer perintah berikutnya dikirimkan.

Flags

[in] Struktur D3DDDICB_RENDERFLAGS yang menunjukkan informasi tentang buffer perintah yang akan dirender.

hContext

[in] Handel ke konteks tempat driver mengirimkan operasi penyajian. Driver tampilan mode pengguna sebelumnya membuat konteks ini dengan memanggil fungsi pfnCreateContextCb .

BroadcastContextCount

[in] Jumlah konteks tambahan dalam array yang ditentukan anggota BroadcastContext .

BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]

[in] Array handel ke konteks tambahan untuk menyiarkan buffer perintah saat ini. Konstanta D3DDDI_MAX_BROADCAST_CONTEXT, yang didefinisikan sebagai 64, menentukan jumlah maksimum konteks tambahan tempat driver tampilan mode pengguna dapat menyiarkan buffer perintah saat ini.

Konteks asli yang ditentukan anggota hContext dan yang memiliki buffer perintah bukan elemen dalam array BroadcastContext . Misalnya, jika array BroadcastContext berisi satu elemen, driver tampilan mode pengguna mengirimkan buffer perintah ke konteks pemilik (hContext) dan menyiarkan ke satu konteks tambahan tersebut.

QueuedBufferCount

[keluar] Jumlah buffer DMA yang diantrekan ke konteks yang ditentukan anggota hContext setelah pengiriman saat ini terjadi.

NewCommandBuffer

Anggota ini dicadangkan dan harus diatur ke nol.

Anggota ini tersedia dimulai dengan Windows 7.

pPrivateDriverData

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

Anggota ini tersedia dimulai dengan Windows 7.

PrivateDriverDataSize

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

Anggota ini tersedia dimulai dengan Windows 7.

MarkerLogType

Enumerasi D3DDDI_MARKERLOGTYPE yang menunjukkan jenis penanda di log Pelacakan Peristiwa untuk Windows (ETW) yang didukung driver tampilan mode pengguna.

RenderCBSequence

Pengidentifikasi unik untuk setiap panggilan fungsi pfnRenderCb . Dimulai pada nilai 1 untuk konteks yang terkait dengan DDI mode pengguna berulir tunggal dan rentang ke nilai 0x80000001 untuk konteks yang terkait dengan DDI mode pengguna utas bebas. Driver tampilan mode pengguna harus menaikkan nilai untuk setiap panggilan pfnRenderCb yang dilakukannya pada mesin apa pun.

FirstAPISequenceNumberHigh

Digunakan oleh driver untuk meneruskan nomor urutan API konteks.

CompletedAPISequenceNumberLow0Size

Digunakan oleh driver untuk meneruskan nomor urutan API konteks.

CompletedAPISequenceNumberLow1Size

Digunakan oleh driver untuk meneruskan nomor urutan API konteks.

BegunAPISequenceNumberLow0Size

Digunakan oleh driver untuk meneruskan nomor urutan API konteks.

BegunAPISequenceNumberLow1Size

Digunakan oleh driver untuk meneruskan nomor urutan API konteks.

BatchedMarkerDataCount

pCompletedAPISequenceNumberLow0

Pointer yang digunakan oleh driver untuk meneruskan nomor urutan API konteks.

pCompletedAPISequenceNumberLow1

Pointer yang digunakan oleh driver untuk meneruskan nomor urutan API konteks.

pBegunAPISequenceNumberLow0

Pointer yang digunakan oleh driver untuk meneruskan nomor urutan API konteks.

pBegunAPISequenceNumberLow1

Pointer yang digunakan oleh driver untuk meneruskan nomor urutan API konteks.

pBatchedMarkerData

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista
Header d3dumddi.h (termasuk D3dumddi.h)

Lihat juga

D3DDDICB_RENDERFLAGS

D3DDDI_ALLOCATIONLIST

D3DDDI_PATCHLOCATIONLIST

pfnRenderCb