Go to the documentation of this file.
9 #ifndef FCF_DEVMGR_COMMON_DEVICECONFIG_HPP_
10 #define FCF_DEVMGR_COMMON_DEVICECONFIG_HPP_
14 #include <unordered_map>
17 #include <yaml-cpp/yaml.h>
19 #include <utils/bat/logger.hpp>
20 #include <utils/bat/config.hpp>
21 #include <fcf/common/iComm.hpp>
26 #include <config-ng/ciiConfigApi.hpp>
87 const std::unordered_map<short, std::string>
StateMap = {
135 DeviceConfig(
const std::string& filename,
const std::string& name);
195 virtual void GetConfig(fcf::common::VectorVariant& params)
const;
248 std::string
GetId()
const;
273 const string name =
"[" +
m_name +
"]";
285 std::string
GetNodeId(
const std::string& attrib)
const;
297 std::string
GetProcId(
const std::string& attrib)
const;
319 virtual void GetConfigList(utils::bat::DbVector& cfg_list, std::string prefix)
const;
379 void MergeConfig(
const elt::configng::CiiConfigDocument &doc,
bool check=
true);
397 fcf::common::Variant& value)
const;
422 log4cplus::Logger m_logger;
431 #endif //FCF_DEVMGR_COMMON_DEVICECONFIG_HPP_
int m_lcs_namespace
Definition: deviceConfig.hpp:416
virtual void GetConfigList(utils::bat::DbVector &cfg_list, std::string prefix) const
Get configuration list.
Definition: deviceConfig.cpp:341
constexpr auto CI_DESCRIPTION
Definition: deviceConfig.hpp:47
bool m_ignored
Definition: deviceConfig.hpp:410
std::string GetOverview() const
Definition: deviceConfig.cpp:304
bool GetVariantValue(const elt::configng::CiiConfigInstanceNode node, fcf::common::Variant &value) const
Obtain the variant value with the correct type.
Definition: deviceConfig.cpp:454
std::string GetName() const noexcept
Definition: deviceConfig.hpp:266
constexpr auto FITS_PARAM_NAME
Definition: deviceConfig.hpp:115
std::string GetIdentifier() const
Definition: deviceConfig.cpp:227
std::string GetNodeId(const std::string &attrib) const
Get node id.
Definition: deviceConfig.cpp:316
std::string m_filename
filename of device configuration file
Definition: deviceConfig.hpp:404
constexpr int STATE_OPERATIONAL
Definition: deviceConfig.hpp:81
constexpr auto CI_WIDGET_HEIGHT
Definition: deviceConfig.hpp:54
std::string GetFitsPrefix() const
Get Fits Prefix.
Definition: deviceConfig.cpp:277
constexpr auto CI_TYPE
Definition: deviceConfig.hpp:38
std::string GetObjId() const
Get object id.
Definition: deviceConfig.cpp:334
constexpr auto DB_CONTROLLER_PREFIX
Definition: deviceConfig.hpp:71
constexpr auto CAT_RPC
Definition: deviceConfig.hpp:77
void MergeConfig(const elt::configng::CiiConfigDocument &doc, bool check=true)
Merges a configuration file.
Definition: deviceConfig.cpp:133
virtual bool GetIgnored() const
Get ignored flag.
Definition: deviceConfig.cpp:265
std::unique_ptr< elt::configng::CiiConfigDocument > m_config_doc
Internal configuration document object.
Definition: deviceConfig.hpp:419
constexpr auto CI_STAT_ERROR_CODE
Definition: deviceConfig.hpp:69
constexpr auto CI_ADDRESS
Definition: deviceConfig.hpp:36
constexpr auto CI_CFG_FILE
Definition: deviceConfig.hpp:48
virtual bool GetSimulated() const
Get simulated flag.
Definition: deviceConfig.cpp:256
std::string m_identifier
Address space identifier.
Definition: deviceConfig.hpp:406
constexpr auto SUBSTATE_OP_DISABLING_STR
Definition: deviceConfig.hpp:111
std::string const
Definition: test{{cookiecutter.device_name|capitalize()}}.cpp:162
virtual std::string GetMapFile() const
Get name of the device mapping file.
Definition: deviceConfig.cpp:446
constexpr auto STATE_NOT_OPERATIONAL_STR
Definition: deviceConfig.hpp:83
const std::unordered_map< std::string, short > StateStrMap
Definition: deviceConfig.hpp:92
virtual void SetSimulateFlag(const bool flag)
Set simulation flag.
Definition: deviceConfig.cpp:435
constexpr auto CI_STAT_STATE
Definition: deviceConfig.hpp:66
constexpr auto CI_STAT_LOCAL
Definition: deviceConfig.hpp:68
constexpr auto CI_WIDGET
Definition: deviceConfig.hpp:50
constexpr auto CI_IGNORED
Definition: deviceConfig.hpp:35
constexpr auto CI_FITS_PREFIX
Definition: deviceConfig.hpp:43
constexpr auto CI_NAMESPACE
Definition: deviceConfig.hpp:41
std::string GetSimAddress() const
Definition: deviceConfig.cpp:249
std::string m_sim_address
Definition: deviceConfig.hpp:413
constexpr auto STATE_OPERATIONAL_STR
Definition: deviceConfig.hpp:84
std::string m_address
Definition: deviceConfig.hpp:412
constexpr auto CI_WIDGET_CLASS
Definition: deviceConfig.hpp:52
constexpr auto RPC_STOP
Definition: deviceConfig.hpp:61
constexpr auto CI_ALIAS
Definition: deviceConfig.hpp:44
constexpr auto RPC_DISABLE
Definition: deviceConfig.hpp:60
void CheckConfig() const
Validates the document configuration.
Definition: deviceConfig.cpp:158
std::string m_fits_prefix
Definition: deviceConfig.hpp:408
constexpr int SUBSTATE_OP_DISABLING
Definition: deviceConfig.hpp:108
constexpr auto CI_WIDGET_WIDGET
Definition: deviceConfig.hpp:53
constexpr auto FITS_PARAM_STAT
Definition: deviceConfig.hpp:116
constexpr auto SUBSTATE_NOTREADY_STR
Definition: deviceConfig.hpp:103
Definition: actionMgr.cpp:29
configSet class header file.
std::string GetProcId(const std::string &attrib) const
Get procedure id.
Definition: deviceConfig.cpp:328
constexpr auto SUBSTATE_INITIALISING_STR
Definition: deviceConfig.hpp:104
constexpr auto CI_STAT_STATU
Definition: deviceConfig.hpp:67
constexpr auto FITS_PARAM_DEVSIM
Definition: deviceConfig.hpp:117
constexpr auto FITS_PARAM_DEVIGN
Definition: deviceConfig.hpp:118
std::string m_name
device identifier
Definition: deviceConfig.hpp:405
Device Configuration class.
Definition: iDeviceConfig.hpp:32
constexpr int SUBSTATE_NOTREADY
Definition: deviceConfig.hpp:98
std::string GetLogName() const noexcept
Definition: deviceConfig.hpp:272
std::string GetCfgAsString() const
GetCfgAsString.
Definition: deviceConfig.cpp:420
virtual void GetConfig(fcf::common::VectorVariant ¶ms) const
Obtain the list of configuration parameters.
Definition: deviceConfig.cpp:194
std::string m_type
Device type.
Definition: deviceConfig.hpp:407
constexpr auto CI_CTRL_CONFIG
Definition: deviceConfig.hpp:49
constexpr auto FITS_PARAM_ID
Definition: deviceConfig.hpp:114
constexpr int SUBSTATE_INITIALISING
Definition: deviceConfig.hpp:100
const std::unordered_map< short, std::string > StateMap
Definition: deviceConfig.hpp:87
std::string GetType() const
Definition: deviceConfig.cpp:270
std::string GetDescription() const
Definition: deviceConfig.cpp:310
constexpr auto CI_NAME
Definition: deviceConfig.hpp:40
constexpr auto RPC_ENABLE
Definition: deviceConfig.hpp:59
constexpr int SUBSTATE_OP_ERROR
Definition: deviceConfig.hpp:109
DeviceConfig(const std::string &filename, const std::string &name)
DeviceConfig constructor.
Definition: deviceConfig.cpp:37
IDeviceConfig class header file.
constexpr auto SUBSTATE_OP_ERROR_STR
Definition: deviceConfig.hpp:112
constexpr auto CAT_CTRL
Definition: deviceConfig.hpp:76
constexpr auto CAT_STAT
Definition: deviceConfig.hpp:74
constexpr auto CI_MAP_FILE
Definition: deviceConfig.hpp:42
int GetNamespace() const
Definition: deviceConfig.cpp:284
constexpr auto CI_STAT_SUBSTATE
Definition: deviceConfig.hpp:65
constexpr int SUBSTATE_ERROR
Definition: deviceConfig.hpp:101
constexpr auto CI_PREFIX
Definition: deviceConfig.hpp:39
bool Init()
Initialises a device.
Definition: deviceConfig.cpp:122
constexpr auto CI_STAT_ERROR_STR
Definition: deviceConfig.hpp:70
constexpr auto RPC_INIT
Definition: deviceConfig.hpp:58
std::string GetId() const
Definition: deviceConfig.cpp:298
Device Configuration class.
Definition: deviceConfig.hpp:127
constexpr auto CI_IDENTIFIER
Definition: deviceConfig.hpp:33
virtual ~DeviceConfig()
DeviceConfig destructor.
Definition: deviceConfig.cpp:62
virtual void SetIgnoreFlag(const bool flag)
Set ignore flag.
Definition: deviceConfig.cpp:441
constexpr auto CI_ID
Definition: deviceConfig.hpp:45
void InitFromString(std::string config)
Init the internal configuration from a string.
Definition: deviceConfig.cpp:66
constexpr auto SUBSTATE_READY_STR
Definition: deviceConfig.hpp:105
constexpr int SUBSTATE_READY
Definition: deviceConfig.hpp:99
constexpr auto CI_WIDGET_MODULE
Definition: deviceConfig.hpp:51
std::string m_map_file
Definition: deviceConfig.hpp:414
std::string GetPrefix() const
Definition: deviceConfig.cpp:235
constexpr auto CI_OVERVIEW
Definition: deviceConfig.hpp:46
constexpr auto STATE_UNAVAILABLE_STR
Definition: deviceConfig.hpp:85
std::string m_lcs_prefix
Definition: deviceConfig.hpp:411
std::string m_alias
Definition: deviceConfig.hpp:415
std::string GetAlias() const
Definition: deviceConfig.cpp:292
constexpr auto CAT_CFG
Definition: deviceConfig.hpp:75
constexpr auto SUBSTATE_ERROR_STR
Definition: deviceConfig.hpp:106
constexpr auto CI_SIM_ADDRESS
Definition: deviceConfig.hpp:37
bool m_simulated
Definition: deviceConfig.hpp:409
std::string GetCfgFile() const
GetCfgFile.
Definition: deviceConfig.cpp:416
std::string GetAddress() const
Definition: deviceConfig.cpp:242
constexpr auto CI_SIMULATED
Definition: deviceConfig.hpp:34
constexpr int STATE_NOT_OPERATIONAL
Definition: deviceConfig.hpp:80
void InitFromFile(const std::string &filename)
Init the internal configuration from a given file.
Definition: deviceConfig.cpp:88
constexpr auto RPC_RESET
Definition: deviceConfig.hpp:62