Bagikan melalui


struktur DD_FLIPDATA (ddrawint.h)

Struktur DD_FLIPDATA berisi informasi yang diperlukan untuk melakukan flip.

Sintaks

typedef struct _DD_FLIPDATA {
  PDD_DIRECTDRAW_GLOBAL lpDD;
  PDD_SURFACE_LOCAL     lpSurfCurr;
  PDD_SURFACE_LOCAL     lpSurfTarg;
  DWORD                 dwFlags;
  HRESULT               ddRVal;
  VOID                  *Flip;
  PDD_SURFACE_LOCAL     lpSurfCurrLeft;
  PDD_SURFACE_LOCAL     lpSurfTargLeft;
} *PDD_FLIPDATA, DD_FLIPDATA;

Anggota

lpDD

Menunjuk ke struktur DD_DIRECTDRAW_GLOBAL yang menjelaskan perangkat driver.

lpSurfCurr

Menunjuk ke struktur DD_SURFACE_LOCAL yang menjelaskan permukaan saat ini.

lpSurfTarg

Menunjuk ke struktur DD_SURFACE_LOCAL yang menjelaskan permukaan target; yaitu, permukaan yang harus dibalik pengemudi.

dwFlags

Menunjukkan sekumpulan bendera yang memberikan detail kepada driver untuk membalik. Anggota ini bisa menjadi bitwise ATAU dari bendera berikut:

Bendera Makna
DDFLIP_DONOTWAIT Menentukan untuk mengembalikan DDERR_WASSTILLDRAWING jika akselerator sibuk. Defaultnya adalah DDFLIP_WAIT.
DDFLIP_EVEN Permukaan yang ditunjukkan anggota lpSurfTarg hanya berisi bidang genap data video. Bendera ini hanya berlaku ketika permukaan adalah overlay, dan saling eksklusif dari DDFLIP_ODD.
DDFLIP_ODD Permukaan yang ditunjuk anggota lpSurfTarg hanya berisi bidang data video yang ganjil. Bendera ini hanya berlaku ketika permukaan adalah overlay, dan saling eksklusif dari DDFLIP_EVEN.
DDFLIP_NOVSYNC Driver harus melakukan balik dan segera kembali. Biasanya, buffer belakang saat ini (yang dulunya merupakan buffer depan) masih terlihat hingga pelacakan ulang vertikal berikutnya. Operasi berikutnya yang melibatkan permukaan tempat anggota lpSurfCurr dan lpSurfTarg menunjuk tidak memeriksa untuk melihat apakah flip fisik telah selesai. Ini memungkinkan aplikasi untuk melakukan flip pada frekuensi yang lebih tinggi daripada kecepatan refresh monitor, meskipun mungkin memperkenalkan artefak yang terlihat.
DDFLIP_INTERVAL2 Pengandar harus melakukan flip pada setiap sinkronisasi vertikal lainnya. Ini harus mengembalikan DDERR_WASSTILLDRAWING sampai jejak vertikal kedua telah terjadi. Bendera ini saling eksklusif dari DDFLIP_INTERVAL3 dan DDFLIP_INTERVAL4.
DDFLIP_INTERVAL3 Driver harus melakukan flip pada setiap sinkronisasi vertikal ketiga. Ini harus mengembalikan DDERR_WASSTILLDRAWING sampai jejak vertikal ketiga telah terjadi. Bendera ini saling eksklusif dari DDFLIP_INTERVAL2 dan DDFLIP_INTERVAL4.
DDFLIP_INTERVAL4 Driver harus melakukan flip pada setiap sinkronisasi vertikal keempat. Ini harus mengembalikan DDERR_WASSTILLDRAWING sampai jejak vertikal keempat telah terjadi. Bendera ini saling eksklusif dari DDFLIP_INTERVAL2 dan DDFLIP_INTERVAL3.
DDFLIP_STEREO Menentukan untuk mengaktifkan autoflipping stereo (perangkat keras secara otomatis membalik antara buffer kiri dan kanan selama setiap refresh layar).
DDFLIP_WAIT Menentukan untuk tidak mengembalikan sampai terjadi flip atau kesalahan.

ddRVal

Menentukan lokasi di mana driver menulis nilai pengembalian panggilan balik DdFlip . Kode pengembalian DD_OK menunjukkan keberhasilan. Untuk informasi selengkapnya, lihat Mengembalikan Nilai untuk DirectDraw.

Flip

Digunakan oleh Microsoft DirectDraw API dan tidak boleh diisi oleh driver.

lpSurfCurrLeft

Menunjuk ke struktur DD_SURFACE_LOCAL yang menjelaskan permukaan kiri saat ini.

lpSurfTargLeft

Menunjuk ke struktur DD_SURFACE_LOCAL yang menjelaskan permukaan target kiri untuk di balikkan.

Persyaratan

Persyaratan Nilai
Header ddrawint.h (termasuk Winddi.h)

Lihat juga

DdFlip