File failed to load: https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/extensions/ams.js
 |
ALMaSS
1.2 (after EcoStack, March 2024)
The Animal, Landscape and Man Simulation System
|
Go to the documentation of this file.
30 #ifndef CONFIGURATOR_H
31 #define CONFIGURATOR_H
52 #define CFG_MAX_LINE_LENGTH 512
115 CfgInt(
const std::string& a_key,
CfgSecureLevel a_level,
int a_defval,
int a_min,
int a_max,
bool a_definconf);
117 void set(
int a_newval);
143 void set(
double a_newval);
180 CfgStr(
const std::string& a_key,
CfgSecureLevel a_level,
const std::string& a_defval,
bool a_definconf );
183 void set( std::string a_newval ) {
m_string = std::move(a_newval); }
199 CfgArray_Int(
const std::string& a_name,
CfgSecureLevel a_level,
int a_numofvals,
const std::vector<int>& a_defval,
bool a_definconf);
237 CfgFunction( std::string a_name,
CfgSecureLevel a_level,
int a_numofvals,
const double a_defval, std::string a_function_name );
244 void set( std::vector<double> a_newval, std::string
fun_name );
254 std::map<std::string, unsigned int>
CfgI;
255 std::vector<std::shared_ptr<CfgBase>>
CfgVals;
266 const std::string a_key,
277 void SetCfgInt(std::string a_key, std::string a_val);
278 void SetCfgFloat(std::string a_key, std::string a_val);
279 void SetCfgBool(std::string a_key, std::string a_val);
280 void SetCfgStr(std::string a_key, std::string a_val);
317 bool Register(std::shared_ptr<CfgBase> a_cfgval,
const std::string &a_key);
318 void StoreFromConfig(
const std::string &name, std::string type, std::string value);
323 std::vector<int>
ParseArrayInt(
const std::string& a_stringtoparse);
330 extern std::shared_ptr <Configurator>
g_cfg;
332 #endif // CONFIGURATOR_H
Definition: Configurator.h:64
void SetCfgArrayDouble(std::string a_key, std::string a_val)
Definition: Configurator.cpp:807
void SetCfgBool(std::string a_key, std::string a_val)
Definition: Configurator.cpp:884
static const std::string CfgTypeStrings[]
Definition: Configurator.cpp:71
CfgType gettype() override
Definition: Configurator.h:144
void set(std::string a_newval)
Definition: Configurator.h:183
std::string fun_name() const
Definition: Configurator.h:243
Definition: MapErrorMsg.h:37
Definition: Configurator.h:60
Definition: Configurator.h:65
CfgType
Definition: Configurator.h:58
CfgFunction(std::string a_name, CfgSecureLevel a_level, int a_numofvals, const double a_defval, std::string a_function_name, std::function< void()> funtocall)
std::vector< double > m_doublearray
Definition: Configurator.h:212
CfgType gettype() override
Definition: Configurator.h:118
CfgFloat(const std::string a_key, CfgSecureLevel a_level, double a_defval, double a_min, double a_max, bool a_definconf)
Definition: Configurator.cpp:176
double getmax() const
Definition: Configurator.h:119
std::vector< int > m_intarray
Definition: Configurator.h:195
virtual CfgType gettype()
Definition: Configurator.h:203
std::string m_string
Definition: Configurator.h:176
CfgInt(const std::string &a_key, CfgSecureLevel a_level, int a_defval)
Definition: Configurator.cpp:113
Configurator(void)
Definition: Configurator.cpp:286
std::shared_ptr< Configurator > CreateConfigurator()
Definition: Configurator.cpp:1413
#define CFG_MAX_LINE_LENGTH
Definition: Configurator.h:52
char * value() const
Definition: Configurator.h:182
double m_min
Definition: Configurator.h:133
void WarnAddInfo(MapErrorState a_level, std::string a_add1, std::string a_add2)
Definition: MapErrorMsg.cpp:160
CfgSecureLevel
Definition: Configurator.h:69
Definition: Configurator.h:71
String configurator entry class.
Definition: Configurator.h:173
void SetCfgStr(std::string a_key, std::string a_val)
Definition: Configurator.cpp:967
int get_array_size()
Definition: Configurator.h:204
std::shared_ptr< Configurator > CreateConfigurator()
Definition: Configurator.cpp:1413
void SetCfgFunction(std::string a_key, std::string a_val)
Definition: Configurator.cpp:849
CfgSecureLevel m_level
Definition: Configurator.h:82
std::shared_ptr< Configurator > g_cfg
Definition: Configurator.cpp:56
double value() const
Definition: Configurator.h:142
int value(unsigned a_index)
Definition: Configurator.h:205
bool get_rangetest() const
Definition: Configurator.h:96
~Configurator(void)
Definition: Configurator.cpp:293
Definition: Configurator.h:63
Definition: Configurator.h:62
CfgBase(const std::string &a_key, CfgSecureLevel a_level)
Definition: Configurator.cpp:84
void SetCfgInt(std::string a_key, std::string a_val)
Definition: Configurator.cpp:659
std::string ExtractString(std::string a_line) const
Definition: Configurator.cpp:395
double getmax() const
Definition: Configurator.h:145
static CfgBool l_cfg_public_warn_on_set("CFG_PUBLIC_WARN_ON_SET", CFG_CUSTOM, true)
int m_max
Definition: Configurator.h:108
bool value() const
Definition: Configurator.h:164
std::string getkey()
Definition: Configurator.h:91
A class to provide standard parameter entry facilities.
Definition: Configurator.h:251
void set(std::vector< int > a_newval)
Definition: Configurator.h:202
void ShowIdType(unsigned int a_i)
Definition: Configurator.cpp:620
double m_max
Definition: Configurator.h:134
CfgBool(const std::string &, CfgSecureLevel a_level, bool a_defval)
Definition: Configurator.cpp:199
bool ParseCfgLine(std::string a_line)
Definition: Configurator.cpp:476
virtual CfgType gettype()
Definition: Configurator.h:245
void set(double a_newval)
Definition: Configurator.cpp:184
bool SetCfgGatekeeper(const std::string a_method, const std::string a_key, CfgSecureLevel a_level)
Definition: Configurator.cpp:632
std::vector< std::shared_ptr< CfgBase > > CfgVals
Definition: Configurator.h:255
std::map< std::string, unsigned int > CfgI
Definition: Configurator.h:254
int array_size
Definition: Configurator.h:194
void SetCfgArrayDoubleCsv(std::string a_key, std::string a_val)
Definition: Configurator.cpp:771
CfgArray_Double(const std::string &a_name, CfgSecureLevel a_level, int a_numofvals, const std::vector< double > &a_defval)
Definition: Configurator.cpp:258
bool ReadSymbols(const char *a_cfgfile)
Definition: Configurator.cpp:365
double m_float
Definition: Configurator.h:132
void DumpPublicSymbols(const char *a_dumpfile, CfgSecureLevel a_level)
Definition: Configurator.cpp:996
Bool configurator entry class.
Definition: Configurator.h:155
CfgType gettype() override
Definition: Configurator.h:166
Definition: MapErrorMsg.h:36
bool m_definedinconfig
Definition: Configurator.h:84
CfgStr(const std::string &a_key, CfgSecureLevel a_level, const std::string &a_defval)
Definition: Configurator.cpp:216
virtual CfgType gettype()
Definition: Configurator.h:92
void set(bool a_newval)
Definition: Configurator.h:165
void Warn(MapErrorState a_level, std::string a_msg1, std::string a_msg2)
Definition: MapErrorMsg.cpp:69
Definition: Configurator.h:208
virtual CfgType gettype(void)
Definition: Configurator.h:184
int m_min
Definition: Configurator.h:109
int array_size
Definition: Configurator.h:211
virtual CfgType gettype()
Definition: Configurator.h:221
std::string m_key
Definition: Configurator.h:81
void FloatToDouble(double &, float)
bool m_rangetest
Definition: Configurator.h:83
int get_array_size()
Definition: Configurator.h:222
std::string function_name
Definition: Configurator.h:234
Definition: Configurator.h:61
CfgArray_Int(const std::string &a_name, CfgSecureLevel a_level, int a_numofvals, const std::vector< int > &a_defval)
Definition: Configurator.cpp:232
bool Register(CfgBase *a_cfgval, const std::string &a_key)
Definition: Configurator.cpp:299
int value() const
Definition: Configurator.h:116
double getmin() const
Definition: Configurator.h:120
std::vector< double > value() const
Definition: Configurator.h:219
void set(std::vector< double > a_newval)
Definition: Configurator.h:220
double value(unsigned a_index)
Definition: Configurator.h:223
virtual ~CfgBase()
Definition: Configurator.cpp:106
std::function< void()> value() const
Definition: Configurator.h:242
double getmin() const
Definition: Configurator.h:146
bool CheckBounds(std::shared_ptr< CfgBase > a_cfgval, CfgBase *b_cfgval)
Definition: Configurator.cpp:1274
std::shared_ptr< Configurator > g_cfg
Definition: Configurator.cpp:56
MapErrorMsg * g_msg
Definition: MapErrorMsg.cpp:41
Definition: Configurator.h:59
std::function< void()> funtocall
Definition: Configurator.h:233
Integer configurator entry class.
Definition: Configurator.h:102
Base class for a configurator entry.
Definition: Configurator.h:79
static CfgBool l_cfg_public_exit_on_set("CFG_PUBLIC_EXIT_ON_SET", CFG_CUSTOM, true)
Double configurator entry class.
Definition: Configurator.h:126
int m_int
Definition: Configurator.h:107
void set(std::vector< double > a_newval, std::string fun_name)
std::vector< int > value() const
Definition: Configurator.h:201
void DumpSymbols(const char *a_dumpfile, CfgSecureLevel a_level)
Definition: Configurator.cpp:1014
bool m_bool
Definition: Configurator.h:158
bool get_definedinconfig() const
Definition: Configurator.h:95
void SetCfgFloat(std::string a_key, std::string a_val)
Definition: Configurator.cpp:926
Definition: Configurator.h:70
void SetCfgArrayIntCsv(std::string a_key, std::string a_val)
Definition: Configurator.cpp:736
std::vector< double > ParseArrayDouble(const std::string &a_stringtoparse)
Definition: Configurator.cpp:1402
void StoreFromConfig(const std::string &name, std::string type, std::string value)
Definition: Configurator.cpp:1143
static const std::string CfgSecureStrings[]
Definition: Configurator.cpp:64
bool ParseCommentLine(std::string a_line)
Reads each line and parses it.
Definition: Configurator.cpp:464
unsigned int m_lineno
Definition: Configurator.h:258
Array_Int configurator entry class.
Definition: Configurator.h:189
void set_definedinconfig(bool flag)
Definition: Configurator.h:94
CfgSecureLevel getlevel(void)
Definition: Configurator.h:93
void DumpAllSymbolsAndExit(const char *a_dumpfile)
Definition: Configurator.cpp:1007
Definition: Configurator.h:72
void set(int a_newval)
Definition: Configurator.cpp:144
std::vector< int > ParseArrayInt(const std::string &a_stringtoparse)
Definition: Configurator.cpp:1392
void SetCfgArrayInt(std::string a_key, std::string a_val)
Definition: Configurator.cpp:695
Function configurator entry class The function pointers are all of type <void ()>....
Definition: Configurator.h:231
Definition: Configurator.h:66