| Home
| Previous
| Next
| Up

BitBltPlaneMaskedSys

Copy a block of system memory to a location in video memory with an associated bit plane mask

Declaration

void NAPI GA_2DRenderFuncs::BitBltPlaneMaskedSys(
void *srcAddr,
N_int32 srcPitch,
N_int32 srcLeft,
N_int32 srcTop,
N_int32 width,
N_int32 height,
N_int32 dstLeft,
N_int32 dstTop,
N_uint32 planeMask,
N_int32 flipY)

Prototype In

snap/graphics.h

Parameters

srcAddr | Address of source bitmap in system memory
srcPitch | Pitch of source bitmap in bytes
srcLeft | Left coordinate within source bitmap to copy
srcTop | Top coordinate within source bitmap to copy
width | Width of the rectangle in pixels
height | Height of the rectangle in scanlines
dstLeft | Left coordinate of destination
dstTop | Top coordinate of destination
planeMask | Plane mask to use during the copy
flipY | True if the image should be flipped vertically

Description

This routine will copy a bitmap from system memory with a starting address of srcAddr to the destination rectangle (dstLeft, dstTop, dstLeft+width-1, dstTop+height-1) with the specified plane mask. The plane mask is used to determine which bits in the destination pixels will be affected by the copy. Each bit in the plane mask is used to mask out a bit in the destination pixel values, and where a bit is a 1 the destination bit comes from the source pixel while where a bit is 0 the destination bit is left unchanged.

Note that the srcLeft and srcTop coordinates define an offset within the source bitmap to be copied, so it will copy only a portion of the memory bitmap.

Note: This routine is provided for completeness, and for the simple case of performing a system memory to video memory copy with a mix of GA_REPLACE_MIX, it is usually always as fast or faster to copy the bitmap data directly using a CPU memory copy directly over the system bus to the linear framebuffer. However if either hardware clipping is in use, or the mix mode is something other than GA_REPLACE_MIX, this function can be more efficient than doing a software only bitmap copy.

See Also

BitBlt, BitBltPlaneMasked, BitBltPlaneMaskedLin, BitBltPlaneMaskedBM

Copyright © 2002 SciTech Software, Inc. Visit our web site at http://www.scitechsoft.com