OPAL (Object Oriented Parallel Accelerator Library)
2021.1.99
OPAL
|
#include <SDDSParser.h>
Public Member Functions | |
SDDSParser () | |
SDDSParser (const std::string &input) | |
void | setInput (const std::string &input) |
file | run () |
file | getData () |
ast::columnData_t | getColumnData (const std::string &columnName) |
ast::datatype | getColumnType (const std::string &col_name) |
template<typename T > | |
void | getValue (int t, std::string column_name, T &nval) |
template<typename T > | |
void | getInterpolatedValue (std::string ref_name, double ref_val, std::string col_name, T &nval) |
template<typename T > | |
void | getInterpolatedValue (double spos, std::string col_name, T &nval) |
template<typename T > | |
void | getParameterValue (std::string parameter_name, T &nval) |
template<typename T > | |
T | getBoostVariantValue (const ast::variant_t &val, int datatype) const |
Convert value from boost variant (only numeric types) to a value of type T. More... | |
Private Member Functions | |
std::string | readFile () |
int | getColumnIndex (std::string col_name) const |
Static Private Member Functions | |
static void | fixCaseSensitivity (std::string &for_string) |
static std::string | fixCaseSensitivity (const std::string &for_string) |
Private Attributes | |
std::string | sddsFileName_m |
std::map< std::string, int > | paramNameToID_m |
mapping from parameter name to offset in params_m More... | |
std::map< std::string, int > | columnNameToID_m |
mapping from column name to ID in columns_m More... | |
SDDS::file | sddsData_m |
Definition at line 44 of file SDDSParser.h.
SDDS::SDDSParser::SDDSParser | ( | ) |
Definition at line 22 of file SDDSParser.cpp.
SDDS::SDDSParser::SDDSParser | ( | const std::string & | input | ) |
Definition at line 26 of file SDDSParser.cpp.
|
inlinestaticprivate |
Definition at line 48 of file SDDSParser.h.
References fixCaseSensitivity().
|
staticprivate |
Definition at line 136 of file SDDSParser.cpp.
Referenced by fixCaseSensitivity(), getParameterValue(), and getValue().
|
inline |
Convert value from boost variant (only numeric types) to a value of type T.
Definition at line 203 of file SDDSParser.h.
References SDDS::ast::DOUBLE, SDDS::ast::FLOAT, SDDS::ast::LONG, SDDS::ast::SHORT, and Attrib::Legacy::Distribution::T.
Referenced by OpalSimulation::getData().
SDDS::ast::columnData_t SDDS::SDDSParser::getColumnData | ( | const std::string & | columnName | ) |
Definition at line 116 of file SDDSParser.cpp.
Referenced by OpalSimulation::getData().
|
private |
Definition at line 123 of file SDDSParser.cpp.
Referenced by getColumnType(), getInterpolatedValue(), and getValue().
|
inline |
Definition at line 71 of file SDDSParser.h.
References getColumnIndex(), SDDS::file::sddsColumns_m, and sddsData_m.
Referenced by OpalSimulation::getData(), getInterpolatedValue(), and getValue().
|
inline |
Definition at line 237 of file SDDSParser.h.
References sddsData_m.
|
inline |
Converts the string value of a parameter at a position spos to a value of type T.
spos | interpolate value at spos |
col_name | parameter name |
nval | store result of type T in nval |
Definition at line 174 of file SDDSParser.h.
References getInterpolatedValue().
|
inline |
Converts the string value of a parameter to a value of type T.
ref_name | reference quantity (e.g. spos) |
ref_val | interpolate value of reference quantity (e.g. spos) |
col_name | parameter name |
nval | store result of type T in nval |
Definition at line 114 of file SDDSParser.h.
References Physics::e, getColumnIndex(), getColumnType(), SDDS::file::sddsColumns_m, sddsData_m, and Attrib::Legacy::Distribution::T.
Referenced by getInterpolatedValue().
|
inline |
Converts the string value of a parameter to a value of type T.
parameter_name | parameter name |
nval | store result of type T in nval |
Definition at line 186 of file SDDSParser.h.
References fixCaseSensitivity(), paramNameToID_m, sddsData_m, and SDDS::file::sddsParameters_m.
Referenced by SDDSWriter::replaceVersionString().
|
inline |
Converts the string value of a parameter at timestep t to a value of type T.
t | timestep (beginning at 1, -1 means last) |
column_name | parameter name |
nval | store result of type T in nval |
Definition at line 85 of file SDDSParser.h.
References fixCaseSensitivity(), getColumnIndex(), getColumnType(), SDDS::file::sddsColumns_m, and sddsData_m.
Referenced by SDDSWriter::getLastValue().
|
private |
Definition at line 94 of file SDDSParser.cpp.
References end().
SDDS::file SDDS::SDDSParser::run | ( | ) |
Definition at line 34 of file SDDSParser.cpp.
References name, SDDS::column::name_m, SDDS::parameter::name_m, and readFile().
Referenced by OpalSimulation::getData(), SDDSWriter::getLastValue(), SDDSReader::parseFile(), and SDDSWriter::replaceVersionString().
void SDDS::SDDSParser::setInput | ( | const std::string & | input | ) |
Definition at line 30 of file SDDSParser.cpp.
|
private |
mapping from column name to ID in columns_m
Definition at line 58 of file SDDSParser.h.
|
private |
mapping from parameter name to offset in params_m
Definition at line 56 of file SDDSParser.h.
Referenced by getParameterValue().
|
private |
Definition at line 60 of file SDDSParser.h.
Referenced by getColumnType(), getData(), getInterpolatedValue(), getParameterValue(), and getValue().
|
private |
Definition at line 53 of file SDDSParser.h.