Home | History | Annotate | Download | only in parser
      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