10 #ifndef DEVMGR_DEVICE_SENSOR_LCSIF_HPP
11 #define DEVMGR_DEVICE_SENSOR_LCSIF_HPP
14 #include <unordered_map>
17 #include <yaml-cpp/yaml.h>
19 #include <devmgr/common/deviceLcsIf.hpp>
20 #include <devmgr/devices/sensorConfig.hpp>
21 #include <devmgr/common/dataContext.hpp>
66 fcf::common::Variant
value);
75 std::unordered_map<std::string, ChannelData>
m_values;
110 SensorLcsIf(std::shared_ptr<devmgr::common::IDeviceConfig> config,
149 virtual void ReadStatus(SensorControllerData& status);
182 void Listener(fcf::common::VectorVariant& params);
206 void PublishState(
const fcf::common::Variant&
value);
215 void PublishSubstate(
const fcf::common::Variant&
value);
217 void PublishChannel(
const std::string channel,
218 const fcf::common::Variant&
value);
237 static std::timed_mutex m_mutex;
244 #include "sensorLcsIf.inline"
246 #endif //DEVMGR_DEVICE_SENSOR_LCSIF_HPP
double value
Definition: easylogging++.h:814
Device Local Control System (LCS) Interface (IF) class.
Definition: deviceLcsIf.hpp:69
void GetChannelValue(std::string channel, ChannelData &data)
The DeviceControllerData struct.
Definition: deviceLcsIf.hpp:30
void GetValue(bool &value) const
virtual ~SensorControllerData()
Definition: sensorLcsIf.cpp:50
fcf::common::Variant m_value
Definition: sensorLcsIf.hpp:45
void ReadConfig()
Read the configuration.
Definition: sensorLcsIf.cpp:111
std::string GetErrorText() const
void SetValue(const fcf::common::Variant value)
void Listener(fcf::common::VectorVariant ¶ms)
Callback to manage changes on the monitored items.
Definition: sensorLcsIf.cpp:344
std::unordered_map< std::string, ChannelData > m_values
Definition: sensorLcsIf.hpp:75
SensorControllerData()
Definition: sensorLcsIf.cpp:46
void StopMonitoring()
Stop monitoring of controller attributes.
Definition: sensorLcsIf.cpp:326
ChannelData()
Definition: sensorLcsIf.cpp:35
virtual ~ChannelData()
Definition: sensorLcsIf.cpp:38
virtual bool IsOperational()
Check if controller is in Operational.
Definition: sensorLcsIf.cpp:181
void ClearChannelValues()
friend class SensorLcsIf
Definition: sensorLcsIf.hpp:73
SensorLcsIf(std::shared_ptr< devmgr::common::IDeviceConfig > config, devmgr::common::DataContext &data_ctx)
sensorLcsIf constructor.
Definition: sensorLcsIf.cpp:60
void SetData(const SensorControllerData &data)
Definition: sensorLcsIf.cpp:53
friend std::ostream & operator<<(std::ostream &dest, const ChannelData &obj)
Definition: sensorLcsIf.cpp:41
Definition: dataContext.hpp:73
virtual void ReadStatus(SensorControllerData &status)
Read status from the controller.
Definition: sensorLcsIf.cpp:218
void StartMonitoring()
Start monitoring of controller attributes.
Definition: sensorLcsIf.cpp:308
std::unordered_map< std::string, short > m_status_map
Definition: sensorLcsIf.hpp:225
virtual std::string GetHwError(int &error_code, const bool update=false)
Get error message.
Definition: sensorLcsIf.cpp:439
std::unordered_map< std::string, std::string > m_channels_map
Definition: sensorLcsIf.hpp:233
virtual bool IsReady()
Check if controller is in Standby/Ready state.
Definition: sensorLcsIf.cpp:161
optional int32 error_code
Definition: topics.proto:14
void SetChannelValue(std::string channel, fcf::common::Variant value)
std::vector< std::string > m_monitor_vector
Definition: sensorLcsIf.hpp:229
bool IsHwFailure()
Check if Sensor is in hardware error.
Definition: sensorLcsIf.cpp:200
virtual std::string GetRpcError(const short error_code) const
Definition: sensorLcsIf.cpp:413