DirectX SDK |
Applications use the methods of the IDirectDrawSurface7 interface to create DirectDrawSurface objects and work with system-level variables. This section is a reference to the methods of this interface. For a conceptual overview, see Surfaces.
The methods of the IDirectDrawSurface7 interface can be organized into the following groups:
Allocating memory | Initialize |
IsLost | |
Restore | |
Attaching surfaces | AddAttachedSurface |
DeleteAttachedSurface | |
EnumAttachedSurfaces | |
GetAttachedSurface | |
Blitting | Blt |
BltBatch | |
BltFast | |
GetBltStatus | |
Color keying | GetColorKey |
SetColorKey | |
Device contexts | GetDC |
ReleaseDC | |
Flipping | Flip |
GetFlipStatus | |
Locking surfaces | Lock |
PageLock | |
PageUnlock | |
Unlock | |
Miscellaneous | GetDDInterface |
Overlays | AddOverlayDirtyRect |
EnumOverlayZOrders | |
GetOverlayPosition | |
SetOverlayPosition | |
UpdateOverlay | |
UpdateOverlayDisplay | |
UpdateOverlayZOrder | |
Private surface data | FreePrivateData |
GetPrivateData | |
SetPrivateData | |
Surface capabilities | GetCaps |
Surface clipper | GetClipper |
SetClipper | |
Surface characteristics | ChangeUniquenessValue |
GetPixelFormat | |
GetSurfaceDesc | |
GetUniquenessValue | |
SetSurfaceDesc | |
Surface palettes | GetPalette |
SetPalette | |
Textures | GetLOD |
GetPriority | |
SetLOD | |
SetPriority |
The IDirectDrawSurface7 interface, like all COM interfaces, inherits the IUnknown interface methods. The IUnknown interface supports the following three methods:
IUnknown | AddRef |
QueryInterface | |
Release |
The IDirectDrawSurface7 interface extends the features of previous versions of the interface by offering methods that offer better surface management and ease of use. Many methods in this interface accept slightly different parameters than their counterparts in former versions of the interface. Wherever an IDirectDrawSurface3 interface method might accept a DDSURFACEDESC structure or an IDirectDrawSurface3 interface, the methods in IDirectDrawSurface7 accept a DDSURFACEDESC2 structure or an IDirectDrawSurface7 interface, instead.
You can use the LPDIRECTDRAWSURFACE, LPDIRECTDRAWSURFACE2, LPDIRECTDRAWSURFACE3, LPDIRECTDRAWSURFACE4, or LPDIRECTDRAWSURFACE7 data types to declare variables that point to various DirectDrawSurface object interfaces. The Ddraw.h header file declares these data types with the following 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;
Windows NT/2000: Requires Windows 2000.
Windows 95/98: Requires Windows 98.
Header: Declared in ddraw.h.