diff options
Diffstat (limited to 'core/fxcodec/jbig2/JBig2_ArithDecoder.h')
-rw-r--r-- | core/fxcodec/jbig2/JBig2_ArithDecoder.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/core/fxcodec/jbig2/JBig2_ArithDecoder.h b/core/fxcodec/jbig2/JBig2_ArithDecoder.h new file mode 100644 index 0000000000..a8ab5dd730 --- /dev/null +++ b/core/fxcodec/jbig2/JBig2_ArithDecoder.h @@ -0,0 +1,38 @@ +// Copyright 2014 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_ARITHDECODER_H_ +#define CORE_FXCODEC_JBIG2_JBIG2_ARITHDECODER_H_ + +class CJBig2_BitStream; + +struct JBig2ArithCtx { + JBig2ArithCtx() : MPS(0), I(0) {} + + unsigned int MPS; + unsigned int I; +}; + +class CJBig2_ArithDecoder { + public: + explicit CJBig2_ArithDecoder(CJBig2_BitStream* pStream); + + ~CJBig2_ArithDecoder(); + + int DECODE(JBig2ArithCtx* pCX); + + private: + void BYTEIN(); + void ReadValueA(); + + unsigned char m_B; + unsigned int m_C; + unsigned int m_A; + unsigned int m_CT; + CJBig2_BitStream* const m_pStream; +}; + +#endif // CORE_FXCODEC_JBIG2_JBIG2_ARITHDECODER_H_ |