OPALX (Object Oriented Parallel Accelerator Library for Exascal) MINIorX
OPALX
MonitorStatisticsWriter Class Reference

#include <MonitorStatisticsWriter.h>

Inheritance diagram for MonitorStatisticsWriter:
Collaboration diagram for MonitorStatisticsWriter:

Public Types

typedef std::pair< std::string, std::string > desc_t
typedef std::tuple< std::string, std::string, std::string > param_t
typedef std::pair< std::string, size_t > data_t
typedef std::tuple< std::string, std::string, std::string, std::string > cols_t

Public Member Functions

 MonitorStatisticsWriter (const std::string &fname, bool restart)
void addRow (const SetStatistics &set)
virtual void write (const PartBunch_t *)
void rewindLines (size_t numberOfLines)
 delete the last 'numberOfLines' lines of the file 'fileName'
void replaceVersionString ()
double getLastValue (const std::string &column)
bool exists () const

Protected Member Functions

void addDescription (const std::string &text, const std::string &content)
template<typename T>
void addParameter (const std::string &name, const std::string &type, const std::string &desc, const T &value)
void addDefaultParameters ()
void addColumn (const std::string &name, const std::string &type, const std::string &unit, const std::string &desc)
void addInfo (const std::string &mode, const size_t &no_row_counts)
void writeRow ()
void open ()
void close ()
void writeHeader ()
 Write SDDS header.
template<typename T>
std::string toString (const T &val)
bool hasColumns () const

Protected Attributes

std::string fname_m
std::ios_base::openmode mode_m
 First write to the statistics output file.
SDDSColumnSet columns_m

Private Member Functions

void fillHeader ()
void writeDescription ()
void writeParameters ()
void writeColumns ()
void writeInfo ()

Private Attributes

std::ofstream os_m
std::string indent_m
desc_t desc_m
std::queue< param_tparams_m
std::queue< std::string > paramValues_m
data_t info_m

Static Private Attributes

static constexpr unsigned int precision_m = 15

Detailed Description

Definition at line 25 of file MonitorStatisticsWriter.h.

Member Typedef Documentation

◆ cols_t

typedef std::tuple<std::string, std::string, std::string, std::string> SDDSWriter::cols_t
inherited

Definition at line 50 of file SDDSWriter.h.

◆ data_t

typedef std::pair<std::string, size_t> SDDSWriter::data_t
inherited

Definition at line 47 of file SDDSWriter.h.

◆ desc_t

typedef std::pair<std::string, std::string> SDDSWriter::desc_t
inherited

Definition at line 41 of file SDDSWriter.h.

◆ param_t

typedef std::tuple<std::string, std::string, std::string> SDDSWriter::param_t
inherited

Definition at line 44 of file SDDSWriter.h.

Constructor & Destructor Documentation

◆ MonitorStatisticsWriter()

MonitorStatisticsWriter::MonitorStatisticsWriter ( const std::string & fname,
bool restart )

Definition at line 24 of file MonitorStatisticsWriter.cpp.

References SDDSWriter::SDDSWriter().

Here is the call graph for this function:

Member Function Documentation

◆ addColumn()

void SDDSWriter::addColumn ( const std::string & name,
const std::string & type,
const std::string & unit,
const std::string & desc )
protectedinherited

◆ addDefaultParameters()

void SDDSWriter::addDefaultParameters ( )
protectedinherited

Definition at line 199 of file SDDSWriter.cpp.

References addParameter(), Util::getGitRevision(), OpalData::getInstance(), OPAL_PROJECT_NAME, and OPAL_PROJECT_VERSION.

Referenced by ElementPositionWriter::fillHeader(), LBalWriter::fillHeader(), MonitorStatisticsWriter::fillHeader(), StatWriter::fillHeader(), and MemoryProfiler::header().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ addDescription()

void SDDSWriter::addDescription ( const std::string & text,
const std::string & content )
inlineprotectedinherited

Definition at line 142 of file SDDSWriter.h.

References desc_m.

Referenced by ElementPositionWriter::fillHeader(), LBalWriter::fillHeader(), MonitorStatisticsWriter::fillHeader(), StatWriter::fillHeader(), and MemoryProfiler::header().

Here is the caller graph for this function:

◆ addInfo()

