Antarmuka IDirectDrawSurface7 (ddraw.h)

Aplikasi menggunakan metode antarmuka IDirectDrawSurface7 untuk membuat objek DirectDrawSurface dan bekerja dengan variabel tingkat sistem. Bagian ini adalah referensi ke metode antarmuka ini.

Warisan

Antarmuka IDirectDrawSurface7 mewarisi dari antarmuka IUnknown . IDirectDrawSurface7 juga memiliki jenis anggota ini:

Metode

Antarmuka IDirectDrawSurface7 memiliki metode ini.

 
IDirectDrawSurface7::AddAttachedSurface

Melampirkan permukaan z-buffer yang ditentukan ke permukaan ini.
IDirectDrawSurface7::AddOverlayDirtyRect

Metode IDirectDrawSurface7::AddOverlayDirtyRect saat ini tidak diimplementasikan.
IDirectDrawSurface7::Blt

Melakukan transfer blok bit (bitblt). Metode ini tidak mendukung z-buffering atau alpha blending selama operasi bitblt.
IDirectDrawSurface7::BltBatch

Metode IDirectDrawSurface7::BltBatch saat ini tidak diimplementasikan.
IDirectDrawSurface7::BltFast

Melakukan bitblt salinan sumber atau bitblt transparan dengan menggunakan kunci warna sumber atau kunci warna tujuan.
IDirectDrawSurface7::ChangeUniquenessValue

Memperbarui nilai keunikan secara manual untuk permukaan ini.
IDirectDrawSurface7::D eleteAttachedSurface

Melepaskan satu atau beberapa permukaan yang terpasang.
IDirectDrawSurface7::EnumAttachedSurfaces

Menghitung semua permukaan yang melekat pada permukaan ini.
IDirectDrawSurface7::EnumOverlayZOrders

Menghitung permukaan overlay pada tujuan yang ditentukan. Anda dapat menghitung overlay dalam urutan front-to-back atau back-to-front.
IDirectDrawSurface7::Flip

Membuat memori permukaan yang terkait dengan permukaan DDSCAPS_BACKBUFFER menjadi terkait dengan permukaan buffer depan.
IDirectDrawSurface7::FreePrivateData

Membebaskan data privat yang ditentukan yang terkait dengan permukaan ini.
IDirectDrawSurface7::GetAttachedSurface

Mendapatkan permukaan terpasang yang memiliki kemampuan yang ditentukan, dan menaikkan jumlah referensi antarmuka yang diambil.
IDirectDrawSurface7::GetBltStatus

Mendapatkan status tentang operasi transfer blok bit (bitblt).
IDirectDrawSurface7::GetCaps

Mengambil kemampuan permukaan ini. Kemampuan ini belum tentu terkait dengan kemampuan perangkat tampilan.
IDirectDrawSurface7::GetClipper

Mengambil objek DirectDrawClipper yang terkait dengan permukaan ini, dan menaikkan jumlah referensi clipper yang dikembalikan.
IDirectDrawSurface7::GetColorKey

Mengambil nilai kunci warna untuk permukaan ini.
IDirectDrawSurface7::GetDC

Membuat handel yang kompatibel dengan GDI dari konteks perangkat untuk permukaan ini.
IDirectDrawSurface7::GetDDInterface

Mengambil antarmuka ke objek DirectDraw yang digunakan untuk membuat permukaan ini.
IDirectDrawSurface7::GetFlipStatus

Mengambil status tentang apakah permukaan ini telah menyelesaikan proses membaliknya.
IDirectDrawSurface7::GetLOD

Mengambil tingkat detail maksimum (LOD) yang saat ini ditetapkan untuk permukaan mipmap terkelola. Metode ini hanya berhasil pada tekstur terkelola.
IDirectDrawSurface7::GetOverlayPosition

Mengambil koordinat tampilan permukaan ini. Metode ini digunakan pada permukaan overlay aktif yang terlihat (yaitu, permukaan yang memiliki set bendera DDSCAPS_OVERLAY).
IDirectDrawSurface7::GetPalette

Mengambil objek DirectDrawPalette yang terkait dengan permukaan ini, dan menaikkan jumlah referensi palet yang dikembalikan.
IDirectDrawSurface7::GetPixelFormat

Mengambil format warna dan piksel permukaan ini.
IDirectDrawSurface7::GetPriority

Mengambil prioritas manajemen tekstur untuk tekstur ini. Metode ini hanya berhasil pada tekstur terkelola.
IDirectDrawSurface7::GetPrivateData

Menyalin data privat yang terkait dengan permukaan ini ke buffer yang disediakan.
IDirectDrawSurface7::GetSurfaceDesc

Mengambil deskripsi permukaan ini dalam kondisinya saat ini.
IDirectDrawSurface7::GetUniquenessValue

Mengambil nilai keunikan saat ini untuk permukaan ini.
IDirectDrawSurface7::Initialize

Menginisialisasi objek DirectDrawSurface.
IDirectDrawSurface7::IsLost

Menentukan apakah memori permukaan yang terkait dengan objek DirectDrawSurface telah dibebaskan.
IDirectDrawSurface7::Lock

Mendapatkan pointer ke memori permukaan.
IDirectDrawSurface7::P ageLock

Mencegah permukaan memori sistem di-paged out sementara operasi transfer blok bit (bitblt) yang menggunakan transfer akses memori langsung (DMA) ke atau dari memori sistem sedang berlangsung.
IDirectDrawSurface7::P ageUnlock

Membuka permukaan memori sistem, yang kemudian memungkinkannya untuk di-page out.
IDirectDrawSurface7::ReleaseDC

