Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(544)

Side by Side Diff: core/fpdfapi/parser/cfdf_document.h

Issue 2509773003: Move ByteStringPool from document to indirect object holder. (Closed)
Patch Set: CFDF document too Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | core/fpdfapi/parser/cfdf_document.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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_CFDF_DOCUMENT_H_ 7 #ifndef CORE_FPDFAPI_PARSER_CFDF_DOCUMENT_H_
8 #define CORE_FPDFAPI_PARSER_CFDF_DOCUMENT_H_ 8 #define CORE_FPDFAPI_PARSER_CFDF_DOCUMENT_H_
9 9
10 #include "core/fpdfapi/parser/cpdf_indirect_object_holder.h" 10 #include "core/fpdfapi/parser/cpdf_indirect_object_holder.h"
11 #include "core/fpdfapi/parser/cpdf_object.h" 11 #include "core/fpdfapi/parser/cpdf_object.h"
12 #include "core/fxcrt/cfx_string_pool_template.h"
13 #include "core/fxcrt/cfx_weak_ptr.h"
14 #include "core/fxcrt/fx_basic.h" 12 #include "core/fxcrt/fx_basic.h"
15 13
16 class CPDF_Dictionary; 14 class CPDF_Dictionary;
17 15
18 class CFDF_Document : public CPDF_IndirectObjectHolder { 16 class CFDF_Document : public CPDF_IndirectObjectHolder {
19 public: 17 public:
20 static CFDF_Document* CreateNewDoc(); 18 static CFDF_Document* CreateNewDoc();
21 static CFDF_Document* ParseFile(IFX_SeekableReadStream* pFile, 19 static CFDF_Document* ParseFile(IFX_SeekableReadStream* pFile,
22 bool bOwnFile = false); 20 bool bOwnFile = false);
23 static CFDF_Document* ParseMemory(const uint8_t* pData, uint32_t size); 21 static CFDF_Document* ParseMemory(const uint8_t* pData, uint32_t size);
24 ~CFDF_Document() override; 22 ~CFDF_Document() override;
25 23
26 bool WriteBuf(CFX_ByteTextBuf& buf) const; 24 bool WriteBuf(CFX_ByteTextBuf& buf) const;
27 CPDF_Dictionary* GetRoot() const { return m_pRootDict; } 25 CPDF_Dictionary* GetRoot() const { return m_pRootDict; }
28 CFX_WeakPtr<CFX_ByteStringPool> GetByteStringPool() const {
29 return m_pByteStringPool;
30 }
31 26
32 protected: 27 protected:
33 CFDF_Document(); 28 CFDF_Document();
34 void ParseStream(IFX_SeekableReadStream* pFile, bool bOwnFile); 29 void ParseStream(IFX_SeekableReadStream* pFile, bool bOwnFile);
35 30
36 CPDF_Dictionary* m_pRootDict; 31 CPDF_Dictionary* m_pRootDict;
37 IFX_SeekableReadStream* m_pFile; 32 IFX_SeekableReadStream* m_pFile;
38 bool m_bOwnFile; 33 bool m_bOwnFile;
39 CFX_WeakPtr<CFX_ByteStringPool> m_pByteStringPool;
40 }; 34 };
41 35
42 #endif // CORE_FPDFAPI_PARSER_CFDF_DOCUMENT_H_ 36 #endif // CORE_FPDFAPI_PARSER_CFDF_DOCUMENT_H_
OLDNEW
« no previous file with comments | « no previous file | core/fpdfapi/parser/cfdf_document.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698