28 #ifndef _OPAL_DATA_SINK_H
29 #define _OPAL_DATA_SINK_H
42 template <
class T,
unsigned Dim>
69 double refPr,
double refPt,
double refPz,
70 double refR,
double refTheta,
double refZ,
71 double azimuth,
double elevation,
bool local)
const;
74 const double& azimuth = -1)
const;
104 size_t numberOfFieldEmittedParticles,
128 void init(
bool restart =
false,
153 std::stringstream ss;
154 ss << std::setw(setw) << std::setfill(
'0') << number;
158 #endif // DataSink_H_
DataSink & operator=(const DataSink &)=delete
void initMultiBunchDump(short numBunch)
std::unique_ptr< SDDSWriter > sddsWriter_t
std::vector< std::pair< std::string, unsigned int > > losses_t
statWriter_t statWriter_m
DataSink()
Default constructor.
IpplTimings::TimerRef StatMarkerTimer_m
Timer to track statistics write time.
void storeCavityInformation()
Write cavity information from H5 file.
Timing::TimerRef TimerRef
void setMultiBunchInitialPathLengh(MultiBunchHandler *mbhandler_p)
void writeImpactStatistics(const PartBunchBase< double, 3 > *beam, long long int &step, size_t &impact, double &sey_num, size_t numberOfFieldEmittedParticles, bool nEmissionMode, std::string fn)
void writeMultiBunchStatistics(PartBunchBase< double, 3 > *beam, MultiBunchHandler *mbhandler)
unsigned int lossWrCounter_m
needed to create index for vtk file
std::vector< mbWriter_t > mbWriter_m
std::vector< sddsWriter_t > sddsWriter_m
static std::string convertToString(int number, int setw=5)
void dumpH5(PartBunchBase< double, 3 > *beam, Vector_t FDext[]) const
std::unique_ptr< H5Writer > h5Writer_t
void writeGeomToVtk(BoundaryGeometry &bg, const std::string &fn)
void init(bool restart=false, H5PartWrapper *h5wrapper=nullptr, short numBunch=1)
void dumpSDDS(PartBunchBase< double, 3 > *beam, Vector_t FDext[], const double &azimuth=-1) const
std::unique_ptr< MultiBunchDump > mbWriter_t
void changeH5Wrapper(H5PartWrapper *h5wrapper)
StatWriter::losses_t losses_t
const bool isMultiBunch_m
std::unique_ptr< StatWriter > statWriter_t