10 #ifndef DEVMGR_DEVICE_SHUTTER_IF_HPP
11 #define DEVMGR_DEVICE_SHUTTER_IF_HPP
14 #include <unordered_map>
17 #include <yaml-cpp/yaml.h>
19 #include <devmgr/common/deviceLcsIf.hpp>
20 #include <devmgr/devices/shutterConfig.hpp>
21 #include <devmgr/common/dataContext.hpp>
79 ShutterLcsIf(std::shared_ptr<devmgr::common::IDeviceConfig> config,
185 void Listener(fcf::common::VectorVariant& params);
213 void StoreAttribute(
const std::string key,
214 const fcf::common::Variant&
value,
226 void PublishState(
const fcf::common::Variant&
value);
235 void PublishSubstate(
const fcf::common::Variant&
value);
250 static std::timed_mutex m_mutex;
255 #include "shutterLcsIf.inline"
257 #endif //DEVMGR_DEVICE_SHUTTER_IF_HPP
void SetData(const ShutterControllerData &data)
double value
Definition: easylogging++.h:814
Device Local Control System (LCS) Interface (IF) class.
Definition: deviceLcsIf.hpp:69
bool IsClose()
Check if shutter is close.
Definition: shutterLcsIf.cpp:308
void Listener(fcf::common::VectorVariant ¶ms)
Callback to manage changes on the monitored items.
Definition: shutterLcsIf.cpp:429
The DeviceControllerData struct.
Definition: deviceLcsIf.hpp:30
void ReadConfig()
Read the configuration.
Definition: shutterLcsIf.cpp:90
void StartMonitoring()
Start monitoring of controller attributes.
Definition: shutterLcsIf.cpp:409
bool IsHwFailure()
Check if shutter is hardware error.
Definition: shutterLcsIf.cpp:326
void Close()
Executes the Close RPC.
Definition: shutterLcsIf.cpp:179
bool IsOpening()
Check if controller is opening the shutter.
Definition: shutterLcsIf.cpp:254
std::unordered_map< std::string, short > m_status_map
Definition: shutterLcsIf.hpp:241
std::vector< std::string > m_monitor_vector
Definition: shutterLcsIf.hpp:246
virtual ~ShutterControllerData()
Definition: shutterLcsIf.cpp:37
void Open()
Executes the Open RPC.
Definition: shutterLcsIf.cpp:143
virtual std::string GetRpcError(const short error) const
Definition: shutterLcsIf.cpp:494
bool IsOpen()
Check if shutter is open.
Definition: shutterLcsIf.cpp:292
virtual bool IsOperational()
Check if controller is in Operational.
Definition: shutterLcsIf.cpp:237
std::string GetErrorText() const
Definition: dataContext.hpp:73
virtual void ReadStatus(devmgr::common::DeviceControllerData &status)
Read status from the controller.
Definition: shutterLcsIf.cpp:344
ShutterLcsIf(std::shared_ptr< devmgr::common::IDeviceConfig > config, devmgr::common::DataContext &data_ctx)
ShutterLcsIf constructor.
Definition: shutterLcsIf.cpp:42
optional bool error
Definition: requests.proto:11
optional int32 error_code
Definition: topics.proto:14
virtual std::string GetHwError(int &error_code, const bool update=false)
Get error message.
Definition: shutterLcsIf.cpp:524
ShutterControllerData()
Definition: shutterLcsIf.cpp:33
void StopMonitoring()
Stop monitoring of controller attributes.
Definition: shutterLcsIf.cpp:419
virtual bool IsReady()
Check if controller is in Standby/Ready state.
Definition: shutterLcsIf.cpp:216
bool IsClosing()
Check if controller is closing the shutter.
Definition: shutterLcsIf.cpp:273