Merilis handel konteks perangkat yang sebelumnya diperoleh dengan menggunakan metode IDirectDrawSurface7::GetDC.
IDirectDrawSurface7::Restore

Memulihkan permukaan yang telah hilang. Ini terjadi ketika memori permukaan yang terkait dengan objek DirectDrawSurface telah dibebaskan.
IDirectDrawSurface7::SetClipper

Melampirkan objek clipper ke, atau menghapus satu dari, permukaan ini.
IDirectDrawSurface7::SetColorKey

Mengatur nilai kunci warna untuk objek DirectDrawSurface jika perangkat keras mendukung kunci warna per permukaan.
IDirectDrawSurface7::SetLOD

Mengatur tingkat detail maksimum (LOD) untuk permukaan mipmap terkelola. Metode ini hanya berhasil pada tekstur terkelola.
IDirectDrawSurface7::SetOverlayPosition

Mengubah koordinat tampilan permukaan overlay.
IDirectDrawSurface7::SetPalette

Melampirkan objek palet ke (atau melepaskan satu dari) permukaan. Permukaan menggunakan palet ini untuk semua operasi berikutnya. Perubahan palet segera terjadi, tanpa memperhatikan pengaturan waktu refresh.
IDirectDrawSurface7::SetPriority

Menetapkan prioritas manajemen tekstur untuk tekstur ini. Metode ini hanya berhasil pada tekstur terkelola.
IDirectDrawSurface7::SetPrivateData

Mengaitkan data dengan permukaan yang dimaksudkan untuk digunakan oleh aplikasi, bukan oleh DirectDraw. Data diteruskan oleh nilai, dan beberapa set data dapat dikaitkan dengan satu permukaan.
IDirectDrawSurface7::SetSurfaceDesc

Mengatur karakteristik permukaan yang ada.
IDirectDrawSurface7::Unlock

Memberi tahu DirectDraw bahwa manipulasi permukaan langsung selesai.
IDirectDrawSurface7::UpdateOverlay

Memposisikan ulang atau memodifikasi atribut visual permukaan overlay. Permukaan-permukaan ini harus memiliki bendera DDSCAPS_OVERLAY yang ditetapkan.
IDirectDrawSurface7::UpdateOverlayDisplay

Metode IDirectDrawSurface7::UpdateOverlayDisplay saat ini tidak diimplementasikan.
IDirectDrawSurface7::UpdateOverlayzOrder

Mengatur urutan z dari overlay.

Keterangan

Metode antarmuka IDirectDrawSurface7 dapat diatur ke dalam grup berikut:

Grup Metode
Mengalokasikan memori Menginisialisasi, IsLost, dan Memulihkan
Melampirkan permukaan AddAttachedSurface, DeleteAttachedSurface, EnumAttachedSurfaces, dan GetAttachedSurface
BitBltting Blt, BltBatch, BltFast, dan GetBltStatus
Tombol warna GetColorKey dan SetColorKey
Konteks perangkat GetDC dan ReleaseDC
Membalik Balikkan dan GetFlipStatus
Mengunci permukaan Kunci, PageLock, PageUnlock, dan Buka Kunci
Lain-lain GetDDInterface
Overlay AddOverlayDirtyRect, EnumOverlayZOrders, GetOverlayPosition, SetOverlayPosition, UpdateOverlay, UpdateOverlayDisplay, dan UpdateOverlayZOrder
Data permukaan privat FreePrivateData, GetPrivateData, dan SetPrivateData
Kemampuan surface GetCaps
Pengklip permukaan GetClipper dan SetClipper
Karakteristik permukaan ChangeUniquenessValue, GetPixelFormat, GetSurfaceDesc, GetUniquenessValue, dan SetSurfaceDesc
Palet permukaan GetPalette dan SetPalette
Tekstur GetLOD, GetPriority, SetLOD, dan SetPriority
 

Antarmuka IDirectDrawSurface7 memperluas fitur antarmuka versi sebelumnya dengan menawarkan metode yang menawarkan manajemen permukaan yang lebih baik dan kemudahan penggunaan. Banyak metode dalam antarmuka ini menerima parameter yang sedikit berbeda dari rekan-rekan mereka di versi antarmuka sebelumnya. Di mana pun metode antarmuka IDirectDrawSurface3 mungkin menerima struktur DDSURFACEDESC atau antarmuka IDirectDrawSurface3 , metode dalam IDirectDrawSurface7 menerima struktur DDSURFACEDESC2 atau antarmuka IDirectDrawSurface7 , sebagai gantinya.

Gunakan jenis data LPDIRECTDRAWSURFACE, LPDIRECTDRAWSURFACE2, LPDIRECTDRAWSURFACE3, LPDIRECTDRAWSURFACE4, atau LPDIRECTDRAWSURFACE7 untuk mendeklarasikan variabel yang menunjuk ke berbagai antarmuka objek DirectDrawSurface. File header Ddraw.h mendeklarasikan jenis data ini dengan kode berikut:


typedef struct IDirectDrawSurface     FAR *LPDIRECTDRAWSURFACE;
typedef struct IDirectDrawSurface2    FAR *LPDIRECTDRAWSURFACE2;
typedef struct IDirectDrawSurface3    FAR *LPDIRECTDRAWSURFACE3;
typedef struct IDirectDrawSurface4    FAR *LPDIRECTDRAWSURFACE4;
typedef struct IDirectDrawSurface7    FAR *LPDIRECTDRAWSURFACE7;

Persyaratan

   
Target Platform Windows
Header ddraw.h