Bagikan melalui


struktur D3DKMT_PRESENT (d3dkmthk.h)

Struktur D3DKMT_PRESENT menjelaskan operasi saat ini.

Sintaks

typedef struct _D3DKMT_PRESENT {
  union {
    [in] D3DKMT_HANDLE hDevice;
    [in] D3DKMT_HANDLE hContext;
  };
  void                           D3DKMT_PTR(
    HWND    unnamedParam1,
    hWindow unnamedParam2
  );
  [in] D3DDDI_VIDEO_PRESENT_SOURCE_ID VidPnSourceId;
  [in] D3DKMT_HANDLE                  hSource;
  [in] D3DKMT_HANDLE                  hDestination;
  [in] UINT                           Color;
  [in] RECT                           DstRect;
  [in] RECT                           SrcRect;
  [in] UINT                           SubRectCnt;
  void                           D3DKMT_PTR(
    const RECT   *unnamedParam1,
    pSrcSubRects unnamedParam2
  );
  [in] UINT                           PresentCount;
  [in] D3DDDI_FLIPINTERVAL_TYPE       FlipInterval;
  [in] D3DKMT_PRESENTFLAGS            Flags;
  [in] ULONG                          BroadcastContextCount;
       D3DKMT_HANDLE                  BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT];
  [in] HANDLE                         PresentLimitSemaphore;
  [in] D3DKMT_PRESENTHISTORYTOKEN     PresentHistoryToken;
       D3DKMT_PRESENT_RGNS            *pPresentRegions;
  union {
         D3DKMT_HANDLE hAdapter;
         D3DKMT_HANDLE hIndirectContext;
  };
       UINT                           Duration;
  void                           D3DKMT_PTR(
    D3DKMT_HANDLE          *unnamedParam1,
    BroadcastSrcAllocation unnamedParam2
  );
  void                           D3DKMT_PTR(
    D3DKMT_HANDLE          *unnamedParam1,
    BroadcastDstAllocation unnamedParam2
  );
       UINT                           PrivateDriverDataSize;
  void                           D3DKMT_PTR(
    PVOID              unnamedParam1,
    pPrivateDriverData unnamedParam2
  );
       BOOLEAN                        bOptimizeForComposition;
} D3DKMT_PRESENT;

Anggota

[in] hDevice

Jenis data D3DKMT_HANDLE yang mewakili handel mode kernel ke perangkat untuk disajikan. Handel perangkat diberikan ke fungsi D3DKMTPresent dalam gabungan yang D3DKMT_PRESENT berisi untuk kompatibilitas dengan Microsoft Direct3D versi 10.

[in] hContext

Jenis data D3DKMT_HANDLE yang mewakili handel mode kernel ke konteks perangkat untuk disajikan.

void D3DKMT_PTR( HWND unnamedParam1, hWindow unnamedParam2)

[in] VidPnSourceId

Nomor identifikasi berbasis nol dari sumber video yang ada di jalur topologi video present network (VidPN) untuk membatasi tampilan, jika bendera bit-field RestrictVidPnSource diatur dalam anggota Bendera .

Jika bendera bit-field RestrictVidPnSource diatur dan anggota hWindow adalah NULL, anggota VidPnSourceId menunjukkan output mana bitblt layar penuh yang diarahkan ke Jika RestrictVidPnSource diatur dan hWindow bukan NULL, VidPnSourceId menunjukkan output mana yang membatasi transfer blok bit berjendela.

[in] hSource

Jenis data D3DKMT_HANDLE yang mewakili handel mode kernel ke memori sistem atau alokasi utama untuk disajikan, jika bendera bidang bit ColorFill tidak diatur di anggota Bendera .

[in] hDestination

Jenis data D3DKMT_HANDLE yang mewakili handel mode kernel ke alokasi tujuan. hDestination bisa menjadi nol jika tujuan tidak diketahui.

Handel dalam hDestination hanya valid jika bendera blt bit-field diatur di anggota Bendera .

Jika handel di anggota hDestination bukan nol, handel hDestination dan hWindow harus merujuk ke dua alokasi utama yang berbeda dengan ukuran yang sama, perangkat di anggota hDevice harus memiliki sumber video yang ada yang diidentifikasi oleh anggota VidPnSourceId , dan bendera bit-field SrcRectValid harus diatur dalam anggota Bendera .

[in] Color

Nilai isi warna atau kunci warna ARGB 32-bit (lihat enumerasi D3DDDIFORMAT ). Nilai untuk isian warna diatur saat bendera bidang bit ColorFill diatur di anggota Bendera . Nilai untuk kunci warna diatur ketika bendera bit-field SrcColorKey atau DstColorKey diatur di anggota Bendera . Perhatikan bahwa hanya salah satu bendera bidang bit ColorFill, SrcColorKey, dan DstColorKey yang diatur kapan saja.

