Jump to content

BITBLTINFO

From EDM2
Revision as of 21:03, 5 May 2025 by Martini (talk | contribs) (Fields)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

BitBlt information structure. BitBlt information structure, used for the GHI_CMD_BITBLT and VMI_CMD_BITBLT functions.

Type

typedef struct _BITBLTINFO {
 ULONG         ulLength;       /* Length of the BITBLTINFO data structure, in bytes. */
 ULONG         ulBltFlags;     /* Flags for rendering of rasterized data. */
 ULONG         cBlits;         /* Count of Blts to be performed. */
 ULONG         ulROP;          /* Raster operation. */
 ULONG         ulMonoBackROP;  /* Background mix if B_APPLY_BACK_ROP is set. */
 ULONG         ulSrcFGColor;   /* Monochrome source Foreground colour. */
 ULONG         ulSrcBGColor;   /* Monochrome source Background colour and transparent colour. */
 ULONG         ulPatFGColor;   /* Monochrome pattern Foreground colour. */
 ULONG         ulPatBGColor;   /* Monochrome pattern Background colour. */
 PBYTE         abColors;       /* Pointer to colour translation table. */
 PBMAPINFO     pSrcBmapInfo;   /* Pointer to source bit map (BMAPINFO) */
 PBMAPINFO     pDstBmapInfo;   /* Pointer to destination bit map (BMAPINFO). */
 PBMAPINFO     pPatBmapInfo;   /* Pointer to pattern bit map (BMAPINFO). */
 PPOINTL       aptlSrcOrg;     /* Pointer to array of source origin POINTLs. */
 PPOINTL       aptlPatOrg;     /* Pointer to array of pattern origin POINTLs. */
 PBLTRECT      abrDst;         /* Pointer to array of Blt rects. */
 PRECTL        prclSrcBounds;  /* Pointer to source bounding rect of source Blts. */
 PRECTL        prclDstBounds;  /* Pointer to destination bounding rect of destination Blts. */
} BITBLTINFO;

C Declaration Method

typedef BITBLTINFO *PBITBLTINFO;

Fields

ulLength(ULONG)
Length of the BITBLTINFO data structure, in bytes.
ulBltFlags(ULONG)
Flags for rendering of rasterized data.
Miscellaneous flags used by the graphics engine for rendering of rasterized data:
BF_DEFAULT_STATE
Blt direction is left to right and top to bottom.
BF_DIR_X_NEGATIVE
Blt direction is towards X origin.
BF_DIR_Y_NEGATIVE
Blt direction is towards Y origin.
BF_ROP_INCL_SRC
ROP includes a source bit map.
BF_ROP_INCL_PAT
ROP includes a pattern bit map.
BF_SRC_TRANSPARENT
Source transparent involved. SRC will not change when SRC=BG_COLOR.
BF_DST_TRANSPARENT
Destination transparent involved. DST will not change when DST=BG_COLOR.
BF_PAT_TRANSPARENT
Pattern transparent involved. Pattern not involved when PAT=BG_COLOR.
BF_PAT_SOLID
Pattern is solid; all Foreground color.
BF_PAT_HOLLOW
Pattern is hollow (empty); no Foreground color.
BF_APPLY_BACK_ROP
Treat ROP as Foreground mix and MonoBackROP as Background mix.
BF_SRC_MONOINVERT
Zero (0) bits are Foreground on monochrome SRC bit map.
BF_PAT_MONOINVERT
Zero (0) bits are Foreground on monochrome PAT bit map.
BF_SR_BITS_EXTERNAL
Source bit map bits are in a nondevice-specific format.
BF_LAST_BLT
Defines last blit in a banded BitBlit.
BF_SRC_Y_FLIP
Source Y coordinates are inverted relative to device origin.
cBlits(ULONG) Count of Blts to be performed.
ulROP(ULONG) Raster operation.
ulMonoBackROP(ULONG) Background mix if B_APPLY_BACK_ROP is set.
ulSrcFGColor(ULONG) Monochrome source Foreground color.
ulSrcBGColor(ULONG) Monochrome source Background color and transparent color.
ulPatFGColor(ULONG) Monochrome pattern Foreground color.
ulPatBGColor(ULONG) Monochrome pattern Background color.
abColors(PBYTE) Pointer to color translation table.
pSrcBmapInfo(PBMAPINFO) Pointer to source bit map (#BMAPINFO)
pDstBmapInfo(#PBMAPINFO) Pointer to destination bit map (BMAPINFO).
pPatBmapInfo(PBMAPINFO) Pointer to pattern bit map (BMAPINFO).
aptlSrcOrg(PPOINTL) Pointer to array of source origin #POINTLs.
aptlPatOrg(PPOINTL) Pointer to array of pattern origin POINTLs.
abrDst(#PBLTRECT) Pointer to array of Blt rects.
prclSrcBounds(PRECTL) Pointer to source bounding rect of source Blts.
prclDstBounds(PRECTL) Pointer to destination bounding rect of destination Blts.