Microsoft Windows CE 3.0  

DDHAL_BLTDATA

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 DDHAL_BLTDATAstructure contains the information relevant to doing blits. This structure passes the information to the DirectDraw HAL Bltcallback function.

typedef struct _DDHAL_BLTDATA { LPDDRAWI_DIRECTDRAW_GBL
lpDD
;
LPDDRAWI_DDRAWSURFACE_LCL
lpDDDestSurface
;
RECTL
rDest
;
LPDDRAWI_DDRAWSURFACE_LCL
lpDDSrcSurface
;
RECTL
rSrc
;
DWORD
dwFlags
;
DWORD
dwROPFlags
;
DDBLTFX
bltFX
;
HRESULT
ddRVal
;
LPDDHALSURFCB_BLT
Blt
;
BOOL
IsClipped
;
RECTL
rOrigDest
;
RECTL
rOrigSrc
;
DWORD
dwRectCnt
;
LPRECT
prDestRects
;
} DDHAL_BLTDATA;

Members

lpDD
Pointer to the DDRAWI_DIRECTDRAW_GBLstructure that represents the DirectDraw object.
lpDDDestSurface
Pointer to the DDRAWI_DDRAWSURFACE_LCLstructure that represents the destination surface (the one that is being blitted to).
rDest
Pointer to a RECTstructure that defines the upper left and lower right points of the rectangle on the destination surface to which data is beingblitted. The RECTstructure specifies the size and position the blit operation should use as a target on the destination surface memory.
lpDDSrcSurface
Pointer to the DDRAWI_DDRAWSURFACE_LCLstructure that represents the DirectDrawSurface that is the data source for the operation (that is, blit).
rSrc
Pointer to a RECTstructure that defines the upper left and lower right points of the rectangle on the source surface from which data is being blitted. The RECTstructure specifies the size and position the blit operation should use as data from the source surface memory.
dwFlags
The following flags specify the type of blit to be performed and which fields have valid data to use for the blit operation.
Flag Usage
DDBLT_ASYNC Do this blit asynchronously through the FIFO in the order received. If no room exists in the hardware FIFO, fail the call. Drivers should ignore this flag and always schedule blits asynchronously whenever possible.
DDBLT_COLORFILL Uses the dwFillColormember in the DDBLTFXstructure as the RGB color with which to fill the destination rectangle on the destination surface.
DDBLT_DDFX Uses the dwDDFXmember in the DDBLTFXstructure to specify the effects to use for the blit.
DDBLT_DDROPS Uses the dwDDROPSmember in the DDBLTFXstructure to specify the raster operations that are not part of the Win32 API.
DDBLT_KEYDESTOVERRIDE Use the dckDestColorkeymember in the DDBLTFXstructure as the color key for the destination surface. If an override is not being set, then dckDestColorkeydoes not contain the color key. The driver should test the surface itself.
DDBLT_KEYSRCOVERRIDE Use the dckSrcColorkeymember in the DDBLTFXstructure as the color key for the source surface. If an override is not being set, then dckDestColorkeydoes not contain the color key. The driver should test the surface itself.
DDBLT_ROP Use the dwROPmember in the DDBLTFXstructure for the raster operation for this blit. These ROPs are the same as the ones defined in the Win32 API.
DDBLT_ROTATIONANGLE Use the dwRotationAnglemember in the DDBLTFXstructure as the angle (specified in 1/100th of a degree) to rotate the surface.
DDBLT_WAIT Do not return immediately with the DDERR_WASSTILLDRAWING message if the blitter is busy wait until the blit can be set up or another error occurs.
dwROPFlags
Flags for the different raster operations. In addition to the raster operations defined in the Win32 SDK, this member includes three flags that are communicated only between the driver and DirectDraw, and are not set by or passed on to the application. These flags are:
Flag Usage
ROP_HAS_PATTERN Indicates the raster operation has a pattern.
ROP_HAS_SOURCE Indicates the raster operation has a source.
ROP_HAS_SOURCEPATTERN Indicates the raster operation has a source and a pattern.
bltFX
DDBLTFXstructure that contains the optional fields required by complex blit operations. The valid fields are determined by the dwFlags
ddRVal
Passes the DirectDraw return values, such as DD_OK or DDERR_WASSTILLDRAWING.
Blt
This member is used by DirectDraw and should not be filled in by the driver.
IsClipped
Indicates whether this is a clipped blit.
rOrigDest
Pointer to a RECTstructure that defines the unclipped destination rectangle (only valid if IsClipped).
rOrigSrc
Pointer to a RECTstructure that defines the unclipped source rectangle (only valid if IsClipped).
dwRectCnt
Count of destination rectangles (only valid if IsClipped).
prDestRects
Array of destination rectangles (only valid if IsClipped).

 Last updated on Tuesday, July 13, 2004

© 2004 Microsoft Corporation. All rights reserved.