OPAL (Object Oriented Parallel Accelerator Library)  2024.1
OPAL
LBalWriter.h
Go to the documentation of this file.
1 //
2 // Class LBalWriter
3 // This class writes a SDDS file with MPI load balancing information.
4 //
5 // Copyright (c) 2019, Matthias Frey, Paul Scherrer Institut, Villigen PSI, Switzerland
6 // Christof Metzger-Kraus, Open Sourcerer
7 // All rights reserved
8 //
9 // This file is part of OPAL.
10 //
11 // OPAL is free software: you can redistribute it and/or modify
12 // it under the terms of the GNU General Public License as published by
13 // the Free Software Foundation, either version 3 of the License, or
14 // (at your option) any later version.
15 //
16 // You should have received a copy of the GNU General Public License
17 // along with OPAL. If not, see <https://www.gnu.org/licenses/>.
18 //
19 #ifndef OPAL_LBAL_WRITER_H
20 #define OPAL_LBAL_WRITER_H
21 
22 #include "Structure/SDDSWriter.h"
23 
24 class LBalWriter: public SDDSWriter {
25 
26 public:
27  LBalWriter(const std::string& fname, bool restart);
28 
29  void write(PartBunchBase<double, 3>* beam) override;
30 
31 private:
32 #ifdef ENABLE_AMR
34 #else
35  void fillHeader();
36 #endif
37 };
38 
39 #endif
LBalWriter(const std::string &fname, bool restart)
Definition: LBalWriter.cpp:32
void fillHeader(PartBunchBase< double, 3 > *beam)
Definition: LBalWriter.cpp:38
void write(PartBunchBase< double, 3 > *beam) override
Definition: LBalWriter.cpp:94