Auf Englisch lesen

Freigeben über


IDirectDrawSurface7-Schnittstelle (ddraw.h)

Anwendungen verwenden die Methoden der IDirectDrawSurface7-Schnittstelle , um DirectDrawSurface-Objekte zu erstellen und mit Variablen auf Systemebene zu arbeiten. Dieser Abschnitt enthält einen Verweis auf die Methoden dieser Schnittstelle.

Vererbung

Die IDirectDrawSurface7-Schnittstelle erbt von der IUnknown-Schnittstelle . IDirectDrawSurface7 verfügt auch über folgende Membertypen:

Methoden

Die IDirectDrawSurface7-Schnittstelle verfügt über diese Methoden.

 
IDirectDrawSurface7::AddAttachedSurface

Fügt die angegebene Z-Pufferoberfläche an diese Oberfläche an.
IDirectDrawSurface7::AddOverlayDirtyRect

Die IDirectDrawSurface7::AddOverlayDirtyRect-Methode ist derzeit nicht implementiert.
IDirectDrawSurface7::Blt

Führt eine Bitblockübertragung (Bitblt) aus. Diese Methode unterstützt bei Bitblt-Vorgängen keine Z-Pufferung oder Alphamischung.
IDirectDrawSurface7::BltBatch

Die IDirectDrawSurface7::BltBatch-Methode ist derzeit nicht implementiert.
IDirectDrawSurface7::BltFast

Führt eine Bitblt- oder transparente Bitblt-Quellkopie mithilfe eines Quellfarbschlüssels oder Zielfarbschlüssels aus.
IDirectDrawSurface7::ChangeUniquenessValue

Aktualisiert den Eindeutigkeitswert für diese Oberfläche manuell.
IDirectDrawSurface7::D eleteAttachedSurface

Trennt eine oder mehrere angefügte Flächen.
IDirectDrawSurface7::EnumAttachedSurfaces

Listet alle Oberflächen auf, die an dieser Oberfläche angebracht sind.
IDirectDrawSurface7::EnumOverlayZOrders

Listet die Überlagerungsflächen auf dem angegebenen Ziel auf. Sie können die Überlagerungen in vorderer oder back-to-front-Reihenfolge aufzählen.
IDirectDrawSurface7::Flip

Bewirkt, dass der Surface-Speicher, der der DDSCAPS_BACKBUFFER Oberfläche zugeordnet ist, der Frontpufferoberfläche zugeordnet wird.
IDirectDrawSurface7::FreePrivateData

Gibt die angegebenen privaten Daten frei, die dieser Oberfläche zugeordnet sind.
IDirectDrawSurface7::GetAttachedSurface

Ruft die angefügte Oberfläche ab, die über die angegebenen Funktionen verfügt, und erhöht die Verweisanzahl der abgerufenen Schnittstelle.
IDirectDrawSurface7::GetBltStatus

Ruft den Status eines Bitblockübertragungsvorgangs (Bitblt) ab.
IDirectDrawSurface7::GetCaps

Ruft die Funktionen dieser Oberfläche ab. Diese Funktionen beziehen sich nicht unbedingt auf die Funktionen des Anzeigegeräts.
IDirectDrawSurface7::GetClipper

Ruft das DirectDrawClipper-Objekt ab, das dieser Oberfläche zugeordnet ist, und erhöht die Verweisanzahl des zurückgegebenen Clippers.
IDirectDrawSurface7::GetColorKey

Ruft den Farbschlüsselwert für diese Oberfläche ab.
IDirectDrawSurface7::GetDC

Erstellt ein GDI-kompatibles Handle eines Gerätekontexts für diese Oberfläche.
IDirectDrawSurface7::GetDDInterface

Ruft eine Schnittstelle für das DirectDraw-Objekt ab, das zum Erstellen dieser Oberfläche verwendet wurde.
IDirectDrawSurface7::GetFlipStatus

Ruft den Status ab, ob diese Oberfläche den Kehrvorgang abgeschlossen hat.
IDirectDrawSurface7::GetLOD

