DD_SURFACECALLBACKS structure (ddrawint.h)

The DD_SURFACECALLBACKS structure contains entry pointers to the Microsoft DirectDraw surface callback functions that a device driver supports.

Syntax

typedef struct DD_SURFACECALLBACKS {
  DWORD                         dwSize;
  DWORD                         dwFlags;
  PDD_SURFCB_DESTROYSURFACE     DestroySurface;
  PDD_SURFCB_FLIP               Flip;
  PDD_SURFCB_SETCLIPLIST        SetClipList;
  PDD_SURFCB_LOCK               Lock;
  PDD_SURFCB_UNLOCK             Unlock;
  PDD_SURFCB_BLT                Blt;
  PDD_SURFCB_SETCOLORKEY        SetColorKey;
  PDD_SURFCB_ADDATTACHEDSURFACE AddAttachedSurface;
  PDD_SURFCB_GETBLTSTATUS       GetBltStatus;
  PDD_SURFCB_GETFLIPSTATUS      GetFlipStatus;
  PDD_SURFCB_UPDATEOVERLAY      UpdateOverlay;
  PDD_SURFCB_SETOVERLAYPOSITION SetOverlayPosition;
  LPVOID                        reserved4;
  PDD_SURFCB_SETPALETTE         SetPalette;
} DD_SURFACECALLBACKS;

Members

dwSize

Specifies the size in bytes of the DD_SURFACECALLBACKS structure. This member is unused by Microsoft Windows 2000 and later versions.

dwFlags

Indicates which DirectDrawSurface callback functions the driver has implemented. For every bit set in dwFlags, the driver must initialize the corresponding function pointer member of this structure. This member can be one or more of the following flags:

DDHAL_SURFCB32_DESTROYSURFACE
DDHAL_SURFCB32_FLIP
DDHAL_SURFCB32_SETCLIPLIST
DDHAL_SURFCB32_LOCK
DDHAL_SURFCB32_UNLOCK
DDHAL_SURFCB32_BLT
DDHAL_SURFCB32_SETCOLORKEY
DDHAL_SURFCB32_ADDATTACHEDSURFACE
DDHAL_SURFCB32_GETBLTSTATUS
DDHAL_SURFCB32_GETFLIPSTATUS
DDHAL_SURFCB32_UPDATEOVERLAY
DDHAL_SURFCB32_SETOVERLAYPOSITION
DDHAL_SURFCB32_SETPALETTE

DestroySurface

Points to the driver-supplied DdDestroySurface surface callback.

Flip

Points to the driver-supplied DdFlip surface callback.

SetClipList

Points to the driver-supplied DdSetClipList surface callback.

Lock

Points to the driver-supplied DdLock surface callback.

Unlock

Points to the driver-supplied DdUnlock surface callback.

Blt

Points to the driver-supplied DdBlt surface callback.

SetColorKey

Points to the driver-supplied DdSetColorKey surface callback.

AddAttachedSurface

Points to the driver-supplied DdAddAttachedSurface surface callback.

GetBltStatus

Points to the driver-supplied DdGetBltStatus surface callback.

GetFlipStatus

Points to the driver-supplied DdGetFlipStatus surface callback.

UpdateOverlay

Points to the driver-supplied DdUpdateOverlay surface callback.

SetOverlayPosition

Points to the driver-supplied DdSetOverlayPosition surface callback.

reserved4

Reserved for system use and should be ignored by the driver.

SetPalette

Points to the driver-supplied DdSetPalette surface callback.

Remarks

Entries that the display driver does not use should be set to NULL. The driver initializes this structure in DrvEnableDirectDraw.

Requirements

Requirement Value
Header ddrawint.h (include Winddi.h)

See also

DD_COLORCONTROLCALLBACKS

DD_KERNELCALLBACKS

DD_MISCELLANEOUSCALLBACKS

DD_MOTIONCOMPCALLBACKS

DD_NTCALLBACKS

DD_PALETTECALLBACKS

DD_VIDEOPORTCALLBACKS

DrvEnableDirectDraw