OLD | NEW |
1 // Copyright 2014 PDFium Authors. All rights reserved. | 1 // Copyright 2014 PDFium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com | 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com |
6 | 6 |
7 #ifndef _JBIG2_ARITH_INT_DECODER_H_ | 7 #ifndef CORE_SRC_FXCODEC_JBIG2_JBIG2_ARITHINTDECODER_H_ |
8 #define _JBIG2_ARITH_INT_DECODER_H_ | 8 #define CORE_SRC_FXCODEC_JBIG2_JBIG2_ARITHINTDECODER_H_ |
9 | 9 |
| 10 #include <vector> |
| 11 |
| 12 #include "../../../include/fxcrt/fx_system.h" |
10 #include "JBig2_ArithDecoder.h" | 13 #include "JBig2_ArithDecoder.h" |
11 | 14 |
12 class CJBig2_ArithIntDecoder { | 15 class CJBig2_ArithIntDecoder { |
13 public: | 16 public: |
14 CJBig2_ArithIntDecoder(); | 17 CJBig2_ArithIntDecoder(); |
15 | |
16 ~CJBig2_ArithIntDecoder(); | 18 ~CJBig2_ArithIntDecoder(); |
17 | 19 |
18 int decode(CJBig2_ArithDecoder* pArithDecoder, int* nResult); | 20 bool decode(CJBig2_ArithDecoder* pArithDecoder, int* nResult); |
19 | 21 |
20 private: | 22 private: |
21 JBig2ArithCtx* IAx; | 23 std::vector<JBig2ArithCtx> m_IAx; |
22 }; | 24 }; |
| 25 |
23 class CJBig2_ArithIaidDecoder { | 26 class CJBig2_ArithIaidDecoder { |
24 public: | 27 public: |
25 CJBig2_ArithIaidDecoder(unsigned char SBSYMCODELENA); | 28 explicit CJBig2_ArithIaidDecoder(unsigned char SBSYMCODELENA); |
26 | |
27 ~CJBig2_ArithIaidDecoder(); | 29 ~CJBig2_ArithIaidDecoder(); |
28 | 30 |
29 int decode(CJBig2_ArithDecoder* pArithDecoder, int* nResult); | 31 void decode(CJBig2_ArithDecoder* pArithDecoder, FX_DWORD* nResult); |
30 | 32 |
31 private: | 33 private: |
32 JBig2ArithCtx* IAID; | 34 std::vector<JBig2ArithCtx> m_IAID; |
33 | 35 |
34 unsigned char SBSYMCODELEN; | 36 const unsigned char SBSYMCODELEN; |
35 }; | 37 }; |
36 #endif | 38 |
| 39 #endif // CORE_SRC_FXCODEC_JBIG2_JBIG2_ARITHINTDECODER_H_ |
OLD | NEW |