Ruft die maximale Detailebene (Maximum Level of Detail, LOD) ab, die derzeit für eine verwaltete Mipmap-Oberfläche festgelegt ist. Diese Methode ist nur bei verwalteten Texturen erfolgreich.
IDirectDrawSurface7::GetOverlayPosition

Ruft die Anzeigekoordinaten dieser Oberfläche ab. Diese Methode wird auf einer sichtbaren, aktiven Überlagerungsoberfläche (d. a. einer Oberfläche mit festgelegtem DDSCAPS_OVERLAY Flag) verwendet.
IDirectDrawSurface7::GetPalette

Ruft das DirectDrawPalette-Objekt ab, das dieser Oberfläche zugeordnet ist, und erhöht die Verweisanzahl der zurückgegebenen Palette.
IDirectDrawSurface7::GetPixelFormat

Ruft die Farbe und das Pixelformat dieser Oberfläche ab.
IDirectDrawSurface7::GetPriority

Ruft die Texturverwaltungspriorität für diese Textur ab. Diese Methode ist nur bei verwalteten Texturen erfolgreich.
IDirectDrawSurface7::GetPrivateData

Kopiert die privaten Daten, die dieser Oberfläche zugeordnet sind, in einen bereitgestellten Puffer.
IDirectDrawSurface7::GetSurfaceDesc

Ruft eine Beschreibung dieser Oberfläche in ihrem aktuellen Zustand ab.
IDirectDrawSurface7::GetUniquenessValue

Ruft den aktuellen Eindeutigkeitswert für diese Oberfläche ab.
IDirectDrawSurface7::Initialize

Initialisiert ein DirectDrawSurface-Objekt.
IDirectDrawSurface7::IsLost

Bestimmt, ob der Surface-Speicher, der einem DirectDrawSurface-Objekt zugeordnet ist, freigegeben wurde.
IDirectDrawSurface7::Lock

Ruft einen Zeiger auf den Oberflächenspeicher ab.
IDirectDrawSurface7::P ageLock

Verhindert, dass eine Systemspeicheroberfläche ausgelagert wird, während ein Bitblockübertragungsvorgang (Bitblt) ausgeführt wird, der DMA-Übertragungen (Direct Memory Access) zum oder vom Systemspeicher verwendet.
IDirectDrawSurface7::P ageUnlock

Entsperrt eine Systemspeicheroberfläche, sodass sie dann ausgelagert werden kann.
IDirectDrawSurface7::ReleaseDC

Gibt das Handle eines Gerätekontexts frei, der zuvor mithilfe der IDirectDrawSurface7::GetDC-Methode abgerufen wurde.
IDirectDrawSurface7::Restore

Stellt eine verloren gegangene Oberfläche wieder her. Dies tritt auf, wenn der dem DirectDrawSurface-Objekt zugeordnete Oberflächenspeicher freigegeben wurde.
IDirectDrawSurface7::SetClipper

Fügt ein Clipper-Objekt an diese Oberfläche an oder löscht ein Objekt aus dieser Oberfläche.
IDirectDrawSurface7::SetColorKey

Legt den Farbschlüsselwert für das DirectDrawSurface-Objekt fest, wenn die Hardware Farbtasten pro Oberfläche unterstützt.
IDirectDrawSurface7::SetLOD

Legt die maximale Detailebene (Maximum Level of Detail, LOD) für eine verwaltete Mipmap-Oberfläche fest. Diese Methode ist nur bei verwalteten Texturen erfolgreich.
IDirectDrawSurface7::SetOverlayPosition

Ändert die Anzeigekoordinaten einer Überlagerungsfläche.
IDirectDrawSurface7::SetPalette

Fügt ein Palettenobjekt an eine Oberfläche an (oder trennt es davon). Die Oberfläche verwendet diese Palette für alle nachfolgenden Vorgänge. Der Palettenwechsel erfolgt sofort, ohne Berücksichtigung des Aktualisierungszeitpunkts.
IDirectDrawSurface7::SetPriority

