summaryrefslogtreecommitdiff
path: root/core/fpdfapi/parser/cpdf_object.h
diff options
context:
space:
mode:
Diffstat (limited to 'core/fpdfapi/parser/cpdf_object.h')
-rw-r--r--core/fpdfapi/parser/cpdf_object.h22
1 files changed, 9 insertions, 13 deletions
diff --git a/core/fpdfapi/parser/cpdf_object.h b/core/fpdfapi/parser/cpdf_object.h
index 4d4279f98a..7a14492d70 100644
--- a/core/fpdfapi/parser/cpdf_object.h
+++ b/core/fpdfapi/parser/cpdf_object.h
@@ -44,7 +44,9 @@ class CPDF_Object {
virtual Type GetType() const = 0;
uint32_t GetObjNum() const { return m_ObjNum; }
+ void SetObjNum(uint32_t objnum) { m_ObjNum = objnum; }
uint32_t GetGenNum() const { return m_GenNum; }
+ void SetGenNum(uint32_t gennum) { m_GenNum = gennum; }
bool IsInline() const { return m_ObjNum == 0; }
// Create a deep copy of the object.
@@ -92,18 +94,6 @@ class CPDF_Object {
virtual bool WriteTo(IFX_ArchiveStream* archive) const = 0;
- protected:
- friend class CPDF_Array;
- friend class CPDF_Dictionary;
- friend class CPDF_IndirectObjectHolder;
- friend class CPDF_SyntaxParser;
- friend class CPDF_Reference;
- friend class CPDF_Stream;
-
- CPDF_Object() : m_ObjNum(0), m_GenNum(0) {}
-
- std::unique_ptr<CPDF_Object> CloneObjectNonCyclic(bool bDirect) const;
-
// Create a deep copy of the object with the option to either
// copy a reference object or directly copy the object it refers to
// when |bDirect| is true.
@@ -114,11 +104,17 @@ class CPDF_Object {
bool bDirect,
std::set<const CPDF_Object*>* pVisited) const;
+ protected:
+ CPDF_Object() : m_ObjNum(0), m_GenNum(0) {}
+
+ std::unique_ptr<CPDF_Object> CloneObjectNonCyclic(bool bDirect) const;
+
uint32_t m_ObjNum;
- uint32_t m_GenNum;
private:
CPDF_Object(const CPDF_Object& src) {}
+
+ uint32_t m_GenNum;
};
template <typename T>