9 #ifndef DEVMGR_COMMON_DEVICECONFIG_HPP_
10 #define DEVMGR_COMMON_DEVICECONFIG_HPP_
14 #include <unordered_map>
17 #include <yaml-cpp/yaml.h>
19 #include <fcf/common/iComm.hpp>
20 #include <devmgr/common/iDeviceConfig.hpp>
21 #include <devmgr/common/configSet.hpp>
32 const std::string
CI_TYPE =
"type";
37 const std::string
CI_ALIAS =
"alias";
42 const std::string
RPC_INIT =
"rpcInit";
45 const std::string
RPC_STOP =
"rpcStop";
59 const std::string
CAT_CFG =
"cfg";
60 const std::string
CAT_RPC =
"rpc";
70 const std::unordered_map<short, std::string>
StateMap = {
75 const std::unordered_map<std::string, short>
StateStrMap = {
116 class DeviceConfig :
public IDeviceConfig {
199 std::string
GetNodeId(
const std::string& attrib);
211 std::string
GetProcId(
const std::string& attrib);
233 virtual void GetConfigList(std::vector<std::string>& cfg_list, std::string prefix);
287 #endif //DEVMGR_COMMON_DEVICECONFIG_HPP_
bool m_simulated
Definition: deviceConfig.hpp:274
const std::string CI_TYPE
Definition: deviceConfig.hpp:32
Definition: configSet.hpp:16
devmgr::common::ConfigSet< unsigned int > CfgUInt
Definition: deviceConfig.hpp:101
const std::unordered_map< std::string, short > StateStrMap
Definition: deviceConfig.hpp:75
virtual void SetIgnoreFlag(bool flag)
Set ignore flag.
Definition: deviceConfig.cpp:325
const short STATE_STANDBY
Definition: deviceConfig.hpp:63
const std::string RPC_STOP
Definition: deviceConfig.hpp:45
const std::string CAT_STAT
Definition: deviceConfig.hpp:58
virtual bool GetIgnored()
Get ignored flag.
Definition: deviceConfig.cpp:221
std::string m_address
Definition: deviceConfig.hpp:277
std::string GetNodeId(const std::string &attrib)
Get node id.
Definition: deviceConfig.cpp:257
DeviceConfig(const std::string &filename, const std::string &name)
DeviceConfig constructor.
Definition: deviceConfig.cpp:26
const std::unordered_map< short, std::string > StateMap
Definition: deviceConfig.hpp:70
std::string GetIdentifier()
Definition: deviceConfig.cpp:191
std::string m_fits_prefix
Definition: deviceConfig.hpp:273
std::map< int, CfgBool > MapCfgBool
Definition: deviceConfig.hpp:104
const std::string RPC_DISABLE
Definition: deviceConfig.hpp:44
const std::string CI_ALIAS
Definition: deviceConfig.hpp:37
const std::string FITS_PARAM_STAT
Definition: deviceConfig.hpp:93
const std::string CI_STAT_ERROR_CODE
Definition: deviceConfig.hpp:53
const std::string FITS_PARAM_DEVSIM
Definition: deviceConfig.hpp:94
int m_lcs_namespace
Definition: deviceConfig.hpp:281
const std::string CI_STAT_SUBSTATE
Definition: deviceConfig.hpp:49
std::string GetType()
Definition: deviceConfig.cpp:228
const std::string CI_IDENTIFIER
Definition: deviceConfig.hpp:27
const std::string CI_PREFIX
Definition: deviceConfig.hpp:33
std::string GetCfgFile()
GetCfgFile.
Definition: deviceConfig.cpp:315
std::string GetFitsPrefix()
Get Fits Prefix.
Definition: deviceConfig.cpp:234
virtual bool Init()
Initialises a device.
Definition: deviceConfig.cpp:41
std::string m_lcs_prefix
Definition: deviceConfig.hpp:276
const std::string RPC_INIT
Definition: deviceConfig.hpp:42
const std::string CI_FITS_PREFIX
Definition: deviceConfig.hpp:36
const std::string CI_STAT_ERROR_STR
Definition: deviceConfig.hpp:54
std::string GetAlias()
Definition: deviceConfig.cpp:252
std::string GetAddress()
Definition: deviceConfig.cpp:203
virtual bool GetSimulated()
Get simulated flag.
Definition: deviceConfig.cpp:215
std::string GetName()
Definition: deviceConfig.cpp:247
const std::string STATE_STANDBY_STR
Definition: deviceConfig.hpp:66
const std::string SUBSTATE_INITIALISING_STR
Definition: deviceConfig.hpp:87
const std::string CI_SIMULATED
Definition: deviceConfig.hpp:28
bool m_ignored
Definition: deviceConfig.hpp:275
const std::string STATE_OPERATIONAL_STR
Definition: deviceConfig.hpp:67
const std::string CI_STAT_STATU
Definition: deviceConfig.hpp:51
std::string GetSimAddress()
Definition: deviceConfig.cpp:209
const short SUBSTATE_NOTREADY
Definition: deviceConfig.hpp:81
std::string m_identifier
Address space identifier.
Definition: deviceConfig.hpp:271
const std::string RPC_RESET
Definition: deviceConfig.hpp:46
std::string m_name
device identifier
Definition: deviceConfig.hpp:269
std::string m_sim_address
Definition: deviceConfig.hpp:278
std::string m_alias
Definition: deviceConfig.hpp:280
std::map< int, CfgInt > MapCfgInt
Definition: deviceConfig.hpp:105
const std::string DB_CONTROLLER_PREFIX
Definition: deviceConfig.hpp:55
const std::string CI_SIM_ADDRESS
Definition: deviceConfig.hpp:31
const short SUBSTATE_READY
Definition: deviceConfig.hpp:83
const std::string CI_STAT_LOCAL
Definition: deviceConfig.hpp:52
const short SUBSTATE_INITIALISING
Definition: deviceConfig.hpp:82
const std::string CI_CTRL_CONFIG
Definition: deviceConfig.hpp:39
YAML::Node m_configNode
YAML node object for configuration file.
Definition: deviceConfig.hpp:270
const std::string SUBSTATE_DISABLING_STR
Definition: deviceConfig.hpp:89
const std::string CI_IGNORED
Definition: deviceConfig.hpp:29
const std::string CAT_RPC
Definition: deviceConfig.hpp:60
const std::string CI_MAP_FILE
Definition: deviceConfig.hpp:35
virtual void SetSimulateFlag(bool flag)
Set simulation flag.
Definition: deviceConfig.cpp:320
devmgr::common::ConfigSet< int > CfgInt
Definition: deviceConfig.hpp:100
const std::string STATE_UNAVAILABLE_STR
Definition: deviceConfig.hpp:68
int GetNamespace()
Definition: deviceConfig.cpp:240
const std::string CI_CFG_FILE
Definition: deviceConfig.hpp:38
std::string m_type
Device type.
Definition: deviceConfig.hpp:272
std::map< int, CfgUInt > MapCfgUInt
Definition: deviceConfig.hpp:106
const std::string CI_ADDRESS
Definition: deviceConfig.hpp:30
const std::string SUBSTATE_READY_STR
Definition: deviceConfig.hpp:88
const std::string CI_STAT_STATE
Definition: deviceConfig.hpp:50
const std::string CI_NAMESPACE
Definition: deviceConfig.hpp:34
const short STATE_OPERATIONAL
Definition: deviceConfig.hpp:64
const short SUBSTATE_DISABLING
Definition: deviceConfig.hpp:84
std::string m_map_file
Definition: deviceConfig.hpp:279
const std::string RPC_ENABLE
Definition: deviceConfig.hpp:43
const std::string FITS_PARAM_NAME
Definition: deviceConfig.hpp:92
std::map< int, CfgDouble > MapCfgDouble
Definition: deviceConfig.hpp:107
virtual void GetConfigList(std::vector< std::string > &cfg_list, std::string prefix)
Get configuration list.
Definition: deviceConfig.cpp:284
const std::string SUBSTATE_NOTREADY_STR
Definition: deviceConfig.hpp:86
optional string name
Definition: topics.proto:50
devmgr::common::ConfigSet< double > CfgDouble
Definition: deviceConfig.hpp:102
const std::string FITS_PARAM_ID
Definition: deviceConfig.hpp:91
virtual ~DeviceConfig()
DeviceConfig destructor.
Definition: deviceConfig.cpp:37
const std::string CAT_CFG
Definition: deviceConfig.hpp:59
const std::string FITS_PARAM_DEVIGN
Definition: deviceConfig.hpp:95
std::string m_filename
filename of device configuration file
Definition: deviceConfig.hpp:268
std::string GetProcId(const std::string &attrib)
Get procedure id.
Definition: deviceConfig.cpp:266
std::string GetPrefix()
Definition: deviceConfig.cpp:197
std::string GetObjId()
Get object id.
Definition: deviceConfig.cpp:275
devmgr::common::ConfigSet< bool > CfgBool
Definition: deviceConfig.hpp:99