ifw-fcf  4.0.0
sensor.hpp
Go to the documentation of this file.
1 
10 #ifndef FCF_DEVMGR_DEVICE_SENSOR_HPP
11 #define FCF_DEVMGR_DEVICE_SENSOR_HPP
12 
13 #include <fcf/common/dispatcher.hpp>
14 
20 
22 
42 
43  public:
50  Sensor(const std::string& filename,
51  const std::string& name,
53 
57  virtual ~Sensor() = default;
58 
70  void CreateObjects(std::shared_ptr<fcf::devmgr::common::IDeviceConfig> config = nullptr) override;
71 
72 
78  virtual bool IsDisabling() const override;
79 
85  virtual void Enable() override;
86 
92  virtual void Disable() override;
93 
99  virtual void Stop() override;
100 
108  virtual void HwReset(rad::AnyEvent const& last_event) override;
109 
117  virtual void HwInit(rad::AnyEvent const& last_event) override;
118 
126  virtual void HwEnable(rad::AnyEvent const& last_event) override;
127 
135  virtual void HwDisable(rad::AnyEvent const& last_event) override;
136 
144  virtual void Setup(const std::any& payload) override;
145 
158  virtual bool IsSetupActive(const std::any& payload) const override;
159 
165  virtual void Status(const std::any& payload, std::string& buffer) override;
166 
177  virtual void Status(bool end_acq,
178  const core::dit::did::Did& dictionary,
179  std::shared_ptr<CCfits::FITS>& fits_handle) override;
186  virtual void UpdateStatus() override;
187 
196  void GetStatusList(utils::bat::DbVector& cfg_status,
197  const SensorControllerData& status_data);
198 
199 
200  protected:
212  void GetStatusBuffer(const std::string& stat_prefix,
213  const SensorControllerData* const data,
214  std::string& buffer);
215 
223  void GetStatusHeader(const std::string& prefix,
224  const SensorControllerData* const data,
225  bool end_acq,
226  const core::dit::did::Did& dictionary,
227  std::shared_ptr<CCfits::FITS>& fits_handle);
228  protected:
231  fcf::common::VectorVariant m_sensor_list;
232 
233  private:
234  log4cplus::Logger m_logger;
235  };
236 }
237 
238 
239 #endif //FCF_DEVMGR_DEVICE_SENSOR_HPP
fcf::devmgr::sensor::Sensor
The Sensor class.
Definition: sensor.hpp:41
dataContext.hpp
DataContext class header file.
fcf::devmgr::sensor::Sensor::CreateObjects
void CreateObjects(std::shared_ptr< fcf::devmgr::common::IDeviceConfig > config=nullptr) override
Create object instances.
Definition: sensor.cpp:34
fcf::devmgr::sensor::Sensor::GetStatusHeader
void GetStatusHeader(const std::string &prefix, const SensorControllerData *const data, bool end_acq, const core::dit::did::Did &dictionary, std::shared_ptr< CCfits::FITS > &fits_handle)
Get device status for the data acquisition.
Definition: sensor.cpp:291
device.hpp
Device class header file.
fcf::devmgr::sensor::SensorControllerData
The sensorControllerData struct.
Definition: sensorLcsIf.hpp:60
fcf::devmgr::sensor::Sensor::Setup
virtual void Setup(const std::any &payload) override
Executes a setup of the sensor device.
Definition: sensor.cpp:159
fcf::devmgr::sensor::Sensor::GetStatusList
void GetStatusList(utils::bat::DbVector &cfg_status, const SensorControllerData &status_data)
Get a vector with device status data.
Definition: sensor.cpp:176
fcf::devmgr::sensor::Sensor::IsSetupActive
virtual bool IsSetupActive(const std::any &payload) const override
Check if last setup message is still active.
Definition: sensor.cpp:166
fcf::devmgr::sensor::Sensor::Enable
virtual void Enable() override
Executes a Enable command.
Definition: sensor.cpp:57
fcf::devmgr::sensor::Sensor::UpdateStatus
virtual void UpdateStatus() override
Update the status of the Sensor device in the OLDB.
Definition: sensor.cpp:215
fcf::devmgr::sensor::Sensor::~Sensor
virtual ~Sensor()=default
Default destructor.
fcf::devmgr::sensor::Sensor::Disable
virtual void Disable() override
Executes a Disable command.
Definition: sensor.cpp:70
fcf::devmgr::sensor
Definition: sensor.hpp:21
fcf::devmgr::common::DataContext
Definition: dataContext.hpp:90
fcf::devmgr::sensor::Sensor::HwReset
virtual void HwReset(rad::AnyEvent const &last_event) override
Executes a hardware reset command.
Definition: sensor.cpp:96
fcf::devmgr::common::Device
Definition: device.hpp:33
fcf::devmgr::sensor::Sensor::Status
virtual void Status(const std::any &payload, std::string &buffer) override
Obtain the status of the device.
Definition: sensor.cpp:339
fcf::devmgr::sensor::Sensor::m_sensor_list
fcf::common::VectorVariant m_sensor_list
Definition: sensor.hpp:231
fcf::devmgr::sensor::Sensor::HwInit
virtual void HwInit(rad::AnyEvent const &last_event) override
Executes a hardware init command.
Definition: sensor.cpp:110
fcf::devmgr::sensor::Sensor::Stop
virtual void Stop() override
Executes a Stop command.
Definition: sensor.cpp:83
fcf::devmgr::sensor::Sensor::HwEnable
virtual void HwEnable(rad::AnyEvent const &last_event) override
Executes a hardware enable command.
Definition: sensor.cpp:124
iDeviceConfig.hpp
IDeviceConfig class header file.
sensorLcsIf.hpp
sensorLcsIf class header file.
fcf::devmgr::sensor::Sensor::HwDisable
virtual void HwDisable(rad::AnyEvent const &last_event) override
Executes a hardware disable command.
Definition: sensor.cpp:138
fcf::devmgr::sensor::Sensor::m_controller_status
SensorControllerData m_controller_status
< object containing the status of the controller
Definition: sensor.hpp:230
fcf::devmgr::sensor::Sensor::Sensor
Sensor(const std::string &filename, const std::string &name, fcf::devmgr::common::DataContext &data_ctx)
Sensor constructor.
Definition: sensor.cpp:26
sensorConfig.hpp
SensorConfig class header file.
fcf::devmgr::sensor::Sensor::IsDisabling
virtual bool IsDisabling() const override
Check if sensor is disablig.
Definition: sensor.cpp:152
fcf::devmgr::sensor::Sensor::GetStatusBuffer
void GetStatusBuffer(const std::string &stat_prefix, const SensorControllerData *const data, std::string &buffer)
Get status buffer.
Definition: sensor.cpp:246