1 | /* Copyright (c) 2001, Stanford University
|
---|
2 | * All rights reserved.
|
---|
3 | *
|
---|
4 | * See the file LICENSE.txt for information on redistributing this software.
|
---|
5 | */
|
---|
6 |
|
---|
7 | #ifndef CR_STATE_PIXEL_H
|
---|
8 | #define CR_STATE_PIXEL_H
|
---|
9 |
|
---|
10 | #include "state/cr_statetypes.h"
|
---|
11 | #include "state/cr_limits.h"
|
---|
12 | #include "cr_bits.h"
|
---|
13 |
|
---|
14 | #include <iprt/cdefs.h>
|
---|
15 |
|
---|
16 | #ifdef __cplusplus
|
---|
17 | extern "C" {
|
---|
18 | #endif
|
---|
19 |
|
---|
20 | typedef struct {
|
---|
21 | CRbitvalue dirty[CR_MAX_BITARRAY];
|
---|
22 | CRbitvalue transfer[CR_MAX_BITARRAY];
|
---|
23 | CRbitvalue zoom[CR_MAX_BITARRAY];
|
---|
24 | CRbitvalue maps[CR_MAX_BITARRAY];
|
---|
25 | } CRPixelBits;
|
---|
26 |
|
---|
27 | typedef struct {
|
---|
28 | GLboolean mapColor;
|
---|
29 | GLboolean mapStencil;
|
---|
30 | GLint indexShift;
|
---|
31 | GLint indexOffset;
|
---|
32 | GLcolorf scale;
|
---|
33 | GLfloat depthScale;
|
---|
34 | GLcolorf bias;
|
---|
35 | GLfloat depthBias;
|
---|
36 | GLfloat xZoom;
|
---|
37 | GLfloat yZoom;
|
---|
38 |
|
---|
39 | GLint mapItoI[CR_MAX_PIXEL_MAP_TABLE];
|
---|
40 | GLint mapStoS[CR_MAX_PIXEL_MAP_TABLE];
|
---|
41 | GLfloat mapItoR[CR_MAX_PIXEL_MAP_TABLE];
|
---|
42 | GLfloat mapItoG[CR_MAX_PIXEL_MAP_TABLE];
|
---|
43 | GLfloat mapItoB[CR_MAX_PIXEL_MAP_TABLE];
|
---|
44 | GLfloat mapItoA[CR_MAX_PIXEL_MAP_TABLE];
|
---|
45 | GLfloat mapRtoR[CR_MAX_PIXEL_MAP_TABLE];
|
---|
46 | GLfloat mapGtoG[CR_MAX_PIXEL_MAP_TABLE];
|
---|
47 | GLfloat mapBtoB[CR_MAX_PIXEL_MAP_TABLE];
|
---|
48 | GLfloat mapAtoA[CR_MAX_PIXEL_MAP_TABLE];
|
---|
49 |
|
---|
50 | GLint mapItoIsize;
|
---|
51 | GLint mapStoSsize;
|
---|
52 | GLint mapItoRsize;
|
---|
53 | GLint mapItoGsize;
|
---|
54 | GLint mapItoBsize;
|
---|
55 | GLint mapItoAsize;
|
---|
56 | GLint mapRtoRsize;
|
---|
57 | GLint mapGtoGsize;
|
---|
58 | GLint mapBtoBsize;
|
---|
59 | GLint mapAtoAsize;
|
---|
60 | } CRPixelState;
|
---|
61 |
|
---|
62 | DECLEXPORT(void) crStatePixelInit( CRContext *ctx );
|
---|
63 |
|
---|
64 | DECLEXPORT(void) crStatePixelDiff(CRPixelBits *bb, CRbitvalue *bitID,
|
---|
65 | CRContext *fromCtx, CRContext *toCtx);
|
---|
66 | DECLEXPORT(void) crStatePixelSwitch(CRPixelBits *bb, CRbitvalue *bitID,
|
---|
67 | CRContext *fromCtx, CRContext *toCtx);
|
---|
68 |
|
---|
69 | #ifdef __cplusplus
|
---|
70 | }
|
---|
71 | #endif
|
---|
72 |
|
---|
73 |
|
---|
74 | #endif /* CR_STATE_PIXEL_H */
|
---|