ls1-MarDyn
ls1-MarDyn molecular dynamics code
MPI_IOReader.h
1/*
2 * MPI_IOReader.h
3 *
4 * Created on: Aug 19, 2014
5 * Author: andal
6 */
7
8#ifndef MPI_IOREADER_H_
9#define MPI_IOREADER_H_
10
11#include "io/InputBase.h"
12#include <string>
13#include <fstream>
14
15class MPI_IOReader : public InputBase {
16
17public:
18
20
22
30 void setPhaseSpaceFile(std::string filename);
31
34
69 void readPhaseSpaceHeader(Domain* domain, double timestep);
70
86 unsigned long readPhaseSpace(ParticleContainer* particleContainer, Domain* domain, DomainDecompBase* domainDecomp);
87
88 void handle_error(int i);
89
90private:
91
92 std::string _moleculeFormat;
93 std::string _phaseSpaceFile;
94 std::string _phaseSpaceHeaderFile;
95 std::ifstream _phaseSpaceFileStream;
96 std::fstream _phaseSpaceHeaderFileStream;
97
98};
99
100#endif /* MPI_IOREADER_H_ */
handle boundary region and multiple processes
Definition: DomainDecompBase.h:51
This class is used to read in the phasespace and to handle macroscopic values.
Definition: Domain.h:47
interface for any kind of input class
Definition: InputBase.h:18
Definition: MPI_IOReader.h:15
void readPhaseSpaceHeader(Domain *domain, double timestep)
reads in header of the input file (including component description)
Definition: MPI_IOReader.cpp:55
unsigned long readPhaseSpace(ParticleContainer *particleContainer, Domain *domain, DomainDecompBase *domainDecomp)
reads in the data of all molecules
Definition: MPI_IOReader.cpp:282
void setPhaseSpaceFile(std::string filename)
gets a filename and opens an ifstream associated with the given file
Definition: MPI_IOReader.cpp:47
void setPhaseSpaceHeaderFile(std::string filename)
For this class, header and data are in the same file, so there is no separate header file.
Definition: MPI_IOReader.cpp:51
This Interface is used to get access to particles and pairs of particles.
Definition: ParticleContainer.h:69
::xsd::cxx::tree::string< char, simple_type > string
C++ type corresponding to the string XML Schema built-in type.
Definition: vtk-punstructured.h:270