ReactOS 0.4.16-dev-297-gc569aee
BitBlt_SRCCOPY.c File Reference
#include "DibLib.h"
#include "DibLib_AllSrcBPP.h"
Include dependency graph for BitBlt_SRCCOPY.c:

Go to the source code of this file.

Macros

#define Dib_BitBlt_SRCCOPY_S8_D8_EqSurf   Dib_BitBlt_SRCCOPY_EqSurf
 
#define Dib_BitBlt_SRCCOPY_S16_D16_EqSurf   Dib_BitBlt_SRCCOPY_EqSurf
 
#define Dib_BitBlt_SRCCOPY_S24_D24_EqSurf   Dib_BitBlt_SRCCOPY_EqSurf
 
#define Dib_BitBlt_SRCCOPY_S32_D32_EqSurf   Dib_BitBlt_SRCCOPY_EqSurf
 
#define Dib_BitBlt_SRCCOPY_EqSurf_manual   1
 
#define __USES_SOURCE   1
 
#define __USES_PATTERN   0
 
#define __USES_DEST   0
 
#define __USES_MASK   0
 
#define __FUNCTIONNAME   BitBlt_SRCCOPY
 
#define _DibDoRop(pBltData, M, D, S, P)   ROP_SRCCOPY(D,S,P)
 

Functions

VOID FASTCALL Dib_BitBlt_SRCCOPY_EqSurf (PBLTDATA pBltData)
 
VOID FASTCALL Dib_BitBlt_SRCCOPY (PBLTDATA pBltData)
 

Macro Definition Documentation

◆ __FUNCTIONNAME

#define __FUNCTIONNAME   BitBlt_SRCCOPY

Definition at line 62 of file BitBlt_SRCCOPY.c.

◆ __USES_DEST

#define __USES_DEST   0

Definition at line 59 of file BitBlt_SRCCOPY.c.

◆ __USES_MASK

#define __USES_MASK   0

Definition at line 60 of file BitBlt_SRCCOPY.c.

◆ __USES_PATTERN

#define __USES_PATTERN   0

Definition at line 58 of file BitBlt_SRCCOPY.c.

◆ __USES_SOURCE

#define __USES_SOURCE   1

Definition at line 57 of file BitBlt_SRCCOPY.c.

◆ _DibDoRop

#define _DibDoRop (   pBltData,
  M,
  D,
  S,
  P 
)    ROP_SRCCOPY(D,S,P)

Definition at line 64 of file BitBlt_SRCCOPY.c.

◆ Dib_BitBlt_SRCCOPY_EqSurf_manual

#define Dib_BitBlt_SRCCOPY_EqSurf_manual   1

Definition at line 55 of file BitBlt_SRCCOPY.c.

◆ Dib_BitBlt_SRCCOPY_S16_D16_EqSurf

#define Dib_BitBlt_SRCCOPY_S16_D16_EqSurf   Dib_BitBlt_SRCCOPY_EqSurf

Definition at line 26 of file BitBlt_SRCCOPY.c.

◆ Dib_BitBlt_SRCCOPY_S24_D24_EqSurf

#define Dib_BitBlt_SRCCOPY_S24_D24_EqSurf   Dib_BitBlt_SRCCOPY_EqSurf

Definition at line 27 of file BitBlt_SRCCOPY.c.

◆ Dib_BitBlt_SRCCOPY_S32_D32_EqSurf

#define Dib_BitBlt_SRCCOPY_S32_D32_EqSurf   Dib_BitBlt_SRCCOPY_EqSurf

Definition at line 50 of file BitBlt_SRCCOPY.c.

◆ Dib_BitBlt_SRCCOPY_S8_D8_EqSurf

#define Dib_BitBlt_SRCCOPY_S8_D8_EqSurf   Dib_BitBlt_SRCCOPY_EqSurf

Definition at line 25 of file BitBlt_SRCCOPY.c.

Function Documentation

◆ Dib_BitBlt_SRCCOPY()

VOID FASTCALL Dib_BitBlt_SRCCOPY ( PBLTDATA  pBltData)

Definition at line 70 of file BitBlt_SRCCOPY.c.

71{
72 gapfnBitBlt_SRCCOPY[pBltData->siDst.iFormat][pBltData->siSrc.iFormat](pBltData);
73}
PFN_DIBFUNCTION gapfnBitBlt_SRCCOPY[7][7]
SURFINFO siSrc
SURFINFO siDst
ULONG iFormat

◆ Dib_BitBlt_SRCCOPY_EqSurf()

VOID FASTCALL Dib_BitBlt_SRCCOPY_EqSurf ( PBLTDATA  pBltData)

Definition at line 6 of file BitBlt_SRCCOPY.c.

7{
8 ULONG cLines, cjWidth;
9 PBYTE pjDestBase = pBltData->siDst.pjBase;
10 PBYTE pjSrcBase = pBltData->siSrc.pjBase;
11
12 /* Calculate the width in bytes */
13 cjWidth = pBltData->ulWidth * pBltData->siDst.jBpp / 8;
14
15 /* Loop all lines */
16 cLines = pBltData->ulHeight;
17 while (cLines--)
18 {
19 memcpy(pjDestBase, pjSrcBase, cjWidth);
20 pjDestBase += pBltData->siDst.cjAdvanceY;
21 pjSrcBase += pBltData->siSrc.cjAdvanceY;
22 }
23}
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
BYTE * PBYTE
Definition: pedump.c:66
ULONG ulWidth
ULONG ulHeight
PBYTE pjBase
uint32_t ULONG
Definition: typedefs.h:59