ifw-fcf  5.0.0-pre2
shutterLcsIf.hpp
Go to the documentation of this file.
1 
10 #ifndef FCF_DEVMGR_DEVICE_SHUTTER_IF_HPP
11 #define FCF_DEVMGR_DEVICE_SHUTTER_IF_HPP
12 
13 // System headers
14 #include <unordered_map>
15 
16 // Third party headers
17 #include <yaml-cpp/yaml.h>
18 
19 #include <fcf/devmgr/common/events.rad.hpp>
20 
24 
25 #include <Fcfif.hpp>
26 #include <rad/mal/publisher.hpp>
27 
28 namespace fcf::devmgr::shutter {
29 
38  public:
40  virtual ~ShutterControllerData();
41 
42  inline std::string GetErrorText() const;
43  inline virtual std::string GetSubstateStr() const;
44 
45  void SetData(const ShutterControllerData& data);
46 
47  protected:
48 
49  };
50 
65  {
66 
67  public:
68 
77  ShutterLcsIf(std::shared_ptr<fcf::devmgr::common::IDeviceConfig> config,
79 
80 
84  virtual ~ShutterLcsIf() = default;
85 
94  virtual void InitObject();
95 
100  virtual bool IsReady() const;
101 
106  virtual bool IsOperational() const;
107 
114  void Open();
115 
122  void Close();
123 
128  bool IsOpening() const;
129 
134  bool IsClosing() const;
135 
140  bool IsOpen() const;
141 
146  bool IsClose() const;
147 
153  virtual std::string GetRpcError(const short error) const;
154 
155 
156  private:
157  log4cplus::Logger m_logger;
158 
159  };
160 }
161 
162 #include "shutterLcsIf.ipp"
163 
164 #endif //FCF_DEVMGR_DEVICE_SHUTTER_IF_HPP
Definition: dataContext.hpp:90
Definition: deviceLcsIf.hpp:77
Shutter Local Control System (LCS) Interface (IF) class.
Definition: shutterLcsIf.hpp:65
virtual ~ShutterLcsIf()=default
Default destructor.
bool IsClose() const
Check if shutter is close.
Definition: shutterLcsIf.cpp:165
ShutterLcsIf(std::shared_ptr< fcf::devmgr::common::IDeviceConfig > config, fcf::devmgr::common::DataContext &data_ctx)
ShutterLcsIf constructor.
Definition: shutterLcsIf.cpp:22
virtual bool IsReady() const
Check if controller is in Standby/Ready state.
Definition: shutterLcsIf.cpp:92
virtual std::string GetRpcError(const short error) const
Definition: shutterLcsIf.cpp:178
void Open()
Executes the Open RPC.
Definition: shutterLcsIf.cpp:48
bool IsOpen() const
Check if shutter is open.
Definition: shutterLcsIf.cpp:153
bool IsClosing() const
Check if controller is closing the shutter.
Definition: shutterLcsIf.cpp:140
virtual void InitObject()
Initialize object.
Definition: shutterLcsIf.cpp:32
bool IsOpening() const
Check if controller is opening the shutter.
Definition: shutterLcsIf.cpp:127
void Close()
Executes the Close RPC.
Definition: shutterLcsIf.cpp:70
virtual bool IsOperational() const
Check if controller is in Operational.
Definition: shutterLcsIf.cpp:109
DataContext class header file.
deviceLcsIf class header file.
Definition: shutter.hpp:19
ShutterConfig class header file.
The DeviceControllerData struct.
Definition: deviceLcsIf.hpp:36
The ShutterControllerData struct.
Definition: shutterLcsIf.hpp:37
void SetData(const ShutterControllerData &data)
ShutterControllerData()
Definition: shutterLcsIf.cpp:15
virtual ~ShutterControllerData()
Definition: shutterLcsIf.cpp:19
virtual std::string GetSubstateStr() const