Share via


DDSCAPS

Send Feedback

This structure defines the capabilities of a DirectDrawSurface object. This structure is part of the DDCAPS and DDSURFACEDESC structures.

typedef struct _DDSCAPS{ 
  DWORD dwCaps; 
} DDSCAPS, FAR* LPDDSCAPS; 

Members

  • dwCaps
    Capabilities of the surface. The following table shows the possible flags.
    Flag Description
    DDSCAPS_ALPHA Indicates that this surface contains alpha-only information.
    DDSCAPS_BACKBUFFER Indicates that this surface is the back buffer of a surface flipping structure.

    Typically, this capability is set by the CreateSurface method when the DDSCAPS_FLIP flag is used.

    Only the surface that immediately precedes the DDSCAPS_FRONTBUFFER surface has this capability set.

    The other surfaces are identified as back buffers by the presence of the DDSCAPS_FLIP flag, their attachment order, and the absence of the DDSCAPS_FRONTBUFFER and DDSCAPS_BACKBUFFER capabilities.

    If this capability is sent to the CreateSurface method, a stand-alone back buffer is being created.

    After this method is called, this surface could be attached to a front buffer, another back buffer, or both to form a flipping surface structure.

    DDSCAPS_DYNAMIC Unsupported.
    DDSCAPS_FLIP Indicates that this surface is a part of a surface flipping structure.

    When this capability is passed to the CreateSurface method, a front buffer and one or more back buffers are created.

    DirectDraw sets the DDSCAPS_FRONTBUFFER bit on the front-buffer surface and the DDSCAPS_BACKBUFFER bit on the surface adjacent to the front-buffer surface.

    The dwBackBufferCount member of the DDSURFACEDESC structure must be set to at least 1 for the method call to succeed.

    The DDSCAPS_COMPLEX capability must always be set when creating multiple surfaces by using the CreateSurface method.

    DDSCAPS_FRONTBUFFER Indicates that this surface is the front buffer of a surface flipping structure.

    This flag is typically set by the CreateSurface method when the DDSCAPS_FLIP capability is set.

    If this capability is sent to the CreateSurface method, a stand-alone front buffer is created.

    This surface will not have the DDSCAPS_FLIP capability.

    DDSCAPS_NOTUSERLOCKABLE Unsupported.
    DDSCAPS_OVERLAY Indicates that this surface is an overlay.

    It may or may not be directly visible depending on whether it is currently being overlaid onto the primary surface.

    DDSCAPS_VISIBLE can be used to determine if it is being overlaid at the moment.

    DDSCAPS_PALETTE Not supported.
    DDSCAPS_PRIMARYSURFACE Indicates the surface is the primary surface.

    It represents what is seen by the user at the moment.

    DDSCAPS_READONLY Indicates that only read access is permitted to the surface. When locking the surface with IDirectDrawSurface::Lock, the DDLOCK_READONLY flag must be specified.
    DDSCAPS_SYSTEMMEMORY Indicates that this surface memory was allocated in system memory.
    DDSCAPS_VIDEOMEMORY Indicates that this surface exists in display memory.
    DDSCAPS_WRITEONLY Indicates that only write access is permitted to the surface.

    Read access from the surface may generate a general protection (GP) fault, but the read results from this surface will not be meaningful.

Requirements

Pocket PC: Windows Mobile 5.0 and later
Smartphone: Windows Mobile 5.0 and later
OS Versions: Windows CE 5.01 and later
Header: Ddraw.h.

Send Feedback on this topic to the authors

Feedback FAQs

© 2006 Microsoft Corporation. All rights reserved.