1 | /* Copyright (C) 2001-2019 Artifex Software, Inc. |
2 | All Rights Reserved. |
3 | |
4 | This software is provided AS-IS with no warranty, either express or |
5 | implied. |
6 | |
7 | This software is distributed under license and may not be copied, |
8 | modified or distributed except as expressly authorized under the terms |
9 | of the license contained in the file LICENSE in this distribution. |
10 | |
11 | Refer to licensing information at http://www.artifex.com or contact |
12 | Artifex Software, Inc., 1305 Grant Avenue - Suite 200, Novato, |
13 | CA 94945, U.S.A., +1(415)492-9861, for further information. |
14 | */ |
15 | |
16 | /* |
17 | jbig2dec |
18 | */ |
19 | |
20 | #ifndef _JBIG2_GENERIC_H |
21 | #define _JBIG2_GENERIC_H |
22 | |
23 | /** |
24 | * Headers for Generic and Generic Refinement region handling |
25 | **/ |
26 | |
27 | /* 6.4 Table 2 */ |
28 | typedef struct { |
29 | bool MMR; |
30 | /* GBW */ |
31 | /* GBH */ |
32 | int GBTEMPLATE; |
33 | bool TPGDON; |
34 | bool USESKIP; |
35 | Jbig2Image *SKIP; |
36 | int8_t gbat[8]; |
37 | } Jbig2GenericRegionParams; |
38 | |
39 | /* return the appropriate context size for the given template */ |
40 | int jbig2_generic_stats_size(Jbig2Ctx *ctx, int template); |
41 | |
42 | int |
43 | jbig2_decode_generic_region(Jbig2Ctx *ctx, |
44 | Jbig2Segment *segment, const Jbig2GenericRegionParams *params, Jbig2ArithState *as, Jbig2Image *image, Jbig2ArithCx *GB_stats); |
45 | |
46 | /* 7.4 */ |
47 | int jbig2_immediate_generic_region(Jbig2Ctx *ctx, Jbig2Segment *segment, const uint8_t *segment_data); |
48 | |
49 | #endif /* _JBIG2_GENERIC_H */ |
50 | |