OLD | NEW |
1 // Copyright 2016 PDFium Authors. All rights reserved. | 1 // Copyright 2016 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 CORE_FPDFAPI_PARSER_CPDF_DATA_AVAIL_H_ | 7 #ifndef CORE_FPDFAPI_PARSER_CPDF_DATA_AVAIL_H_ |
8 #define CORE_FPDFAPI_PARSER_CPDF_DATA_AVAIL_H_ | 8 #define CORE_FPDFAPI_PARSER_CPDF_DATA_AVAIL_H_ |
9 | 9 |
10 #include <vector> | 10 #include <vector> |
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 bool CheckAcroFormSubObject(DownloadHints* pHints); | 148 bool CheckAcroFormSubObject(DownloadHints* pHints); |
149 bool CheckTrailerAppend(DownloadHints* pHints); | 149 bool CheckTrailerAppend(DownloadHints* pHints); |
150 bool CheckPageStatus(DownloadHints* pHints); | 150 bool CheckPageStatus(DownloadHints* pHints); |
151 bool CheckAllCrossRefStream(DownloadHints* pHints); | 151 bool CheckAllCrossRefStream(DownloadHints* pHints); |
152 | 152 |
153 int32_t CheckCrossRefStream(DownloadHints* pHints, FX_FILESIZE& xref_offset); | 153 int32_t CheckCrossRefStream(DownloadHints* pHints, FX_FILESIZE& xref_offset); |
154 bool IsLinearizedFile(uint8_t* pData, uint32_t dwLen); | 154 bool IsLinearizedFile(uint8_t* pData, uint32_t dwLen); |
155 void SetStartOffset(FX_FILESIZE dwOffset); | 155 void SetStartOffset(FX_FILESIZE dwOffset); |
156 bool GetNextToken(CFX_ByteString& token); | 156 bool GetNextToken(CFX_ByteString& token); |
157 bool GetNextChar(uint8_t& ch); | 157 bool GetNextChar(uint8_t& ch); |
158 CPDF_Object* ParseIndirectObjectAt( | 158 std::unique_ptr<CPDF_Object> ParseIndirectObjectAt( |
159 FX_FILESIZE pos, | 159 FX_FILESIZE pos, |
160 uint32_t objnum, | 160 uint32_t objnum, |
161 CPDF_IndirectObjectHolder* pObjList = nullptr); | 161 CPDF_IndirectObjectHolder* pObjList = nullptr); |
162 CPDF_Object* GetObject(uint32_t objnum, | 162 std::unique_ptr<CPDF_Object> GetObject(uint32_t objnum, |
163 DownloadHints* pHints, | 163 DownloadHints* pHints, |
164 bool* pExistInFile); | 164 bool* pExistInFile); |
165 bool GetPageKids(CPDF_Parser* pParser, CPDF_Object* pPages); | 165 bool GetPageKids(CPDF_Parser* pParser, CPDF_Object* pPages); |
166 bool PreparePageItem(); | 166 bool PreparePageItem(); |
167 bool LoadPages(DownloadHints* pHints); | 167 bool LoadPages(DownloadHints* pHints); |
168 bool LoadAllXref(DownloadHints* pHints); | 168 bool LoadAllXref(DownloadHints* pHints); |
169 bool LoadAllFile(DownloadHints* pHints); | 169 bool LoadAllFile(DownloadHints* pHints); |
170 DocAvailStatus CheckLinearizedData(DownloadHints* pHints); | 170 DocAvailStatus CheckLinearizedData(DownloadHints* pHints); |
171 bool CheckPageAnnots(uint32_t dwPage, DownloadHints* pHints); | 171 bool CheckPageAnnots(uint32_t dwPage, DownloadHints* pHints); |
172 | 172 |
173 DocAvailStatus CheckLinearizedFirstPage(uint32_t dwPage, | 173 DocAvailStatus CheckLinearizedFirstPage(uint32_t dwPage, |
174 DownloadHints* pHints); | 174 DownloadHints* pHints); |
(...skipping 14 matching lines...) Expand all Loading... |
189 DownloadHints* pHints); | 189 DownloadHints* pHints); |
190 bool CheckPageCount(DownloadHints* pHints); | 190 bool CheckPageCount(DownloadHints* pHints); |
191 bool IsFirstCheck(uint32_t dwPage); | 191 bool IsFirstCheck(uint32_t dwPage); |
192 void ResetFirstCheck(uint32_t dwPage); | 192 void ResetFirstCheck(uint32_t dwPage); |
193 bool IsDataAvail(FX_FILESIZE offset, uint32_t size, DownloadHints* pHints); | 193 bool IsDataAvail(FX_FILESIZE offset, uint32_t size, DownloadHints* pHints); |
194 | 194 |
195 FileAvail* const m_pFileAvail; | 195 FileAvail* const m_pFileAvail; |
196 IFX_SeekableReadStream* const m_pFileRead; | 196 IFX_SeekableReadStream* const m_pFileRead; |
197 CPDF_Parser m_parser; | 197 CPDF_Parser m_parser; |
198 CPDF_SyntaxParser m_syntaxParser; | 198 CPDF_SyntaxParser m_syntaxParser; |
199 CPDF_Object* m_pRoot; | 199 std::unique_ptr<CPDF_Object> m_pRoot; |
200 uint32_t m_dwRootObjNum; | 200 uint32_t m_dwRootObjNum; |
201 uint32_t m_dwInfoObjNum; | 201 uint32_t m_dwInfoObjNum; |
202 CPDF_Object* m_pLinearized; | 202 std::unique_ptr<CPDF_Object> m_pLinearized; |
203 CPDF_Object* m_pTrailer; | 203 CPDF_Object* m_pTrailer; |
204 bool m_bDocAvail; | 204 bool m_bDocAvail; |
205 FX_FILESIZE m_dwHeaderOffset; | 205 FX_FILESIZE m_dwHeaderOffset; |
206 FX_FILESIZE m_dwLastXRefOffset; | 206 FX_FILESIZE m_dwLastXRefOffset; |
207 FX_FILESIZE m_dwXRefOffset; | 207 FX_FILESIZE m_dwXRefOffset; |
208 FX_FILESIZE m_dwTrailerOffset; | 208 FX_FILESIZE m_dwTrailerOffset; |
209 FX_FILESIZE m_dwCurrentOffset; | 209 FX_FILESIZE m_dwCurrentOffset; |
210 PDF_DATAAVAIL_STATUS m_docStatus; | 210 PDF_DATAAVAIL_STATUS m_docStatus; |
211 FX_FILESIZE m_dwFileLen; | 211 FX_FILESIZE m_dwFileLen; |
212 CPDF_Document* m_pDocument; | 212 CPDF_Document* m_pDocument; |
(...skipping 20 matching lines...) Expand all Loading... |
233 bool m_bHaveAcroForm; | 233 bool m_bHaveAcroForm; |
234 uint32_t m_dwAcroFormObjNum; | 234 uint32_t m_dwAcroFormObjNum; |
235 bool m_bAcroFormLoad; | 235 bool m_bAcroFormLoad; |
236 CPDF_Object* m_pAcroForm; | 236 CPDF_Object* m_pAcroForm; |
237 std::vector<CPDF_Object*> m_arrayAcroforms; | 237 std::vector<CPDF_Object*> m_arrayAcroforms; |
238 CPDF_Dictionary* m_pPageDict; | 238 CPDF_Dictionary* m_pPageDict; |
239 CPDF_Object* m_pPageResource; | 239 CPDF_Object* m_pPageResource; |
240 bool m_bNeedDownLoadResource; | 240 bool m_bNeedDownLoadResource; |
241 bool m_bPageLoadedOK; | 241 bool m_bPageLoadedOK; |
242 bool m_bLinearizedFormParamLoad; | 242 bool m_bLinearizedFormParamLoad; |
243 std::vector<CPDF_Object*> m_PagesArray; | 243 std::vector<std::unique_ptr<CPDF_Object>> m_PagesArray; |
244 uint32_t m_dwEncryptObjNum; | 244 uint32_t m_dwEncryptObjNum; |
245 FX_FILESIZE m_dwPrevXRefOffset; | 245 FX_FILESIZE m_dwPrevXRefOffset; |
246 bool m_bTotalLoadPageTree; | 246 bool m_bTotalLoadPageTree; |
247 bool m_bCurPageDictLoadOK; | 247 bool m_bCurPageDictLoadOK; |
248 PageNode m_pageNodes; | 248 PageNode m_pageNodes; |
249 std::set<uint32_t> m_pageMapCheckState; | 249 std::set<uint32_t> m_pageMapCheckState; |
250 std::set<uint32_t> m_pagesLoadState; | 250 std::set<uint32_t> m_pagesLoadState; |
251 std::unique_ptr<CPDF_HintTables> m_pHintTables; | 251 std::unique_ptr<CPDF_HintTables> m_pHintTables; |
252 bool m_bSupportHintTable; | 252 bool m_bSupportHintTable; |
253 }; | 253 }; |
254 | 254 |
255 #endif // CORE_FPDFAPI_PARSER_CPDF_DATA_AVAIL_H_ | 255 #endif // CORE_FPDFAPI_PARSER_CPDF_DATA_AVAIL_H_ |
OLD | NEW |