summaryrefslogtreecommitdiff
path: root/core/fxcodec/jbig2/JBig2_SddProc.h
diff options
context:
space:
mode:
Diffstat (limited to 'core/fxcodec/jbig2/JBig2_SddProc.h')
-rw-r--r--core/fxcodec/jbig2/JBig2_SddProc.h49
1 files changed, 49 insertions, 0 deletions
diff --git a/core/fxcodec/jbig2/JBig2_SddProc.h b/core/fxcodec/jbig2/JBig2_SddProc.h
new file mode 100644
index 0000000000..fa1211b4b4
--- /dev/null
+++ b/core/fxcodec/jbig2/JBig2_SddProc.h
@@ -0,0 +1,49 @@
+// Copyright 2015 PDFium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
+
+#ifndef CORE_FXCODEC_JBIG2_JBIG2_SDDPROC_H_
+#define CORE_FXCODEC_JBIG2_JBIG2_SDDPROC_H_
+
+#include <vector>
+
+#include "core/fxcodec/jbig2/JBig2_ArithDecoder.h"
+#include "core/include/fxcrt/fx_system.h"
+
+class CJBig2_BitStream;
+class CJBig2_HuffmanTable;
+class CJBig2_Image;
+class CJBig2_SymbolDict;
+class IFX_Pause;
+
+class CJBig2_SDDProc {
+ public:
+ CJBig2_SymbolDict* decode_Arith(CJBig2_ArithDecoder* pArithDecoder,
+ std::vector<JBig2ArithCtx>* gbContext,
+ std::vector<JBig2ArithCtx>* grContext);
+
+ CJBig2_SymbolDict* decode_Huffman(CJBig2_BitStream* pStream,
+ std::vector<JBig2ArithCtx>* gbContext,
+ std::vector<JBig2ArithCtx>* grContext,
+ IFX_Pause* pPause);
+
+ public:
+ FX_BOOL SDHUFF;
+ FX_BOOL SDREFAGG;
+ FX_DWORD SDNUMINSYMS;
+ CJBig2_Image** SDINSYMS;
+ FX_DWORD SDNUMNEWSYMS;
+ FX_DWORD SDNUMEXSYMS;
+ CJBig2_HuffmanTable* SDHUFFDH;
+ CJBig2_HuffmanTable* SDHUFFDW;
+ CJBig2_HuffmanTable* SDHUFFBMSIZE;
+ CJBig2_HuffmanTable* SDHUFFAGGINST;
+ uint8_t SDTEMPLATE;
+ int8_t SDAT[8];
+ FX_BOOL SDRTEMPLATE;
+ int8_t SDRAT[4];
+};
+
+#endif // CORE_FXCODEC_JBIG2_JBIG2_SDDPROC_H_