ifw-fcf  5.0.0-pre2
lamp.hpp
Go to the documentation of this file.
1 
10 #ifndef FCF_DEVMGR_DEVICE_LAMP_HPP
11 #define FCF_DEVMGR_DEVICE_LAMP_HPP
12 
13 
19 
20 
21 namespace fcf::devmgr::lamp {
22 
41 
42  public:
49  Lamp(const std::string& filename,
50  const std::string& name,
52 
56  virtual ~Lamp() = default;
57 
69  void CreateObjects(std::shared_ptr<fcf::devmgr::common::IDeviceConfig> config = nullptr) override;
70 
78  virtual void Setup(const std::any& payload) override;
79 
92  virtual bool IsSetupActive(const std::any& payload) const override;
93 
94 
100  virtual void Status(const std::any& payload, std::string& buffer) override;
101 
112  virtual void Status(bool end_acq,
113  const core::dit::did::Did& dictionary,
114  std::shared_ptr<CCfits::FITS>& fits_handle) override;
115 
122  virtual void UpdateStatus() override;
123 
124  protected:
136  void GetStatusBuffer(const std::string& stat_prefix,
137  const LampControllerData* const data,
138  std::string& buffer);
139  protected:
142 
143  private:
144  log4cplus::Logger m_logger;
145  };
146 
147 } // fcf::devmgr::lamp
148 
149 
150 #endif //FCF_DEVMGR_DEVICE_LAMP_HPP
actuator class header file.
The actuator class.
Definition: actuator.hpp:40
Definition: dataContext.hpp:90
LampControllerData m_controller_status
< object containing the status of the controller
Definition: lamp.hpp:141
virtual void UpdateStatus() override
Update the status of the lamp device in the OLDB.
Definition: lamp.cpp:174
virtual ~Lamp()=default
Default destructor.
void CreateObjects(std::shared_ptr< fcf::devmgr::common::IDeviceConfig > config=nullptr) override
Create object instances.
Definition: lamp.cpp:34
Lamp(const std::string &filename, const std::string &name, fcf::devmgr::common::DataContext &data_ctx)
Lamp constructor.
Definition: lamp.cpp:25
virtual void Status(const std::any &payload, std::string &buffer) override
Obtain the status of the device.
Definition: lamp.cpp:240
void GetStatusBuffer(const std::string &stat_prefix, const LampControllerData *const data, std::string &buffer)
Get status buffer.
Definition: lamp.cpp:222
virtual void Setup(const std::any &payload) override
Executes a setup of the lamp device.
Definition: lamp.cpp:54
virtual bool IsSetupActive(const std::any &payload) const override
Check if last setup message is still active.
Definition: lamp.cpp:93
DataContext class header file.
IDeviceConfig class header file.
LampConfig class header file.
LampLcsIf class header file.
Definition: Lamp.py:1
Definition: lamp.hpp:21
The LampControllerData struct.
Definition: lampLcsIf.hpp:36