1 #pragma once
2 
3 #include <traster.h>
4 
5 namespace TScannerUtil {
6 
7 /* copia un rettangolo da rin a rout,
8  * specchiandolo orizzontalmente se mirror e' dispari,
9  * e poi ruotandolo del multiplo di novanta gradi specificato
10  * da ninety in senso antiorario
11  *
12  */
13 
14 void copyRGBBufferToTRaster32(unsigned char *rgbBuffer, int rgbLx, int rgbLy,
15                               const TRaster32P &rout, bool internal);
16 
17 void copyRGBBufferToTRasterGR8(unsigned char *rgbBuffer, int rgbLx, int rgbLy,
18                                int rgbWrap, const TRasterGR8P &rout);
19 
20 void copyGR8BufferToTRasterGR8(unsigned char *gr8Buffer, int rgbLx, int rgbLy,
21                                const TRasterGR8P &rout, bool internal);
22 
23 void copyGR8BufferToTRasterBW(unsigned char *gr8Buffer, int rgbLx, int rgbLy,
24                               const TRasterGR8P &rout, bool internal,
25                               float thres);
26 
27 void copyBWBufferToTRasterGR8(const unsigned char *buffer, int rgbLx, int rgbLy,
28                               const TRasterGR8P &rout, bool isBW,
29                               bool internal);
30 
31 void copy90BWBufferToRasGR8(unsigned char *bwBuffer, int bwLx, int bwLy,
32                             int bwWrap, bool isBW, TRasterGR8P &rout,
33                             int mirror, int ninety);
34 };
35