Weist dieser Textur die Priorität für die Texturverwaltung zu. Diese Methode ist nur bei verwalteten Texturen erfolgreich.
IDirectDrawSurface7::SetPrivateData

Ordnet Daten der Oberfläche zu, die für die Verwendung durch die Anwendung und nicht für DirectDraw vorgesehen ist. Daten werden nach Wert übergeben, und mehrere Datasets können einer einzelnen Oberfläche zugeordnet werden.
IDirectDrawSurface7::SetSurfaceDesc

Legt die Merkmale einer vorhandenen Oberfläche fest.
IDirectDrawSurface7::Unlock

Benachrichtigt DirectDraw, dass die direkten Oberflächenbearbeitungen abgeschlossen sind.
IDirectDrawSurface7::UpdateOverlay

Positioniert oder ändert die visuellen Attribute einer Überlagerungsoberfläche. Für diese Oberflächen muss das DDSCAPS_OVERLAY-Flag festgelegt sein.
IDirectDrawSurface7::UpdateOverlayDisplay

Die IDirectDrawSurface7::UpdateOverlayDisplay-Methode ist derzeit nicht implementiert.
IDirectDrawSurface7::UpdateOverlayZOrder

Legt die z-Reihenfolge eines Overlays fest.

Bemerkungen

Die Methoden der IDirectDrawSurface7-Schnittstelle können in die folgenden Gruppen unterteilt werden:

Gruppieren Methoden
Zuweisung von Arbeitsspeicher Initialisieren, IsLost und Wiederherstellen
Anbringen von Oberflächen AddAttachedSurface, DeleteAttachedSurface, EnumAttachedSurfaces und GetAttachedSurface
BitBltting Blt, BltBatch, BltFast und GetBltStatus
Farbtasten GetColorKey und SetColorKey
Gerätekontexte GetDC und ReleaseDC
Spiegeln Flip und GetFlipStatus
Sperren von Oberflächen Lock, PageLock, PageUnlock und Unlock
Sonstiges GetDDInterface
Überlagerungen AddOverlayDirtyRect, EnumOverlayZOrders, GetOverlayPosition, SetOverlayPosition, UpdateOverlay, UpdateOverlayDisplay und UpdateOverlayZOrder
Private Surface-Daten FreePrivateData, GetPrivateData und SetPrivateData
Surface-Funktionen GetCaps
Surface Clipper GetClipper und SetClipper
Oberflächeneigenschaften ChangeUniquenessValue, GetPixelFormat, GetSurfaceDesc, GetUniquenessValue und SetSurfaceDesc
Oberflächenpaletten GetPalette und SetPalette
Texturen GetLOD, GetPriority, SetLOD und SetPriority
 

Die IDirectDrawSurface7-Schnittstelle erweitert die Features früherer Versionen der Schnittstelle um Methoden, die eine bessere Oberflächenverwaltung und Benutzerfreundlichkeit bieten. Viele Methoden in dieser Schnittstelle akzeptieren leicht andere Parameter als ihre Entsprechungen in früheren Versionen der Schnittstelle. Unabhängig davon, wo eine IDirectDrawSurface3-Schnittstellenmethode eine DDSURFACEDESC-Struktur oder eine IDirectDrawSurface3-Schnittstelle akzeptiert, akzeptieren die Methoden in IDirectDrawSurface7 stattdessen eine DDSURFACEDESC2-Struktur oder eine IDirectDrawSurface7-Schnittstelle .

Verwenden Sie den Datentyp LPDIRECTDRAWSURFACE, LPDIRECTDRAWSURFACE2, LPDIRECTDRAWSURFACE3, LPDIRECTDRAWSURFACE4 oder LPDIRECTDRAWSURFACE7, um eine Variable zu deklarieren, die auf verschiedene DirectDrawSurface-Objektschnittstellen verweist. Die Ddraw.h-Headerdatei deklariert diese Datentypen mit dem folgenden Code:


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;

Anforderungen

   
Zielplattform Windows
Kopfzeile ddraw.h