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 CORE_INCLUDE_FPDFAPI_FPDF_OBJECTS_H_ | 7 #ifndef CORE_INCLUDE_FPDFAPI_FPDF_OBJECTS_H_ |
8 #define CORE_INCLUDE_FPDFAPI_FPDF_OBJECTS_H_ | 8 #define CORE_INCLUDE_FPDFAPI_FPDF_OBJECTS_H_ |
9 | 9 |
| 10 #include <set> |
| 11 |
10 #include "core/include/fxcrt/fx_coordinates.h" | 12 #include "core/include/fxcrt/fx_coordinates.h" |
11 #include "core/include/fxcrt/fx_system.h" | 13 #include "core/include/fxcrt/fx_system.h" |
12 | 14 |
13 class CPDF_Array; | 15 class CPDF_Array; |
14 class CPDF_Boolean; | 16 class CPDF_Boolean; |
15 class CPDF_CryptoHandler; | 17 class CPDF_CryptoHandler; |
16 class CPDF_Dictionary; | 18 class CPDF_Dictionary; |
17 class CPDF_Document; | 19 class CPDF_Document; |
18 class CPDF_IndirectObjects; | 20 class CPDF_IndirectObjects; |
19 class CPDF_Name; | 21 class CPDF_Name; |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
122 FX_DWORD m_Type; | 124 FX_DWORD m_Type; |
123 FX_DWORD m_ObjNum; | 125 FX_DWORD m_ObjNum; |
124 FX_DWORD m_GenNum; | 126 FX_DWORD m_GenNum; |
125 | 127 |
126 friend class CPDF_IndirectObjects; | 128 friend class CPDF_IndirectObjects; |
127 friend class CPDF_Parser; | 129 friend class CPDF_Parser; |
128 friend class CPDF_SyntaxParser; | 130 friend class CPDF_SyntaxParser; |
129 | 131 |
130 private: | 132 private: |
131 CPDF_Object(const CPDF_Object& src) {} | 133 CPDF_Object(const CPDF_Object& src) {} |
132 CPDF_Object* CloneInternal(FX_BOOL bDirect, CFX_MapPtrToPtr* visited) const; | 134 CPDF_Object* CloneInternal(FX_BOOL bDirect, |
| 135 std::set<FX_DWORD>* visited) const; |
133 }; | 136 }; |
134 class CPDF_Boolean : public CPDF_Object { | 137 class CPDF_Boolean : public CPDF_Object { |
135 public: | 138 public: |
136 static CPDF_Boolean* Create(FX_BOOL value) { return new CPDF_Boolean(value); } | 139 static CPDF_Boolean* Create(FX_BOOL value) { return new CPDF_Boolean(value); } |
137 | 140 |
138 CPDF_Boolean() : CPDF_Object(PDFOBJ_BOOLEAN), m_bValue(false) {} | 141 CPDF_Boolean() : CPDF_Object(PDFOBJ_BOOLEAN), m_bValue(false) {} |
139 CPDF_Boolean(FX_BOOL value) : CPDF_Object(PDFOBJ_BOOLEAN), m_bValue(value) {} | 142 CPDF_Boolean(FX_BOOL value) : CPDF_Object(PDFOBJ_BOOLEAN), m_bValue(value) {} |
140 | 143 |
141 FX_BOOL Identical(CPDF_Boolean* pOther) const { | 144 FX_BOOL Identical(CPDF_Boolean* pOther) const { |
142 return m_bValue == pOther->m_bValue; | 145 return m_bValue == pOther->m_bValue; |
(...skipping 482 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
625 | 628 |
626 protected: | 629 protected: |
627 CFX_MapPtrToPtr m_IndirectObjs; | 630 CFX_MapPtrToPtr m_IndirectObjs; |
628 | 631 |
629 CPDF_Parser* m_pParser; | 632 CPDF_Parser* m_pParser; |
630 | 633 |
631 FX_DWORD m_LastObjNum; | 634 FX_DWORD m_LastObjNum; |
632 }; | 635 }; |
633 | 636 |
634 #endif // CORE_INCLUDE_FPDFAPI_FPDF_OBJECTS_H_ | 637 #endif // CORE_INCLUDE_FPDFAPI_FPDF_OBJECTS_H_ |
OLD | NEW |