void SDDSWriter::addInfo ( const std::string & mode,
const size_t & no_row_counts )
inlineprotectedinherited

Definition at line 155 of file SDDSWriter.h.

References info_m.

Referenced by ElementPositionWriter::fillHeader(), LBalWriter::fillHeader(), MonitorStatisticsWriter::fillHeader(), StatWriter::fillHeader(), and MemoryProfiler::header().

Here is the caller graph for this function:

◆ addParameter()

template<typename T>
void SDDSWriter::addParameter ( const std::string & name,
const std::string & type,
const std::string & desc,
const T & value )
protectedinherited

Definition at line 147 of file SDDSWriter.h.

References params_m, and paramValues_m.

Referenced by addDefaultParameters().

Here is the caller graph for this function:

◆ addRow()

void MonitorStatisticsWriter::addRow ( const SetStatistics & set)

Definition at line 77 of file MonitorStatisticsWriter.cpp.

References SDDSWriter::close(), SDDSWriter::columns_m, SetStatistics::eps_norm_m, fillHeader(), SetStatistics::nTotal_m, SDDSWriter::open(), SetStatistics::outputName_m, SetStatistics::prms_m, SetStatistics::RefPartP_m, SetStatistics::RefPartR_m, SetStatistics::refTime_m, SetStatistics::rmax_m, SetStatistics::rmean_m, SetStatistics::rmin_m, SetStatistics::rprms_m, SetStatistics::rrms_m, Units::s2ns, SetStatistics::spos_m, SetStatistics::tmean_m, SetStatistics::trms_m, SDDSWriter::writeHeader(), and SDDSWriter::writeRow().

Referenced by Monitor::writeStatistics().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ close()

void SDDSWriter::close ( )
protectedinherited

Definition at line 137 of file SDDSWriter.cpp.

References os_m.

Referenced by ElementPositionWriter::addRow(), MonitorStatisticsWriter::addRow(), LBalWriter::write(), MemoryProfiler::write(), and StatWriter::write().

Here is the caller graph for this function:

◆ exists()

bool SDDSWriter::exists ( ) const
inlineinherited

Definition at line 138 of file SDDSWriter.h.

References fname_m.

◆ fillHeader()

void MonitorStatisticsWriter::fillHeader ( )
private

Definition at line 29 of file MonitorStatisticsWriter.cpp.

References SDDSWriter::addDefaultParameters(), SDDSWriter::addDescription(), SDDSWriter::addInfo(), SDDSWriter::columns_m, and SDDSWriter::hasColumns().

Referenced by addRow().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getLastValue()

double SDDSWriter::getLastValue ( const std::string & column)
inherited

Definition at line 120 of file SDDSWriter.cpp.

References fname_m, SDDS::SDDSParser::getValue(), and SDDS::SDDSParser::run().

Here is the call graph for this function:

◆ hasColumns()

bool SDDSWriter::hasColumns ( ) const
inlineprotectedinherited

Definition at line 171 of file SDDSWriter.h.

References columns_m.

Referenced by ElementPositionWriter::fillHeader(), LBalWriter::fillHeader(), MonitorStatisticsWriter::fillHeader(), StatWriter::fillHeader(), and MemoryProfiler::header().

Here is the caller graph for this function:

◆ open()

void SDDSWriter::open ( )
protectedinherited

Definition at line 128 of file SDDSWriter.cpp.

References fname_m, mode_m, os_m, and precision_m.

Referenced by ElementPositionWriter::addRow(), MonitorStatisticsWriter::addRow(), LBalWriter::write(), MemoryProfiler::write(), and StatWriter::write().

Here is the caller graph for this function:

◆ replaceVersionString()

void SDDSWriter::replaceVersionString ( )
inherited

Definition at line 76 of file SDDSWriter.cpp.

References fname_m, Util::getGitRevision(), SDDS::SDDSParser::getParameterValue(), OPAL_PROJECT_NAME, OPAL_PROJECT_VERSION, and SDDS::SDDSParser::run().

Here is the call graph for this function:

◆ rewindLines()

void SDDSWriter::rewindLines ( size_t numberOfLines)
inherited

delete the last 'numberOfLines' lines of the file 'fileName'

Definition at line 45 of file SDDSWriter.cpp.

References fname_m.

◆ toString()

