Bagikan melalui


Fungsi DrvSynchronizeSurface (winddi.h)

Fungsi DrvSynchronizeSurface memberi tahu driver bahwa GDI perlu menulis ke permukaan yang ditentukan. Fungsi ini memungkinkan operasi menggambar yang dilakukan oleh koproseder perangkat untuk dikoordinasikan dengan GDI.

Sintaks

void DrvSynchronizeSurface(
  SURFOBJ *pso,
  RECTL   *prcl,
  FLONG   fl
);

Parameter

pso

Pointer ke struktur SURFOBJ yang mengidentifikasi permukaan tempat sinkronisasi gambar terjadi.

prcl

Menentukan struktur RECTL yang mewakili permukaan yang akan digambar GDI, atau NULL. Jika ini tidak bertabrakan dengan operasi menggambar yang sedang berlangsung, driver dapat memilih untuk membiarkan GDI menggambar tanpa menunggu coprocessor selesai.

fl

Adalah bendera yang menentukan peristiwa di mana GDI membuat permintaan sinkronisasi. Parameter ini bisa menjadi salah satu nilai berikut:

DSS_TIMER_EVENT

GDI memanggil fungsi ini karena peristiwa timer sinkronisasi. Peristiwa timer dihasilkan hanya untuk driver yang menentukan bit GCAPS2_SYNCTIMER struktur DEVINFO .

DSS_FLUSH_EVENT

GDI memanggil fungsi ini karena peristiwa flush sinkronisasi. Peristiwa flush ini dihasilkan hanya untuk driver yang menentukan bit GCAPS2_SYNCFLUSH dari struktur DEVINFO .

Mengembalikan nilai

Tidak ada

Keterangan

Fungsi ini memungkinkan operasi menggambar yang dilakukan oleh koproseder perangkat untuk dikoordinasikan dengan GDI.

DrvSynchronizeSurface dapat diimplementasikan secara opsional dalam driver tampilan. GDI memanggil fungsi ini hanya jika dikaitkan dengan EngAssociateSurface. GDI memanggil DrvSynchronizeSurface tepat sebelum menggambar langsung ke permukaan perangkat.

DrvSynchronizeSurface dimaksudkan untuk mendukung perangkat yang menggunakan coprocessor untuk menggambar. Perangkat seperti itu dapat memulai operasi gambar panjang dan kembali ke GDI saat operasi berlanjut. Jika driver perangkat tidak melakukan semua operasi menggambar ke permukaan, ada kemungkinan bahwa operasi gambar berikutnya akan ditangani oleh GDI. Dalam hal ini, GDI perlu menunggu coprocessor menyelesaikan pekerjaannya sebelum GDI dapat menggambar di permukaan.

Fungsi ini harus kembali ketika aman bagi GDI untuk menggambar di permukaan dalam wilayah persegi panjang yang ditentukan oleh rangkaian.

DrvSynchronizeSurface bukanlah fungsi output.

Persyaratan

   
Target Platform Desktop
Header winddi.h (termasuk Winddi.h)

Lihat juga

DrvEnablePDEV

DrvSynchronize

EngAssociateSurface