1 
2 #include "DibLib.h"
3 
4 #define __USES_SOURCE 1
5 #define __USES_PATTERN 1
6 #define __USES_DEST 0
7 #define __USES_MASK 0
8 
9 #define _DibDoRop(pBltData, M, D, S, P) ROP_MERGECOPY(D,S,P)
10 
11 #define __FUNCTIONNAME BitBlt_MERGECOPY
12 #include "DibLib_AllSrcBPP.h"
13 
14 #undef __FUNCTIONNAME
15 #define __FUNCTIONNAME BitBlt_MERGECOPY_Solid
16 #define __USES_SOLID_BRUSH 1
17 #include "DibLib_AllSrcBPP.h"
18 
19 VOID
20 FASTCALL
21 Dib_BitBlt_MERGECOPY(PBLTDATA pBltData)
22 {
23     /* Check for solid brush */
24     if (pBltData->ulSolidColor != 0xFFFFFFFF)
25     {
26         /* Use the solid version of PATCOPY! */
27         gapfnBitBlt_MERGECOPY_Solid[pBltData->siDst.iFormat][pBltData->siSrc.iFormat](pBltData);
28     }
29     else
30     {
31         /* Use the pattern version */
32         gapfnBitBlt_MERGECOPY[pBltData->siDst.iFormat][pBltData->siSrc.iFormat](pBltData);
33     }
34 }
35 
36