6#ifndef IFW_CORE_UTILS_PARAMETER_SET_HPP_
7#define IFW_CORE_UTILS_PARAMETER_SET_HPP_
29 static std::string
ToString(std::vector<ifw::core::utils::param::Parameter>& par_list);
35 void Store(
const std::string& par_name,
36 const std::string& value,
37 const std::string& comment =
"");
40 std::string
GetValue(
const std::string& par_name,
41 const bool exception =
false)
const;
47 const bool exception =
false)
const {
51 if (
HasPar(name, tmpPar)) {
55 throw std::runtime_error(
"Undefined parameter name: " + name);
67 bool HasPar(
const std::string& par_name)
const;
70 bool HasPar(
const std::string& par_name,
74 bool HasPar(
const std::string& par_name,
75 std::string& value)
const;
79 bool HasPar(
const std::string& par_name,
84 if (
HasPar(par_name, tmpPar)) {
93 uint32_t
Scan(
const std::string& filter_reg_exp,
94 std::vector<ifw::core::utils::param::Parameter>& matches)
const;
97 std::string
ToString(
const std::string& filter_reg_exp =
"")
const;
100 std::vector<std::string>
ParNames()
const;
103 const std::map<std::string, ifw::core::utils::param::Parameter>&
GetParameterMap()
const;
113 std::map<std::string, ifw::core::utils::param::Parameter>
m_par_map;
Class to handle a set of parameters.
Definition parameterSet.hpp:18
bool HasPar(const std::string &par_name) const
Returns true if parameter is defined.
Definition parameterSet.cpp:62
ParameterSet()
Definition parameterSet.cpp:15
void _Copy(const ParameterSet &source)
Definition parameterSet.cpp:159
void Merge(const ParameterSet &source_set)
Merge the parameters of the source into this instance.
Definition parameterSet.cpp:169
ParameterSet & operator=(const ParameterSet &source)
Assignment operator.
Definition parameterSet.cpp:29
bool GetValue(const std::string &name, TYPE &value, const bool exception=false) const
Return value for the referenced parameter as its native data type.
Definition parameterSet.hpp:45
void Store(const std::string &par_name, const std::string &value, const std::string &comment="")
Store a parameter name, value and possibly comment in the object.
Definition parameterSet.cpp:50
std::string GetValue(const std::string &par_name, const bool exception=false) const
Return value for the referenced parameter as a string.
Definition parameterSet.cpp:102
const ifw::core::utils::param::Parameter & GetPar(const std::string &par_name) const
Get reference to parameter object, referenced by its name.
Definition parameterSet.cpp:93
uint32_t Scan(const std::string &filter_reg_exp, std::vector< ifw::core::utils::param::Parameter > &matches) const
Scans through the parameter object namespace and creates list of matching parameters.
Definition parameterSet.cpp:114
~ParameterSet()
Definition parameterSet.cpp:24
bool HasPar(const std::string &par_name, TYPE &value) const
Return true if parameter defined, sets the value as the native value.
Definition parameterSet.hpp:79
ParameterSet & Clear()
Clear the object.
Definition parameterSet.cpp:44
const std::map< std::string, ifw::core::utils::param::Parameter > & GetParameterMap() const
Return reference to the internal map with the names/parameter objects.
Definition parameterSet.cpp:164
std::vector< std::string > ParNames() const
Returns list of parameter names.
Definition parameterSet.cpp:35
std::map< std::string, ifw::core::utils::param::Parameter > m_par_map
Definition parameterSet.hpp:113
static std::string ToString(std::vector< ifw::core::utils::param::Parameter > &par_list)
Create an ASCII print out of the parameters in the list.
Class to handle information for one parameter.
Definition parameter.hpp:24
const std::string & GetValue() const
Get parameter value as a string.
Definition parameter.cpp:139
log4cplus::Logger & Logger()
Definition tools.cpp:19
Definition parameter.hpp:19