Make a bunch of JBig2 classes independent of CJBig2_Object.
[pdfium.git] / core / src / fxcodec / jbig2 / JBig2_Define.h
1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7 #ifndef _JBIG2_DEFINE_H_
8 #define _JBIG2_DEFINE_H_
9 #include "../../../include/fxcrt/fx_system.h"
10 #define JBIG2_memset FXSYS_memset
11 #define JBIG2_memcmp FXSYS_memcmp
12 #define JBIG2_memcpy FXSYS_memcpy
13 #include "JBig2_Object.h"
14 #define JBIG2_OOB 1
15 typedef struct {
16   int32_t width, height;
17   int32_t x, y;
18   uint8_t flags;
19 } JBig2RegionInfo;
20 typedef struct {
21   int32_t codelen;
22   int32_t code;
23 } JBig2HuffmanCode;
24 extern "C" {
25 void _FaxG4Decode(void* pModule,
26                   const uint8_t* src_buf,
27                   FX_DWORD src_size,
28                   int* pbitpos,
29                   uint8_t* dest_buf,
30                   int width,
31                   int height,
32                   int pitch = 0);
33 };
34 #define JBIG2_MAX_REFERRED_SEGMENT_COUNT 64
35 #define JBIG2_MAX_EXPORT_SYSMBOLS 65535
36 #define JBIG2_MAX_NEW_SYSMBOLS 65535
37 #define JBIG2_MAX_PATTERN_INDEX 65535
38 #define JBIG2_MAX_IMAGE_SIZE 65535
39 #endif