Microsoft Windows CE 3.0  

DDRAWI_DDRAWSURFACE_GBL

Important:
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist.

The DDRAWI_DDRAWSURFACE_GBLstructure contains the global DirectDrawSurface data that can be shared between object instances.

typedef struct _DDRAWI_DDRAWSURFACE_GBL { DWORD
dwRefCnt
;
DWORD
dwGlobalFlags
;
union
{
LPACCESSRECTLIST
lpRectList
;
DWORD
dwBlockSizeY
;
{;
union
{
LPVMEMHEAP
lpVidMemHeap
;
DWORD
dwBlockSizeX
;
};
union
{
LPDDRAWI_DIRECTDRAW_GBL
lpDD
;
LPVOID
lpDDHandle
;
};
FLATPTR
fpVidMem
;
union
{
LONG
lPitch
;
DWORD
dwLinearSize
;
{;
WORD
wHeight
;
WORD
wWidth
;
DWORD
dwUsageCount
;
ULONG_PTR
dwReserved1
;
DDPIXELFORMAT
ddpfSurface
;
} DDRAWI_DDRAWSURFACE_GBL;

Members

dwRefCnt
This member is used by DirectDraw and should not be filled in by the driver.
dwGlobalFlags
Contains the global surface flags.
Flag Usage
DDRAWISURFGBL_HARDWAREOPDEST This flag is used by DirectDraw and should not be set by the driver.
DDRAWISURFGBL_HARDWAREOPSOURCE This flag is used by DirectDraw and should not be set by the driver.
DDRAWISURFGBL_HARDWAREOPSTARTED This flag is used by DirectDraw and should not be set by the driver.
DDRAWISURFGBL_IMPLICITHANDLE This flag is used by DirectDraw and should not be set by the driver.
DDRAWISURFGBL_ISCLIENTMEM This flag is used by DirectDraw and should not be set by the driver.
DDRAWISURFGBL_ISGDISURFACE Indicates this surface represents what GDI thinks is the front buffer.
DDRAWISURFGBL_LATEALLOCATELINEAR This flag is used by DirectDraw and should not be set by the driver.
DDRAWISURFGBL_LOCKBROKEN This flag is used by DirectDraw and should not be set by the driver.
DDRAWISURFGBL_LOCKNOTHOLDINGWIN16LOCK This flag is used by DirectDraw and should not be set by the driver.
DDRAWISURFGBL_LOCKVRAMSTYLE This flag is used by DirectDraw and should not be set by the driver.
DDRAWISURFGBL_MEMFREE Indicates display memory has been freed.
DDRAWISURFGBL_SOFTWAREAUTOFLIP Indicates this surface is autoflipped using software.
DDRAWISURFGBL_SYSMEMEXECUTEBUFFER Indicates the surface was allocated in system memory.
DDRAWISURFGBL_SYSMEMREQUESTED Indicates that the surface is in system memory at the request of the user.
DDRAWISURFGBL_VPORTDATA This flag is used by DirectDraw and should not be set by the driver.
DDRAWISURFGBL_VPORTINTERLEAVED This flag is used by DirectDraw and should not be set by the driver.
lpRectList
This member is used by DirectDraw and should not be filled in by the driver.
dwBlockSizeY
Contains the block size of the Y axis of display memory that the display driver requested.
lpVidMemHeap
Pointer to a VMEMHEAPstructure from which the heap display memory was allocated.
dwBlockSizeX
Contains the block size of the X axis of display memory that the display driver requested.
lpDD
Pointer to a DDRAWI_DIRECTDRAW_GBLstructure that contains information about the DirectDraw object.
lpDDHandle
Handle to the DirectDraw object. This member is used by the display driver when calling functions in Ddraw16.dll.
fpVidMem
Pointer to display memory.
lPitch
Indicates the distance to the start of the next line on the surface.
dwLinearSize
Indicates the linear size of a non-rectangular surface.
wHeight
Indicates the height of the surface.
wWidth
Indicates the width of the surface.
dwUsageCount
This member is used by DirectDraw and should not be filled in by the driver.
dwReserved1
If using DDGPE, your surface pointer must be stored here to maintain GPE/DirectDraw compatibility. This is a change instituted in DXPAK release 1.1. Previously, this information was stored in the DDRAWI_DDRAWSURFACE_LCLstructure.
ddpfSurface
Pointer to a DDPIXELFORMATstructure that contains the pixel format information for this surface. This member is only allocated if the pixel format differs from that of the primary display, that is, it is not allocated unless the DDRAWISURF_HASPIXELFORMATflag in the DDRAWI_DDRAWSURFACE_LCLstructure is set.

Remarks

Driver writers should use the GET_LPDDRAWSURFACE_GBL_MOREmacro to traverse from a DDRAWI_DDRAWSURFACE_GBLaddress to the DDRAWI_DDRAWSURFACE_GBL_MOREstructure.



 Last updated on Tuesday, July 13, 2004

© 2004 Microsoft Corporation. All rights reserved.