ReactOS  0.4.14-dev-552-g2fad488
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 }
SURFINFO siDst
ULONG iFormat
PFN_DIBFUNCTION gapfnBitBlt_SRCCOPY[7][7]
SURFINFO siSrc

◆ 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 }
PBYTE pjBase
SURFINFO siDst
ULONG ulWidth
ULONG ulHeight
#define memcpy(s1, s2, n)
Definition: mkisofs.h:878
unsigned int ULONG
Definition: retypes.h:1
SURFINFO siSrc
BYTE * PBYTE
Definition: pedump.c:66