| 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 "../fxcrt/fx_ext.h" | 10 #include "../fxcrt/fx_ext.h" |
| 11 | 11 |
| 12 class CPDF_Array; |
| 13 class CPDF_Boolean; |
| 14 class CPDF_CryptoHandler; |
| 15 class CPDF_Dictionary; |
| 12 class CPDF_Document; | 16 class CPDF_Document; |
| 13 class CPDF_IndirectObjects; | 17 class CPDF_IndirectObjects; |
| 14 class CPDF_Null; | 18 class CPDF_Null; |
| 15 class CPDF_Boolean; | |
| 16 class CPDF_Number; | 19 class CPDF_Number; |
| 17 class CPDF_String; | 20 class CPDF_Parser; |
| 21 class CPDF_Reference; |
| 18 class CPDF_Stream; | 22 class CPDF_Stream; |
| 19 class CPDF_StreamAcc; | 23 class CPDF_StreamAcc; |
| 20 class CPDF_StreamFilter; | 24 class CPDF_StreamFilter; |
| 21 class CPDF_Array; | 25 class CPDF_String; |
| 22 class CPDF_Dictionary; | |
| 23 class CPDF_Reference; | |
| 24 class IPDF_DocParser; | |
| 25 class IFX_FileRead; | 26 class IFX_FileRead; |
| 26 class CPDF_CryptoHandler; | 27 |
| 27 #define PDFOBJ_INVALID 0 | 28 #define PDFOBJ_INVALID 0 |
| 28 #define PDFOBJ_BOOLEAN 1 | 29 #define PDFOBJ_BOOLEAN 1 |
| 29 #define PDFOBJ_NUMBER 2 | 30 #define PDFOBJ_NUMBER 2 |
| 30 #define PDFOBJ_STRING 3 | 31 #define PDFOBJ_STRING 3 |
| 31 #define PDFOBJ_NAME 4 | 32 #define PDFOBJ_NAME 4 |
| 32 #define PDFOBJ_ARRAY 5 | 33 #define PDFOBJ_ARRAY 5 |
| 33 #define PDFOBJ_DICTIONARY 6 | 34 #define PDFOBJ_DICTIONARY 6 |
| 34 #define PDFOBJ_STREAM 7 | 35 #define PDFOBJ_STREAM 7 |
| 35 #define PDFOBJ_NULL 8 | 36 #define PDFOBJ_NULL 8 |
| 36 #define PDFOBJ_REFERENCE 9 | 37 #define PDFOBJ_REFERENCE 9 |
| 38 |
| 37 typedef IFX_FileStream* (*FPDF_LPFCloneStreamCallback)(CPDF_Stream *pStream, FX_
LPVOID pUserData); | 39 typedef IFX_FileStream* (*FPDF_LPFCloneStreamCallback)(CPDF_Stream *pStream, FX_
LPVOID pUserData); |
| 38 class CPDF_Object | 40 class CPDF_Object |
| 39 { | 41 { |
| 40 public: | 42 public: |
| 41 | 43 |
| 42 int GetType() const | 44 int GetType() const |
| 43 { | 45 { |
| 44 return m_Type; | 46 return m_Type; |
| 45 } | 47 } |
| 46 | 48 |
| (...skipping 655 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 702 | 704 |
| 703 CPDF_IndirectObjects* m_pObjList; | 705 CPDF_IndirectObjects* m_pObjList; |
| 704 | 706 |
| 705 FX_DWORD m_RefObjNum; | 707 FX_DWORD m_RefObjNum; |
| 706 friend class CPDF_Object; | 708 friend class CPDF_Object; |
| 707 }; | 709 }; |
| 708 class CPDF_IndirectObjects | 710 class CPDF_IndirectObjects |
| 709 { | 711 { |
| 710 public: | 712 public: |
| 711 | 713 |
| 712 CPDF_IndirectObjects(IPDF_DocParser* pParser); | 714 CPDF_IndirectObjects(CPDF_Parser* pParser); |
| 713 | 715 |
| 714 ~CPDF_IndirectObjects(); | 716 ~CPDF_IndirectObjects(); |
| 715 | 717 |
| 716 CPDF_Object* GetIndirectObject(FX_DWORD objnum, struc
t PARSE_CONTEXT* pContext = NULL); | 718 CPDF_Object* GetIndirectObject(FX_DWORD objnum, struc
t PARSE_CONTEXT* pContext = NULL); |
| 717 | 719 |
| 718 int GetIndirectType(FX_DWORD objnum)
; | 720 int GetIndirectType(FX_DWORD objnum)
; |
| 719 | 721 |
| 720 FX_DWORD AddIndirectObject(CPDF_Object* pObj); | 722 FX_DWORD AddIndirectObject(CPDF_Object* pObj); |
| 721 | 723 |
| 722 void ReleaseIndirectObject(FX_DWORD o
bjnum); | 724 void ReleaseIndirectObject(FX_DWORD o
bjnum); |
| 723 | 725 |
| 724 void InsertIndirectObject(FX_DWORD ob
jnum, CPDF_Object* pObj); | 726 void InsertIndirectObject(FX_DWORD ob
jnum, CPDF_Object* pObj); |
| 725 | 727 |
| 726 FX_DWORD GetLastObjNum() const; | 728 FX_DWORD GetLastObjNum() const; |
| 727 | 729 |
| 728 FX_POSITION GetStartPosition() const | 730 FX_POSITION GetStartPosition() const |
| 729 { | 731 { |
| 730 return m_IndirectObjs.GetStartPosition(); | 732 return m_IndirectObjs.GetStartPosition(); |
| 731 } | 733 } |
| 732 | 734 |
| 733 void GetNextAssoc(FX_POSITION& rPos,
FX_DWORD& objnum, CPDF_Object*& pObject) const | 735 void GetNextAssoc(FX_POSITION& rPos,
FX_DWORD& objnum, CPDF_Object*& pObject) const |
| 734 { | 736 { |
| 735 m_IndirectObjs.GetNextAssoc(rPos, (void*&)objnum, (void*&)pObject); | 737 m_IndirectObjs.GetNextAssoc(rPos, (void*&)objnum, (void*&)pObject); |
| 736 } | 738 } |
| 737 protected: | 739 protected: |
| 738 | 740 |
| 739 CFX_MapPtrToPtr m_IndirectObjs; | 741 CFX_MapPtrToPtr m_IndirectObjs; |
| 740 | 742 |
| 741 IPDF_DocParser*» » » m_pParser; | 743 CPDF_Parser*» » » m_pParser; |
| 742 | 744 |
| 743 FX_DWORD m_LastObjNum; | 745 FX_DWORD m_LastObjNum; |
| 744 }; | 746 }; |
| 745 | 747 |
| 746 #endif // CORE_INCLUDE_FPDFAPI_FPDF_OBJECTS_H_ | 748 #endif // CORE_INCLUDE_FPDFAPI_FPDF_OBJECTS_H_ |
| OLD | NEW |