1 // Copyright 2016 PDFium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 6 7 #ifndef XFA_FXFA_PARSER_CXFA_DATAEXPORTER_H_ 8 #define XFA_FXFA_PARSER_CXFA_DATAEXPORTER_H_ 9 10 #include "core/fxcrt/fx_string.h" 11 #include "core/fxcrt/retain_ptr.h" 12 13 class CXFA_Document; 14 class CXFA_Node; 15 class IFX_SeekableStream; 16 class CFX_SeekableStreamProxy; 17 18 class CXFA_DataExporter { 19 public: 20 explicit CXFA_DataExporter(CXFA_Document* pDocument); 21 ~CXFA_DataExporter(); 22 23 bool Export(const RetainPtr<IFX_SeekableStream>& pWrite); 24 bool Export(const RetainPtr<IFX_SeekableStream>& pWrite, 25 CXFA_Node* pNode, 26 uint32_t dwFlag, 27 const char* pChecksum); 28 29 private: 30 bool Export(const RetainPtr<CFX_SeekableStreamProxy>& pStream, 31 CXFA_Node* pNode, 32 uint32_t dwFlag, 33 const char* pChecksum); 34 35 UnownedPtr<CXFA_Document> const m_pDocument; 36 }; 37 38 #endif // XFA_FXFA_PARSER_CXFA_DATAEXPORTER_H_ 39