flexiblesusy is hosted by Hepforge, IPPP Durham
FlexibleSUSY
settings.hpp
Go to the documentation of this file.
1// ====================================================================
2// This file is part of FlexibleSUSY.
3//
4// FlexibleSUSY is free software: you can redistribute it and/or modify
5// it under the terms of the GNU General Public License as published
6// by the Free Software Foundation, either version 3 of the License,
7// or (at your option) any later version.
8//
9// FlexibleSUSY is distributed in the hope that it will be useful, but
10// WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12// General Public License for more details.
13//
14// You should have received a copy of the GNU General Public License
15// along with FlexibleSUSY. If not, see
16// <http://www.gnu.org/licenses/>.
17// ====================================================================
18
19#ifndef LTOLCONVERSION_SETTINGS_H
20#define LTOLCONVERSION_SETTINGS_H
21
22#include <array>
23#include <Eigen/Core>
24
25namespace flexiblesusy {
26
28public:
30 enum Settings : int {
42 };
43
44 using Settings_t = Eigen::Array<double,NUMBER_OF_OPTIONS,1>;
45
47
48 double get(Settings) const;
49 Settings_t get() const;
50 std::string get_description(Settings) const;
51 void set(Settings, double);
52 void set(const Settings_t&);
53 void reset();
54
55private:
56 std::array<double, NUMBER_OF_OPTIONS> values;
57};
58
59std::ostream& operator<<(std::ostream&, const LToLConversion_settings&);
60
61} // namespace flexiblesusy
62
63#endif
Settings_t get() const
get all settings
Definition: settings.cpp:76
void reset()
resets all settings to defaults
Definition: settings.cpp:117
std::string get_description(Settings) const
get description
Definition: settings.cpp:82
std::array< double, NUMBER_OF_OPTIONS > values
settings
Definition: settings.hpp:56
void set(Settings, double)
set value of setting
Definition: settings.cpp:87
Eigen::Array< double, NUMBER_OF_OPTIONS, 1 > Settings_t
Definition: settings.hpp:44
Settings
LToLConversion settings.
Definition: settings.hpp:30
@ NUMBER_OF_OPTIONS
number of possible options
Definition: settings.hpp:41
std::ostream & operator<<(std::ostream &ostr, const Dynamic_array_view< ElementType > &av)
Definition: array_view.hpp:143