Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygeninteng.h
Go to the documentation of this file.
00001 #pragma once 00002 00003 typedef ULONG HCLIP; 00004 00005 #define ENUM_RECT_LIMIT 50 00006 00007 typedef struct _RECT_ENUM 00008 { 00009 ULONG c; 00010 RECTL arcl[ENUM_RECT_LIMIT]; 00011 } RECT_ENUM; 00012 00013 typedef struct tagSPAN 00014 { 00015 LONG Y; 00016 LONG X; 00017 ULONG Width; 00018 } SPAN, *PSPAN; 00019 00020 #define R3_OPINDEX_NOOP 0xAA 00021 00022 #define R3_OPINDEX_BLACKNESS 0x00 00023 #define R3_OPINDEX_NOTSRCERASE 0x11 00024 #define R3_OPINDEX_NOTSRCCOPY 0x33 00025 #define R3_OPINDEX_SRCERASE 0x44 00026 #define R3_OPINDEX_DSTINVERT 0x55 00027 #define R3_OPINDEX_PATINVERT 0x5A 00028 #define R3_OPINDEX_SRCINVERT 0x66 00029 #define R3_OPINDEX_SRCAND 0x88 00030 #define R3_OPINDEX_MERGEPAINT 0xBB 00031 #define R3_OPINDEX_MERGECOPY 0xC0 00032 #define R3_OPINDEX_SRCCOPY 0xCC 00033 #define R3_OPINDEX_SRCPAINT 0xEE 00034 #define R3_OPINDEX_PATCOPY 0xF0 00035 #define R3_OPINDEX_PATPAINT 0xFB 00036 #define R3_OPINDEX_WHITENESS 0xFF 00037 00038 #define ROP2_TO_MIX(Rop2) (((Rop2) << 8) | (Rop2)) 00039 00040 #define ROP4_FROM_INDEX(index) ((index) | ((index) << 8)) 00041 00042 #define ROP4_USES_SOURCE(Rop4) (((((Rop4) & 0xCC00) >> 2) != ((Rop4) & 0x3300)) || ((((Rop4) & 0xCC) >> 2) != ((Rop4) & 0x33))) 00043 #define ROP4_USES_MASK(Rop4) (((Rop4) & 0xFF00) != (((Rop4) & 0xff) << 8)) 00044 #define ROP4_USES_DEST(Rop4) (((((Rop4) & 0xAA) >> 1) != ((Rop4) & 0x55)) || ((((Rop4) & 0xAA00) >> 1) != ((Rop4) & 0x5500))) 00045 #define ROP4_USES_PATTERN(Rop4) (((((Rop4) & 0xF0) >> 4) != ((Rop4) & 0x0F)) || ((((Rop4) & 0xF000) >> 4) != ((Rop4) & 0x0F00))) 00046 00047 #define IS_VALID_ROP4(rop) (((rop) & 0xFFFF0000) == 0) 00048 00049 #define ROP4_FGND(Rop4) ((Rop4) & 0x00FF) 00050 #define ROP4_BKGND(Rop4) (((Rop4) & 0xFF00) >> 8) 00051 00052 #define ROP4_NOOP (R3_OPINDEX_NOOP | (R3_OPINDEX_NOOP << 8)) 00053 #define ROP4_MASK (R3_OPINDEX_SRCCOPY | (R3_OPINDEX_NOOP << 8)) 00054 00055 /* Definitions of IntEngXxx functions */ 00056 00057 BOOL APIENTRY 00058 IntEngLineTo(SURFOBJ *Surface, 00059 CLIPOBJ *Clip, 00060 BRUSHOBJ *Brush, 00061 LONG x1, 00062 LONG y1, 00063 LONG x2, 00064 LONG y2, 00065 RECTL *RectBounds, 00066 MIX mix); 00067 00068 BOOL APIENTRY 00069 IntEngBitBlt(SURFOBJ *DestObj, 00070 SURFOBJ *SourceObj, 00071 SURFOBJ *Mask, 00072 CLIPOBJ *ClipRegion, 00073 XLATEOBJ *ColorTranslation, 00074 RECTL *DestRect, 00075 POINTL *SourcePoint, 00076 POINTL *MaskOrigin, 00077 BRUSHOBJ *Brush, 00078 POINTL *BrushOrigin, 00079 ROP4 Rop4); 00080 00081 BOOL APIENTRY 00082 IntEngStretchBlt(SURFOBJ *DestObj, 00083 SURFOBJ *SourceObj, 00084 SURFOBJ *Mask, 00085 CLIPOBJ *ClipRegion, 00086 XLATEOBJ *ColorTranslation, 00087 RECTL *DestRect, 00088 RECTL *SourceRect, 00089 POINTL *pMaskOrigin, 00090 BRUSHOBJ *Brush, 00091 POINTL *BrushOrigin, 00092 ULONG Mode); 00093 00094 BOOL APIENTRY 00095 IntEngGradientFill(SURFOBJ *psoDest, 00096 CLIPOBJ *pco, 00097 XLATEOBJ *pxlo, 00098 TRIVERTEX *pVertex, 00099 ULONG nVertex, 00100 PVOID pMesh, 00101 ULONG nMesh, 00102 RECTL *prclExtents, 00103 POINTL *pptlDitherOrg, 00104 ULONG ulMode); 00105 00106 BOOL APIENTRY 00107 IntEngPolyline(SURFOBJ *DestSurf, 00108 CLIPOBJ *Clip, 00109 BRUSHOBJ *Brush, 00110 CONST LPPOINT pt, 00111 LONG dCount, 00112 MIX mix); 00113 00114 CLIPOBJ* FASTCALL 00115 IntEngCreateClipRegion(ULONG count, 00116 PRECTL pRect, 00117 PRECTL rcBounds); 00118 00119 VOID FASTCALL 00120 IntEngDeleteClipRegion(CLIPOBJ *ClipObj); 00121 00122 00123 BOOL FASTCALL 00124 IntEngTransparentBlt(SURFOBJ *Dest, 00125 SURFOBJ *Source, 00126 CLIPOBJ *Clip, 00127 XLATEOBJ *ColorTranslation, 00128 PRECTL DestRect, 00129 PRECTL SourceRect, 00130 ULONG iTransColor, 00131 ULONG Reserved); 00132 00133 BOOL APIENTRY 00134 IntEngPaint(IN SURFOBJ *Surface, 00135 IN CLIPOBJ *ClipRegion, 00136 IN BRUSHOBJ *Brush, 00137 IN POINTL *BrushOrigin, 00138 IN MIX Mix); 00139 00140 ULONG APIENTRY 00141 IntEngSetPointerShape( 00142 IN SURFOBJ *pso, 00143 IN SURFOBJ *psoMask, 00144 IN SURFOBJ *psoColor, 00145 IN XLATEOBJ *pxlo, 00146 IN LONG xHot, 00147 IN LONG yHot, 00148 IN LONG x, 00149 IN LONG y, 00150 IN RECTL *prcl, 00151 IN FLONG fl); 00152 00153 BOOL APIENTRY 00154 IntEngAlphaBlend(IN SURFOBJ *Dest, 00155 IN SURFOBJ *Source, 00156 IN CLIPOBJ *ClipRegion, 00157 IN XLATEOBJ *ColorTranslation, 00158 IN PRECTL DestRect, 00159 IN PRECTL SourceRect, 00160 IN BLENDOBJ *BlendObj); 00161 00162 BOOL APIENTRY 00163 IntEngCopyBits(SURFOBJ *psoDest, 00164 SURFOBJ *psoSource, 00165 CLIPOBJ *pco, 00166 XLATEOBJ *pxlo, 00167 RECTL *prclDest, 00168 POINTL *ptlSource); Generated on Sun May 27 2012 04:38:20 for ReactOS by
1.7.6.1
|