WarpX
FlushFormatOpenPMD.H
Go to the documentation of this file.
1 #ifndef WARPX_FLUSHFORMATOPENPMD_H_
2 #define WARPX_FLUSHFORMATOPENPMD_H_
3 
5 #include "FlushFormat.H"
6 
8 
9 #include <AMReX_Geometry.H>
10 #include <AMReX_Vector.H>
11 
12 #include <AMReX_BaseFwd.H>
13 
14 #include <memory>
15 #include <string>
16 
22 class FlushFormatOpenPMD final : public FlushFormat
23 {
24 public:
25 
27  explicit FlushFormatOpenPMD (const std::string& diag_name);
28 
30  void WriteToFile (
31  const amrex::Vector<std::string>& varnames,
34  amrex::Vector<int> iteration, double time,
35  const amrex::Vector<ParticleDiag>& particle_diags, int output_levels,
36  std::string prefix, int file_min_digits,
37  bool plot_raw_fields,
38  bool plot_raw_fields_guards,
39  bool use_pinned_pc = false,
40  bool isBTD = false, int snapshotID = -1,
41  int bufferID = 1, int numBuffers = 1,
42  const amrex::Geometry& full_BTD_snapshot = amrex::Geometry(),
43  bool isLastBTDFlush = false ) const override;
44 
45  ~FlushFormatOpenPMD () override = default;
46 
51 
52 private:
54  std::unique_ptr< WarpXOpenPMDPlot > m_OpenPMDPlotWriter;
55 };
56 
57 #endif // WARPX_FLUSHFORMATOPENPMD_H_
Definition: FlushFormat.H:10
This class aims at dumping diags data to disk using the openPMD standard. In particular,...
Definition: FlushFormatOpenPMD.H:23
FlushFormatOpenPMD(FlushFormatOpenPMD const &)=delete
FlushFormatOpenPMD(FlushFormatOpenPMD &&)=default
FlushFormatOpenPMD(const std::string &diag_name)
Definition: FlushFormatOpenPMD.cpp:23
std::unique_ptr< WarpXOpenPMDPlot > m_OpenPMDPlotWriter
Definition: FlushFormatOpenPMD.H:54
void WriteToFile(const amrex::Vector< std::string > &varnames, const amrex::Vector< amrex::MultiFab > &mf, amrex::Vector< amrex::Geometry > &geom, amrex::Vector< int > iteration, double time, const amrex::Vector< ParticleDiag > &particle_diags, int output_levels, std::string prefix, int file_min_digits, bool plot_raw_fields, bool plot_raw_fields_guards, bool use_pinned_pc=false, bool isBTD=false, int snapshotID=-1, int bufferID=1, int numBuffers=1, const amrex::Geometry &full_BTD_snapshot=amrex::Geometry(), bool isLastBTDFlush=false) const override
Definition: FlushFormatOpenPMD.cpp:118
~FlushFormatOpenPMD() override=default
FlushFormatOpenPMD & operator=(FlushFormatOpenPMD const &)=delete