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 XFA_FXFA_PARSER_CXFA_SIMPLE_PARSER_H_ | 7 #ifndef XFA_FXFA_PARSER_CXFA_SIMPLE_PARSER_H_ |
8 #define XFA_FXFA_PARSER_CXFA_SIMPLE_PARSER_H_ | 8 #define XFA_FXFA_PARSER_CXFA_SIMPLE_PARSER_H_ |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
11 | 11 |
12 #include "xfa/fde/xml/fde_xml_imp.h" | 12 #include "xfa/fde/xml/fde_xml_imp.h" |
13 #include "xfa/fxfa/fxfa_basic.h" | 13 #include "xfa/fxfa/fxfa_basic.h" |
14 | 14 |
15 class CXFA_Document; | 15 class CXFA_Document; |
16 class CXFA_Node; | 16 class CXFA_Node; |
17 class CXFA_XMLParser; | 17 class CXFA_XMLParser; |
18 class IFX_SeekableReadStream; | 18 class IFX_SeekableReadStream; |
19 class IFX_Pause; | 19 class IFX_Pause; |
20 class IFGAS_Stream; | 20 class IFGAS_Stream; |
21 | 21 |
22 class CXFA_SimpleParser { | 22 class CXFA_SimpleParser { |
23 public: | 23 public: |
24 CXFA_SimpleParser(CXFA_Document* pFactory, bool bDocumentParser); | 24 CXFA_SimpleParser(CXFA_Document* pFactory, bool bDocumentParser); |
25 ~CXFA_SimpleParser(); | 25 ~CXFA_SimpleParser(); |
26 | 26 |
27 int32_t StartParse(IFX_SeekableReadStream* pStream, XFA_XDPPACKET ePacketID); | 27 int32_t StartParse(const CFX_RetainPtr<IFX_SeekableReadStream>& pStream, |
| 28 XFA_XDPPACKET ePacketID); |
28 int32_t DoParse(IFX_Pause* pPause); | 29 int32_t DoParse(IFX_Pause* pPause); |
29 int32_t ParseXMLData(const CFX_WideString& wsXML, | 30 int32_t ParseXMLData(const CFX_WideString& wsXML, |
30 CFDE_XMLNode*& pXMLNode, | 31 CFDE_XMLNode*& pXMLNode, |
31 IFX_Pause* pPause); | 32 IFX_Pause* pPause); |
32 void ConstructXFANode(CXFA_Node* pXFANode, CFDE_XMLNode* pXMLNode); | 33 void ConstructXFANode(CXFA_Node* pXFANode, CFDE_XMLNode* pXMLNode); |
33 CXFA_Node* GetRootNode() const; | 34 CXFA_Node* GetRootNode() const; |
34 CFDE_XMLDoc* GetXMLDoc() const; | 35 CFDE_XMLDoc* GetXMLDoc() const; |
35 void CloseParser(); | 36 void CloseParser(); |
36 | 37 |
37 void SetFactory(CXFA_Document* pFactory); | 38 void SetFactory(CXFA_Document* pFactory); |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
71 void ParseDataGroup(CXFA_Node* pXFANode, | 72 void ParseDataGroup(CXFA_Node* pXFANode, |
72 CFDE_XMLNode* pXMLNode, | 73 CFDE_XMLNode* pXMLNode, |
73 XFA_XDPPACKET ePacketID); | 74 XFA_XDPPACKET ePacketID); |
74 void ParseInstruction(CXFA_Node* pXFANode, | 75 void ParseInstruction(CXFA_Node* pXFANode, |
75 CFDE_XMLInstruction* pXMLInstruction, | 76 CFDE_XMLInstruction* pXMLInstruction, |
76 XFA_XDPPACKET ePacketID); | 77 XFA_XDPPACKET ePacketID); |
77 | 78 |
78 CXFA_XMLParser* m_pXMLParser; | 79 CXFA_XMLParser* m_pXMLParser; |
79 std::unique_ptr<CFDE_XMLDoc> m_pXMLDoc; | 80 std::unique_ptr<CFDE_XMLDoc> m_pXMLDoc; |
80 std::unique_ptr<IFGAS_Stream, ReleaseDeleter<IFGAS_Stream>> m_pStream; | 81 std::unique_ptr<IFGAS_Stream, ReleaseDeleter<IFGAS_Stream>> m_pStream; |
81 IFX_SeekableReadStream* m_pFileRead; | 82 CFX_RetainPtr<IFX_SeekableReadStream> m_pFileRead; |
82 CXFA_Document* m_pFactory; | 83 CXFA_Document* m_pFactory; |
83 CXFA_Node* m_pRootNode; | 84 CXFA_Node* m_pRootNode; |
84 XFA_XDPPACKET m_ePacketID; | 85 XFA_XDPPACKET m_ePacketID; |
85 bool m_bDocumentParser; | 86 bool m_bDocumentParser; |
86 }; | 87 }; |
87 | 88 |
88 #endif // XFA_FXFA_PARSER_CXFA_SIMPLE_PARSER_H_ | 89 #endif // XFA_FXFA_PARSER_CXFA_SIMPLE_PARSER_H_ |
OLD | NEW |