10 #ifndef FCF_DEVMGR_DEVICE_SHUTTER_IF_HPP
11 #define FCF_DEVMGR_DEVICE_SHUTTER_IF_HPP
14 #include <unordered_map>
17 #include <yaml-cpp/yaml.h>
19 #include <fcf/devmgr/common/events.rad.hpp>
26 #include <rad/mal/publisher.hpp>
28 namespace fcf::devmgr::shutter {
64 template<
typename TOPIC_TYPE = fcfif::ShutterTopicUnion>
77 ShutterLcsIf(std::shared_ptr<devmgr::common::IDeviceConfig> config,
155 void Listener(fcf::common::VectorVariant& params);
162 virtual std::string
GetRpcError(
const short error)
const;
177 void StoreAttribute(
const std::string key,
178 const fcf::common::Variant& value,
191 #include "shutterLcsIf.ipp"
193 #endif //FCF_DEVMGR_DEVICE_SHUTTER_IF_HPP
virtual std::string GetRpcError(const short error) const
virtual std::string GetSubstateStr() const
bool IsOpen()
Check if shutter is open.
void Listener(fcf::common::VectorVariant ¶ms)
Callback to manage changes on the monitored items.
virtual bool IsOperational()
Check if controller is in Operational.
ShutterConfig class header file.
The DeviceControllerData struct.
Definition: deviceLcsIf.hpp:31
virtual void ReadStatus(devmgr::common::DeviceControllerData &status)
Read status from the controller.
virtual bool IsReady()
Check if controller is in Standby/Ready state.
virtual ~ShutterControllerData()
Definition: shutterLcsIf.cpp:20
void SetData(const ShutterControllerData &data)
std::unique_ptr< rad::cii::Publisher< TOPIC_TYPE > > m_publisher
Definition: shutterLcsIf.hpp:184
std::string GetErrorText() const
ShutterLcsIf(std::shared_ptr< devmgr::common::IDeviceConfig > config, devmgr::common::DataContext &data_ctx, bool initialise=true)
ShutterLcsIf constructor.
bool IsClosing()
Check if controller is closing the shutter.
The ShutterControllerData struct.
Definition: shutterLcsIf.hpp:37
Shutter Local Control System (LCS) Interface (IF) class.
Definition: shutterLcsIf.hpp:65
bool IsOpening()
Check if controller is opening the shutter.
DataContext class header file.
Definition: dataContext.hpp:81
void Close()
Executes the Close RPC.
deviceLcsIf class header file.
virtual ~ShutterLcsIf()
Default destructor.
Definition: shutterLcsIf.hpp:84
void Open()
Executes the Open RPC.
Definition: deviceLcsIf.hpp:72
ShutterControllerData()
Definition: shutterLcsIf.cpp:16
bool IsClose()
Check if shutter is close.