33 pdfium::span<
const uint8_t> pGlobalSpan,
35 pdfium::span<
const uint8_t> pSrcSpan,
37 std::list<CJBig2_CachePair>* pSymbolDictCache);
53 CJBig2_Context(pdfium::span<
const uint8_t> pSrcSpan,
55 std::list<CJBig2_CachePair>* pSymbolDictCache,
81 std::vector<JBig2HuffmanCode> DecodeSymbolIDHuffmanTable(uint32_t SBNUMSYMS);
84 std::unique_ptr<CJBig2_Context> m_pGlobalContext;
85 std::unique_ptr<CJBig2_BitStream> m_pStream;
86 std::vector<std::unique_ptr<CJBig2_Segment>> m_SegmentList;
87 std::vector<std::unique_ptr<JBig2PageInfo>> m_PageInfoList;
88 std::unique_ptr<CJBig2_Image> m_pPage;
89 std::vector<std::unique_ptr<CJBig2_HuffmanTable>> m_HuffmanTables;
90 const bool m_bIsGlobal;
91 bool m_bInPage =
false;
92 bool m_bBufSpecified =
false;
93 int32_t m_PauseStep = 10;
95 std::vector<JBig2ArithCtx> m_gbContext;
96 std::unique_ptr<CJBig2_ArithDecoder> m_pArithDecoder;
97 std::unique_ptr<CJBig2_GRDProc> m_pGRD;
98 std::unique_ptr<CJBig2_Segment> m_pSegment;
99 uint32_t m_nOffset = 0;
101 UnownedPtr<std::list<CJBig2_CachePair>>
const m_pSymbolDictCache;
static const size_t kSymbolDictCacheMaxSize
#define JBIG2_MIN_SEGMENT_SIZE
static std::unique_ptr< CJBig2_Context > Create(pdfium::span< const uint8_t > pGlobalSpan, uint64_t global_key, pdfium::span< const uint8_t > pSrcSpan, uint64_t src_key, std::list< CJBig2_CachePair > *pSymbolDictCache)
static bool HuffmanAssignCode(JBig2HuffmanCode *SBSYMCODES, uint32_t NTEMP)
bool GetFirstPage(pdfium::span< uint8_t > pBuf, int32_t width, int32_t height, int32_t stride, PauseIndicatorIface *pPause)
bool Continue(PauseIndicatorIface *pPause)
FXCODEC_STATUS GetProcessingStatus() const