Jump to content

BITBLTINFO: Difference between revisions

From EDM2
No edit summary
No edit summary
Line 25: Line 25:
==C Declaration Method==
==C Declaration Method==
  typedef BITBLTINFO *PBITBLTINFO;
  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 [[#POINTL]]s.
:'''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.


[[Category:Data type]]
[[Category:Data type]]

Revision as of 21:02, 5 May 2025

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.