OPAL (Object Oriented Parallel Accelerator Library)
2021.1.99
OPAL
|
#include <SDDSWriter.h>
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 | |
SDDSWriter (const std::string &fname, bool restart) | |
virtual | ~SDDSWriter () |
virtual void | write (const PartBunchBase< double, 3 > *) |
void | rewindLines (size_t numberOfLines) |
delete the last 'numberOfLines' lines of the file 'fileName' More... | |
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. More... | |
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. More... | |
SDDSColumnSet | columns_m |
Private Member Functions | |
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_t > | params_m |
std::queue< std::string > | paramValues_m |
data_t | info_m |
Static Private Attributes | |
static constexpr unsigned int | precision_m = 15 |
Definition at line 41 of file SDDSWriter.h.
typedef std::tuple<std::string, std::string, std::string, std::string> SDDSWriter::cols_t |
Definition at line 59 of file SDDSWriter.h.
typedef std::pair<std::string, size_t> SDDSWriter::data_t |
Definition at line 53 of file SDDSWriter.h.
typedef std::pair<std::string, std::string> SDDSWriter::desc_t |
Definition at line 45 of file SDDSWriter.h.
typedef std::tuple<std::string, std::string, std::string> SDDSWriter::param_t |
Definition at line 50 of file SDDSWriter.h.
SDDSWriter::SDDSWriter | ( | const std::string & | fname, |
bool | restart | ||
) |
Definition at line 32 of file SDDSWriter.cpp.
References endl(), fname_m, Hypervolume::fs, INFOMSG, and mode_m.
|
inlinevirtual |
Definition at line 64 of file SDDSWriter.h.
|
protected |
|
protected |
Definition at line 211 of file SDDSWriter.cpp.
References addParameter(), Util::getGitRevision(), OpalData::getInstance(), IpplInfo::getNodes(), OPAL_PROJECT_NAME, and OPAL_PROJECT_VERSION.
Referenced by ElementPositionWriter::fillHeader(), MemoryWriter::fillHeader(), MonitorStatisticsWriter::fillHeader(), MultiBunchDump::fillHeader(), StatWriter::fillHeader(), GridLBalWriter::fillHeader(), LBalWriter::fillHeader(), and MemoryProfiler::header().
|
inlineprotected |
Definition at line 164 of file SDDSWriter.h.
References desc_m.
Referenced by ElementPositionWriter::fillHeader(), MemoryWriter::fillHeader(), MonitorStatisticsWriter::fillHeader(), MultiBunchDump::fillHeader(), StatWriter::fillHeader(), GridLBalWriter::fillHeader(), LBalWriter::fillHeader(), and MemoryProfiler::header().
|
inlineprotected |
Definition at line 185 of file SDDSWriter.h.
References info_m.
Referenced by ElementPositionWriter::fillHeader(), MemoryWriter::fillHeader(), MonitorStatisticsWriter::fillHeader(), MultiBunchDump::fillHeader(), StatWriter::fillHeader(), GridLBalWriter::fillHeader(), LBalWriter::fillHeader(), and MemoryProfiler::header().
|
protected |
Definition at line 172 of file SDDSWriter.h.
References name, params_m, and paramValues_m.
Referenced by addDefaultParameters().
|
protected |
Definition at line 144 of file SDDSWriter.cpp.
References IpplInfo::myNode(), and os_m.
Referenced by MonitorStatisticsWriter::addRow(), ElementPositionWriter::addRow(), MemoryProfiler::write(), MemoryWriter::write(), MultiBunchDump::write(), StatWriter::write(), GridLBalWriter::write(), and LBalWriter::write().
|
inline |
Definition at line 158 of file SDDSWriter.h.
References fname_m.
double SDDSWriter::getLastValue | ( | const std::string & | column | ) |
Definition at line 125 of file SDDSWriter.cpp.
References fname_m, SDDS::SDDSParser::getValue(), and SDDS::SDDSParser::run().
|
inlineprotected |
Definition at line 207 of file SDDSWriter.h.
References columns_m, and SDDSColumnSet::hasColumns().
Referenced by ElementPositionWriter::fillHeader(), MemoryWriter::fillHeader(), MonitorStatisticsWriter::fillHeader(), MultiBunchDump::fillHeader(), StatWriter::fillHeader(), GridLBalWriter::fillHeader(), LBalWriter::fillHeader(), and MemoryProfiler::header().
|
protected |
Definition at line 134 of file SDDSWriter.cpp.
References fname_m, mode_m, IpplInfo::myNode(), os_m, and precision_m.
Referenced by MonitorStatisticsWriter::addRow(), ElementPositionWriter::addRow(), MemoryProfiler::write(), MemoryWriter::write(), MultiBunchDump::write(), StatWriter::write(), GridLBalWriter::write(), and LBalWriter::write().
void SDDSWriter::replaceVersionString | ( | ) |
Definition at line 79 of file SDDSWriter.cpp.
References fname_m, Hypervolume::fs, Util::getGitRevision(), SDDS::SDDSParser::getParameterValue(), IpplInfo::myNode(), OPAL_PROJECT_NAME, OPAL_PROJECT_VERSION, and SDDS::SDDSParser::run().
void SDDSWriter::rewindLines | ( | size_t | numberOfLines | ) |
delete the last 'numberOfLines' lines of the file 'fileName'
Definition at line 48 of file SDDSWriter.cpp.
References fname_m, Hypervolume::fs, and IpplInfo::myNode().
|
protected |
Definition at line 198 of file SDDSWriter.h.
References precision_m.
Referenced by MemoryProfiler::write(), and GridLBalWriter::write().
|
inlinevirtual |
Reimplemented in MemoryWriter, and MemoryProfiler.
Definition at line 66 of file SDDSWriter.h.
|
private |
Definition at line 191 of file SDDSWriter.cpp.
References columns_m, indent_m, os_m, and SDDSColumnSet::writeHeader().
Referenced by writeHeader().
|
private |
Definition at line 167 of file SDDSWriter.cpp.
References desc_m, endl(), indent_m, and os_m.
Referenced by writeHeader().
|
protected |
Write SDDS header.
Writes the appropriate SDDS format header information, The SDDS tools can be used for plotting data.
Definition at line 151 of file SDDSWriter.cpp.
References mode_m, IpplInfo::myNode(), writeColumns(), writeDescription(), writeInfo(), and writeParameters().
Referenced by MonitorStatisticsWriter::addRow(), ElementPositionWriter::addRow(), MemoryProfiler::write(), MemoryWriter::write(), MultiBunchDump::write(), StatWriter::write(), GridLBalWriter::write(), and LBalWriter::write().
|
private |
Definition at line 196 of file SDDSWriter.cpp.
References endl(), indent_m, info_m, os_m, and paramValues_m.
Referenced by writeHeader().
|
private |
Definition at line 176 of file SDDSWriter.cpp.
References indent_m, os_m, and params_m.
Referenced by writeHeader().
|
inlineprotected |
Definition at line 192 of file SDDSWriter.h.
References columns_m, os_m, and SDDSColumnSet::writeRow().
Referenced by MonitorStatisticsWriter::addRow(), ElementPositionWriter::addRow(), MemoryProfiler::write(), MemoryWriter::write(), MultiBunchDump::write(), StatWriter::write(), GridLBalWriter::write(), and LBalWriter::write().
|
protected |
Definition at line 126 of file SDDSWriter.h.
Referenced by MonitorStatisticsWriter::addRow(), ElementPositionWriter::addRow(), ElementPositionWriter::fillHeader(), MemoryWriter::fillHeader(), MonitorStatisticsWriter::fillHeader(), MultiBunchDump::fillHeader(), StatWriter::fillHeader(), GridLBalWriter::fillHeader(), LBalWriter::fillHeader(), hasColumns(), MemoryProfiler::header(), MemoryProfiler::write(), MemoryWriter::write(), MultiBunchDump::write(), StatWriter::write(), GridLBalWriter::write(), LBalWriter::write(), writeColumns(), and writeRow().
|
private |
Definition at line 147 of file SDDSWriter.h.
Referenced by addDescription(), and writeDescription().
|
protected |
Definition at line 116 of file SDDSWriter.h.
Referenced by exists(), getLastValue(), open(), replaceVersionString(), rewindLines(), StatBaseWriter::rewindToSpos(), and SDDSWriter().
|
private |
Definition at line 145 of file SDDSWriter.h.
Referenced by writeColumns(), writeDescription(), writeInfo(), and writeParameters().
|
private |
Definition at line 150 of file SDDSWriter.h.
Referenced by addInfo(), and writeInfo().
|
protected |
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 124 of file SDDSWriter.h.
Referenced by MemoryWriter::fillHeader(), MultiBunchDump::fillHeader(), StatWriter::fillHeader(), GridLBalWriter::fillHeader(), LBalWriter::fillHeader(), MemoryProfiler::header(), open(), SDDSWriter(), and writeHeader().
|
private |
Definition at line 143 of file SDDSWriter.h.
Referenced by close(), open(), writeColumns(), writeDescription(), writeInfo(), writeParameters(), and writeRow().
|
private |
Definition at line 148 of file SDDSWriter.h.
Referenced by addParameter(), and writeParameters().
|
private |
Definition at line 149 of file SDDSWriter.h.
Referenced by addParameter(), and writeInfo().
|
staticconstexprprivate |
Definition at line 153 of file SDDSWriter.h.
Referenced by open(), and toString().