10 #ifndef FCF_DEVMGR_DEVICE_IODEV_CONFIG_HPP
11 #define FCF_DEVMGR_DEVICE_IODEV_CONFIG_HPP
20 #include <yaml-cpp/yaml.h>
22 #include <utils/bat/logger.hpp>
84 const std::unordered_map<std::string, std::string>
IODevTypeMap = {
156 const std::string name);
186 virtual void GetConfig(protocol::base::VectorVariant& params)
const override;
198 std::string prefix)
const override;
207 virtual void GetInputList(std::vector<std::string>& channel_list)
const ;
216 virtual void GetOutputList(std::vector<std::pair<std::string, std::string>>& channel_list)
const ;
241 const std::string& value)
const;
243 std::optional<IODevChannel>
GetChannelConfig(
const std::string& channel)
const;
246 std::map<std::string, IODevChannel> m_channel_map;
252 #include "iodevConfig.ipp"
m_logger(log4cplus::Logger::getInstance(LOGGER_NAME))
Definition: {{cookiecutter.device_name}}.cpp:32
Device Configuration class.
Definition: deviceConfig.hpp:126
sensor Configuration class
Definition: iodevConfig.hpp:143
bool IsNoRpc() const
Get NO RPC flag.
Definition: iodevConfig.cpp:248
IODevConfig(const std::string filename, const std::string name)
IODevConfig constructor.
Definition: iodevConfig.cpp:36
bool IsSensor() const
Get Sensor flag.
Definition: iodevConfig.cpp:255
std::string GetChannelType(const std::string &channel) const
Definition: iodevConfig.cpp:263
virtual void GetConfigList(utils::bat::DbVector &cfg_list, std::string prefix) const override
Get configuration list.
Definition: iodevConfig.cpp:150
virtual void GetConfig(protocol::base::VectorVariant ¶ms) const override
Obtain the list of configuration parameters.
Definition: iodevConfig.cpp:142
virtual void GetOutputList(std::vector< std::pair< std::string, std::string >> &channel_list) const
Get output channel list.
Definition: iodevConfig.cpp:235
virtual void Init()
Read the configuration.
Definition: iodevConfig.cpp:53
std::string GetChannelDescription(const std::string &channel) const
Definition: iodevConfig.cpp:276
std::optional< IODevChannel > GetChannelConfig(const std::string &channel) const
Definition: iodevConfig.cpp:303
virtual void GetInputList(std::vector< std::string > &channel_list) const
Get input channel list.
Definition: iodevConfig.cpp:222
virtual ~IODevConfig()=default
DeviceConfig destructor.
std::string GetChannelNamedValue(const std::string &channel, const std::string &value) const
Definition: iodevConfig.cpp:289
Sensor Local Control System (LCS) Interface (IF) class.
Definition: iodevLcsIf.hpp:103
The IODev class.
Definition: iodev.hpp:38
DataContext class header file.
DeviceConfig class header file.
SensorHwErrors header file.
SensorRpcErrors header file.
type
Definition: fcfLampGui.py:20
constexpr int SUBSTATE_OP_ERROR
Definition: deviceConfig.hpp:108
constexpr int SUBSTATE_READY
Definition: deviceConfig.hpp:98
constexpr auto SUBSTATE_OP_ERROR_STR
Definition: deviceConfig.hpp:111
constexpr auto SUBSTATE_ERROR_STR
Definition: deviceConfig.hpp:105
constexpr int SUBSTATE_ERROR
Definition: deviceConfig.hpp:100
constexpr int SUBSTATE_NOTREADY
Definition: deviceConfig.hpp:97
constexpr auto SUBSTATE_NOTREADY_STR
Definition: deviceConfig.hpp:102
constexpr auto SUBSTATE_READY_STR
Definition: deviceConfig.hpp:104
constexpr auto SI_CAT_STR
Definition: iodevConfig.hpp:73
constexpr auto DO_TYPE_STR
Definition: iodevConfig.hpp:65
constexpr int SUBSTATE_OP_MONITORING
Definition: iodevConfig.hpp:49
constexpr auto IO_CAT_STR
Definition: iodevConfig.hpp:77
constexpr auto CI_LOG
Definition: iodevConfig.hpp:41
constexpr auto SO_CAT_STR
Definition: iodevConfig.hpp:78
constexpr auto CI_TYPE
Definition: iodevConfig.hpp:39
constexpr auto CI_NAMED_MAPPING
Definition: iodevConfig.hpp:45
constexpr auto CI_NAME
Definition: iodevConfig.hpp:36
constexpr auto SI_TYPE_STR
Definition: iodevConfig.hpp:63
constexpr auto CI_HEADER
Definition: iodevConfig.hpp:40
constexpr auto II_TYPE_STR
Definition: iodevConfig.hpp:62
constexpr auto CI_CHANNELS
Definition: iodevConfig.hpp:35
constexpr auto SUBSTATE_OP_MONITORING_STR
Definition: iodevConfig.hpp:50
constexpr auto AO_CAT_STR
Definition: iodevConfig.hpp:76
constexpr auto CI_VALUE
Definition: iodevConfig.hpp:44
constexpr auto CI_ALIAS
Definition: iodevConfig.hpp:38
const std::unordered_map< short, std::string > SubstateMap
Definition: iodevConfig.hpp:52
constexpr auto CI_NO_RPC
Definition: iodevConfig.hpp:31
constexpr auto AI_CAT_STR
Definition: iodevConfig.hpp:71
constexpr auto DI_CAT_STR
Definition: iodevConfig.hpp:70
constexpr auto CI_UNIT
Definition: iodevConfig.hpp:42
constexpr auto LOGGER_NAME
Definition: iodevConfig.hpp:30
constexpr auto RPC_SET_OUTPUTS
Definition: iodevConfig.hpp:81
constexpr auto CI_SENSOR
Definition: iodevConfig.hpp:32
constexpr auto IO_TYPE_STR
Definition: iodevConfig.hpp:67
constexpr auto SO_TYPE_STR
Definition: iodevConfig.hpp:68
constexpr auto AO_TYPE_STR
Definition: iodevConfig.hpp:66
constexpr auto DI_TYPE_STR
Definition: iodevConfig.hpp:60
constexpr auto CI_DESCRIPTION
Definition: iodevConfig.hpp:37
const std::unordered_map< std::string, std::string > IODevTypeMap
Definition: iodevConfig.hpp:84
constexpr auto DO_CAT_STR
Definition: iodevConfig.hpp:75
constexpr auto II_CAT_STR
Definition: iodevConfig.hpp:72
constexpr auto AI_TYPE_STR
Definition: iodevConfig.hpp:61
constexpr auto CI_MAP
Definition: iodevConfig.hpp:43
Definition: iodevConfig.hpp:96
std::string m_map
Definition: iodevConfig.hpp:130
std::string GetAlias() const
bool m_log
Definition: iodevConfig.hpp:128
std::string GetCat() const
void SetHeaderFlag(bool flag)
std::string GetDescription() const
std::string GetType() const
virtual ~IODevChannel()=default
std::string m_unit
Definition: iodevConfig.hpp:129
void SetDescription(std::string description)
std::string GetUnit() const
void SetMap(std::string map)
void AddNamedValue(std::string value, std::string name)
void SetType(std::string type)
std::string m_type
Definition: iodevConfig.hpp:126
bool m_header
Definition: iodevConfig.hpp:127
void SetLogFlag(bool flag)
IODevChannel()
Definition: iodevConfig.cpp:26
std::string GetMap() const
void SetFitsPrefix(std::string prefix)
void SetAlias(std::string alias)
std::string m_alias
Definition: iodevConfig.hpp:125
std::string m_prefix
Definition: iodevConfig.hpp:131
std::unordered_map< std::string, string > m_named_values_map
Definition: iodevConfig.hpp:132
std::string GetNamedValue(std::string value) const
bool GetHeaderFlag() const
void SetUnit(std::string unit)
std::string m_description
Definition: iodevConfig.hpp:124
std::string GetFitsPrefix() const