BornAgain
1.19.0
Simulate and fit neutron and x-ray scattering at grazing incidence
MultiOption.cpp
Go to the documentation of this file.
1
// ************************************************************************************************
2
//
3
// BornAgain: simulate and fit reflection and scattering
4
//
5
//! @file Fit/Tools/MultiOption.cpp
6
//! @brief Implements class MultiOption
7
//!
8
//! @homepage http://www.bornagainproject.org
9
//! @license GNU General Public License v3 or higher (see COPYING)
10
//! @copyright Forschungszentrum Jülich GmbH 2018
11
//! @authors Scientific Computing Group at MLZ (see CITATION, AUTHORS)
12
//
13
// ************************************************************************************************
14
15
#include "
Fit/Tools/MultiOption.h
"
16
#include <boost/lexical_cast.hpp>
17
18
MultiOption::MultiOption
(
const
std::string&
name
) : m_name(
name
) {}
19
20
std::string
MultiOption::name
()
const
21
{
22
return
m_name
;
23
}
24
25
std::string
MultiOption::description
()
const
26
{
27
return
m_description
;
28
}
29
30
void
MultiOption::setDescription
(
const
std::string& description)
31
{
32
m_description
=
description
;
33
}
34
35
MultiOption::variant_t
&
MultiOption::value
()
36
{
37
return
m_value
;
38
}
39
40
MultiOption::variant_t
&
MultiOption::defaultValue
()
41
{
42
return
m_default_value
;
43
}
44
45
//! Sets the value of option from string.
46
//! TODO find more elegant way (without if/else and boost::lexical_cast
47
48
void
MultiOption::setFromString
(
const
std::string& value)
49
{
50
if
(
m_value
.which() == 0)
51
m_value
= boost::lexical_cast<int>(
value
);
52
53
else
if
(
m_value
.which() == 1)
54
m_value
= boost::lexical_cast<double>(
value
);
55
56
else
57
m_value
=
value
;
58
}
MultiOption.h
Declares class MultiOption.
MultiOption::MultiOption
MultiOption(const std::string &name="")
Definition:
MultiOption.cpp:18
MultiOption::setFromString
void setFromString(const std::string &value)
Sets the value of option from string.
Definition:
MultiOption.cpp:48
MultiOption::defaultValue
variant_t & defaultValue()
Definition:
MultiOption.cpp:40
MultiOption::m_value
variant_t m_value
Definition:
MultiOption.h:58
MultiOption::setDescription
void setDescription(const std::string &description)
Definition:
MultiOption.cpp:30
MultiOption::m_default_value
variant_t m_default_value
Definition:
MultiOption.h:59
MultiOption::name
std::string name() const
Definition:
MultiOption.cpp:20
MultiOption::m_name
std::string m_name
Definition:
MultiOption.h:56
MultiOption::value
variant_t & value()
Definition:
MultiOption.cpp:35
MultiOption::description
std::string description() const
Definition:
MultiOption.cpp:25
MultiOption::variant_t
boost::variant< int, double, std::string > variant_t
Definition:
MultiOption.h:32
MultiOption::m_description
std::string m_description
Definition:
MultiOption.h:57
RealSpace::Particles::name
QString const & name(EShape k)
Definition:
particles.cpp:21
Fit
Tools
MultiOption.cpp
Generated by
1.9.1