DD_NTPRIVATEDRIVERCAPS structure (ddrawint.h)

The DD_NTPRIVATEDRIVERCAPS structure enables the driver to change the behavior of Microsoft DirectDraw when DirectDraw is creating surfaces.

Syntax

typedef struct DD_NTPRIVATEDRIVERCAPS {
  DWORD dwSize;
  DWORD dwPrivateCaps;
} DD_NTPRIVATEDRIVERCAPS;

Members

dwSize

Specifies the size in bytes of this DD_NTPRIVATEDRIVERCAPS structure.

dwPrivateCaps

Indicates how DirectDraw should create the surface.

DDHAL_PRIVATECAP_AUTOMICSURFACECREATION

When this flag is set, it indicates that the driver requests DdCreateSurface to be called only once when the application creates a complex flipping chain using a single CreateSurface call. In this case, the lplpSList member of the DD_CREATESURFACEDATA structure points to a list of surfaces to create (rather than a single surface) and dwSCnt contains the number of surfaces in the list.

DDHAL_PRIVATECAP_NOTIFYPRIMARYCREATION

When this flag is set, the driver's DdCreateSurface function is called when creating a primary surface. If this flag is not set, the driver's DdCreateSurface function is not called.

Remarks

The behavior of DirectDraw emulates the surface creation techniques employed by DirectDraw when creating surfaces for Microsoft Windows 98/Me.

When the DDHAL_PRIVATECAP_AUTOMICSURFACECREATION flag is not set, DirectDraw performs surface creation using the original method, that is, it calls the driver's DdCreateSurface function once for each surface being created.

When the DDHAL_PRIVATECAP_NOTIFYPRIMARYCREATION flag is not set, DirectDraw performs primary surface creation using the original method, that is, it does not call the driver when creating a primary surface.

Requirements

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

See also

DD_CREATESURFACEDATA

DdCreateSurface