|
OPALX (Object Oriented Parallel Accelerator Library for Exascal) master (dc2a29eed580)
OPALX
|
#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 std::variant (only numeric types) to a value of type T. | |
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 | |
| std::map< std::string, int > | columnNameToID_m |
| mapping from column name to ID in columns_m | |
| SDDS::file | sddsData_m |
Definition at line 42 of file SDDSParser.h.
| SDDS::SDDSParser::SDDSParser | ( | ) |
Definition at line 23 of file SDDSParser.cpp.
| SDDS::SDDSParser::SDDSParser | ( | const std::string & | input | ) |
Definition at line 25 of file SDDSParser.cpp.
|
inlinestaticprivate |
Definition at line 46 of file SDDSParser.h.
References fixCaseSensitivity().

|
staticprivate |
Definition at line 137 of file SDDSParser.cpp.
Referenced by fixCaseSensitivity(), getParameterValue(), and getValue().
|
inline |
Convert value from std::variant (only numeric types) to a value of type T.
Definition at line 202 of file SDDSParser.h.
References SDDS::ast::DOUBLE, SDDS::ast::FLOAT, SDDS::ast::LONG, and SDDS::ast::SHORT.
| SDDS::ast::columnData_t SDDS::SDDSParser::getColumnData | ( | const std::string & | columnName | ) |
Definition at line 119 of file SDDSParser.cpp.
|
private |
Definition at line 125 of file SDDSParser.cpp.
Referenced by getColumnType(), getInterpolatedValue(), and getValue().
|
inline |
Definition at line 69 of file SDDSParser.h.
References getColumnIndex(), SDDS::file::sddsColumns_m, and sddsData_m.
Referenced by getInterpolatedValue(), and getValue().

|
inline |
Definition at line 234 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 172 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 110 of file SDDSParser.h.
References getColumnIndex(), getColumnType(), SDDS::file::sddsColumns_m, and sddsData_m.
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 184 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 83 of file SDDSParser.h.
References fixCaseSensitivity(), getColumnIndex(), getColumnType(), SDDS::file::sddsColumns_m, and sddsData_m.
Referenced by SDDSWriter::getLastValue().

|
private |
Definition at line 97 of file SDDSParser.cpp.
| SDDS::file SDDS::SDDSParser::run | ( | ) |
Definition at line 29 of file SDDSParser.cpp.
References SDDS::file::clear(), and SDDS::parser::SimpleParser::parse().
Referenced by SDDSWriter::getLastValue(), and SDDSWriter::replaceVersionString().

| void SDDS::SDDSParser::setInput | ( | const std::string & | input | ) |
Definition at line 27 of file SDDSParser.cpp.
|
private |
mapping from column name to ID in columns_m
Definition at line 56 of file SDDSParser.h.
|
private |
mapping from parameter name to offset in params_m
Definition at line 54 of file SDDSParser.h.
Referenced by getParameterValue().
|
private |
Definition at line 58 of file SDDSParser.h.
Referenced by getColumnType(), getData(), getInterpolatedValue(), getParameterValue(), and getValue().
|
private |
Definition at line 51 of file SDDSParser.h.