template<typename T>
std::string SDDSWriter::toString ( const T & val)
protectedinherited

Definition at line 164 of file SDDSWriter.h.

References precision_m.

Referenced by MemoryProfiler::write().

Here is the caller graph for this function:

◆ write()

virtual void SDDSWriter::write ( const PartBunch_t * )
inlinevirtualinherited

Reimplemented in LBalWriter, MemoryProfiler, and StatWriter.

Definition at line 56 of file SDDSWriter.h.

◆ writeColumns()

void SDDSWriter::writeColumns ( )
privateinherited

Definition at line 180 of file SDDSWriter.cpp.

References columns_m, indent_m, and os_m.

Referenced by writeHeader().

Here is the caller graph for this function:

◆ writeDescription()

void SDDSWriter::writeDescription ( )
privateinherited

Definition at line 158 of file SDDSWriter.cpp.

References desc_m, indent_m, and os_m.

Referenced by writeHeader().

Here is the caller graph for this function:

◆ writeHeader()

void SDDSWriter::writeHeader ( )
protectedinherited

Write SDDS header.

Writes the appropriate SDDS format header information, The SDDS tools can be used for plotting data.

Definition at line 143 of file SDDSWriter.cpp.

References mode_m, writeColumns(), writeDescription(), writeInfo(), and writeParameters().

Referenced by ElementPositionWriter::addRow(), MonitorStatisticsWriter::addRow(), LBalWriter::write(), MemoryProfiler::write(), and StatWriter::write().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ writeInfo()

void SDDSWriter::writeInfo ( )
privateinherited

Definition at line 184 of file SDDSWriter.cpp.

References indent_m, info_m, os_m, and paramValues_m.

Referenced by writeHeader().

Here is the caller graph for this function:

◆ writeParameters()

void SDDSWriter::writeParameters ( )
privateinherited

Definition at line 166 of file SDDSWriter.cpp.

References indent_m, os_m, and params_m.

Referenced by writeHeader().

Here is the caller graph for this function:

◆ writeRow()

void SDDSWriter::writeRow ( )
inlineprotectedinherited

Definition at line 159 of file SDDSWriter.h.

References columns_m, and os_m.

Referenced by ElementPositionWriter::addRow(), MonitorStatisticsWriter::addRow(), LBalWriter::write(), MemoryProfiler::write(), and StatWriter::write().

Here is the caller graph for this function:

Member Data Documentation

◆ columns_m

◆ desc_m

desc_t SDDSWriter::desc_m
privateinherited

Definition at line 130 of file SDDSWriter.h.

Referenced by addDescription(), and writeDescription().

◆ fname_m

std::string SDDSWriter::fname_m
protectedinherited

◆ indent_m

std::string SDDSWriter::indent_m
privateinherited

Definition at line 128 of file SDDSWriter.h.

Referenced by SDDSWriter(), writeColumns(), writeDescription(), writeInfo(), and writeParameters().

◆ info_m

data_t SDDSWriter::info_m
privateinherited

Definition at line 133 of file SDDSWriter.h.

Referenced by addInfo(), and writeInfo().

◆ mode_m

std::ios_base::openmode SDDSWriter::mode_m
protectedinherited

First write to the statistics output file.

Initially set to std::ios::out so that SDDS format header information is written to file during the first write call to the statistics output file. Variable is then reset to std::ios::app so that header information is only written once.

Definition at line 108 of file SDDSWriter.h.

Referenced by LBalWriter::fillHeader(), StatWriter::fillHeader(), MemoryProfiler::header(), open(), SDDSWriter(), and writeHeader().

◆ os_m

std::ofstream SDDSWriter::os_m
privateinherited

◆ params_m

std::queue<param_t> SDDSWriter::params_m
privateinherited

Definition at line 131 of file SDDSWriter.h.

Referenced by addParameter(), and writeParameters().

◆ paramValues_m

std::queue<std::string> SDDSWriter::paramValues_m
privateinherited

Definition at line 132 of file SDDSWriter.h.

Referenced by addParameter(), and writeInfo().

◆ precision_m

unsigned int SDDSWriter::precision_m = 15
staticconstexprprivateinherited

Definition at line 135 of file SDDSWriter.h.

Referenced by open(), and toString().


The documentation for this class was generated from the following files: