|
BornAgain
1.18.0
Simulate and fit neutron and x-ray scattering at grazing incidence
|
Public Types | |
| using | variant_t = boost::variant< int, double, std::string > |
Public Member Functions | |
| MultiOption (const std::string &name="") | |
| template<typename T > | |
| MultiOption (const std::string &name, const T &t, const std::string &descripion="") | |
| std::string | name () const |
| std::string | description () const |
| void | setDescription (const std::string &description) |
| variant_t & | value () |
| variant_t & | defaultValue () |
| template<typename T > | |
| T | get () const |
| template<typename T > | |
| T | getDefault () const |
| void | setFromString (const std::string &value) |
Private Attributes | |
| std::string | m_name |
| std::string | m_description |
| variant_t | m_value |
| variant_t | m_default_value |
Stores a single option for minimization algorithm.
Int, double, string values are available. Relies on boost::variant, will be switched to std::variant in C++-17.
Definition at line 25 of file MultiOption.h.
| using MultiOption::variant_t = boost::variant<int, double, std::string> |
Definition at line 28 of file MultiOption.h.
|
explicit |
Definition at line 18 of file MultiOption.cpp.
|
explicit |
Definition at line 59 of file MultiOption.h.
References m_default_value, m_description, m_name, m_value, and name().
| std::string MultiOption::name | ( | ) | const |
| std::string MultiOption::description | ( | ) | const |
Definition at line 25 of file MultiOption.cpp.
References m_description.
Referenced by setDescription().
| void MultiOption::setDescription | ( | const std::string & | description | ) |
Definition at line 30 of file MultiOption.cpp.
References description(), and m_description.
| MultiOption::variant_t & MultiOption::value | ( | ) |
| MultiOption::variant_t & MultiOption::defaultValue | ( | ) |
Definition at line 40 of file MultiOption.cpp.
References m_default_value.
| T MultiOption::get |
| T MultiOption::getDefault |
Returns the option's default value (i.e. used during construction)
Definition at line 72 of file MultiOption.h.
References m_default_value.
| void MultiOption::setFromString | ( | const std::string & | value | ) |
Sets the value of option from string.
TODO find more elegant way (without if/else and boost::lexical_cast
Definition at line 48 of file MultiOption.cpp.
References m_value, and value().
|
private |
Definition at line 52 of file MultiOption.h.
Referenced by MultiOption(), and name().
|
private |
Definition at line 53 of file MultiOption.h.
Referenced by description(), MultiOption(), and setDescription().
|
private |
Definition at line 54 of file MultiOption.h.
Referenced by get(), MultiOption(), setFromString(), and value().
|
private |
Definition at line 55 of file MultiOption.h.
Referenced by defaultValue(), getDefault(), and MultiOption().