DD_CREATESURFACEDATA structure (ddrawint.h)

The DD_CREATESURFACEDATA structure contains information necessary to create a surface--in the case of CreateD3DBuffer, a command or vertex buffer.

Syntax

typedef struct _DD_CREATESURFACEDATA {
  PDD_DIRECTDRAW_GLOBAL lpDD;
  PDD_SURFACEDESC       lpDDSurfaceDesc;
  PDD_SURFACE_LOCAL     *lplpSList;
  DWORD                 dwSCnt;
  HRESULT               ddRVal;
  VOID                  *CreateSurface;
} *PDD_CREATESURFACEDATA, DD_CREATESURFACEDATA;

Members

lpDD

Points to the DD_DIRECTDRAW_GLOBAL structure that describes the driver's device.

lpDDSurfaceDesc

Points to the DDSURFACEDESC structure describing the surface or buffer that the driver should create.

lplpSList

Points to a list of DD_SURFACE_LOCAL structures describing the surface objects created by the driver. On Microsoft Windows 2000 and later, there is usually only one entry in this array. However, if the driver supports the Windows 98/Me-style surface creation techniques using DdGetDriverInfo with GUID_NTPrivateDriverCaps, and the driver sets the DDHAL_PRIVATECAP_ATOMICSURFACECREATION flag, the member contains a list of surfaces (usually more than one).

dwSCnt

Specifies the number of surfaces in the list to which lplpSList points. This value is usually 1 on Windows 2000 and later. However, if the driver support the Windows 98/Me-style surface creation techniques using DdGetDriverInfo with GUID_NTPrivateDriverCaps, the member contains the actual number of surfaces in the list (usually more than one).

ddRVal

Specifies the location in which the driver writes the return value of either the DdCreateSurface or CreateD3DBuffer callback. A return code of DD_OK indicates success. For more information, see Return Values for DirectDraw.

CreateSurface

Used by the Microsoft DirectDraw API and should not be filled in by the driver.

Requirements

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

See also

CreateD3DBuffer

DdCreateSurface

DdGetDriverInfo