Jika format utama dipalsukan RGB, Warna berisi indeks palet daripada nilai D3DDDIFMT_A8R8G8B8 dari D3DDDIFORMAT.

[in] DstRect

RECT tujuan opsional untuk bitblt. RECT tujuan hanya digunakan jika bendera bit-field DstRectValid diatur dalam anggota Bendera .

[in] SrcRect

RECT sumber opsional untuk bitblt. RECT sumber hanya digunakan jika bendera bit-field SrcRectValid diatur dalam anggota Bendera .

[in] SubRectCnt

Jumlah wilayah subrektangular yang ditunjukkan pSrcSubRects ke yang ditentukan saat menyajikan.

void D3DKMT_PTR( const RECT *unnamedParam1, pSrcSubRects unnamedParam2)

[in] PresentCount

Jumlah operasi saat ini yang dapat diantrekan untuk perangkat yang ditentukan oleh hDevice.

[in] FlipInterval

Nilai D3DDDI_FLIPINTERVAL_TYPE-ketik yang menunjukkan interval balik (yaitu, jika flip terjadi setelah sinkronisasi vertikal nol, satu, dua, tiga, atau empat).

[in] Flags

Struktur D3DKMT_PRESENTFLAGS yang mengidentifikasi, dalam bendera bit-field, cara menampilkan. Perhatikan bahwa bendera bidang bit ColorFill, SrcColorKey, dan DstColorKey saling eksklusif.

[in] BroadcastContextCount

Jumlah konteks tambahan dalam array yang ditentukan BroadcastContext .

[in] BroadcastContext[D3DDDI_MAX_BROADCAST_CONTEXT]

Array D3DKMT_HANDLE jenis data yang mewakili handel mode kernel ke konteks tambahan untuk menyiarkan operasi saat ini. Konstanta D3DDDI_MAX_BROADCAST_CONTEXT, yang didefinisikan sebagai 64, menentukan jumlah maksimum konteks yang dapat disiarkan oleh OpenGL ICD untuk operasi saat ini.

Penyiaran hanya didukung untuk operasi balik. Untuk menyiarkan operasi balik, driver miniport tampilan harus mendukung flip berbasis I/O (MMIO) yang dipetakan memori. Untuk menunjukkan dukungan flip MMIO, driver miniport tampilan mengatur bendera bit-field FlipOnVSyncMmIo di anggota FlipCaps dari struktur DXGK_DRIVERCAPS ketika fungsi DxgkDdiQueryAdapterInfo dipanggil.

Konteks asli yang ditentukan anggota hContext dan bahwa OpenGL ICD hadir bukan elemen dalam array BroadcastContext . Misalnya, jika array BroadcastContext berisi satu elemen, OpenGL ICD mengirimkan operasi saat ini ke konteks pemilik (hContext) dan menyiarkan ke satu konteks tambahan tersebut.

[in] PresentLimitSemaphore

Handel ke semaphore batas saat ini.

Didukung dimulai dengan Windows 7.

[in] PresentHistoryToken

Struktur D3DKMT_PRESENTHISTORYTOKEN yang mengidentifikasi jenis operasi saat ini.

Didukung dimulai dengan Windows 7.

pPresentRegions

Pointer ke struktur D3DKMT_PRESENT_RGNS yang mengidentifikasi wilayah kotor dan bergerak.

Didukung dimulai dengan Windows 8.

hAdapter

Handel ke adaptor grafis.

hIndirectContext

Konteks adaptor tidak langsung untuk mengalihkan melalui jalur DoD yang ada. Anggota ini hanya valid jika bendera PresentIndirect diatur.

Duration

Durasi per saat ini. Hanya valid ketika bendera DurationValid diatur.

void D3DKMT_PTR( D3DKMT_HANDLE *unnamedParam1, BroadcastSrcAllocation unnamedParam2)

void D3DKMT_PTR( D3DKMT_HANDLE *unnamedParam1, BroadcastDstAllocation unnamedParam2)

PrivateDriverDataSize

Ukuran data driver privat.

void D3DKMT_PTR( PVOID unnamedParam1, pPrivateDriverData unnamedParam2)

bOptimizeForComposition

Menunjukkan apakah perangkat dioptimalkan untuk komposisi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista
Header d3dkmthk.h (termasuk D3dkmthk.h)

Lihat juga

D3DDDIFORMAT

D3DKMTPresent

D3DKMT_PRESENTFLAGS

D3DKMT_PRESENTHISTORYTOKEN

D3DKMT_PRESENT_RGNS

RECT