ifw-fcf 6.0.0
Loading...
Searching...
No Matches
iodev.hpp
Go to the documentation of this file.
1
10#ifndef FCF_DEVMGR_DEVICE_IODEV_HPP
11#define FCF_DEVMGR_DEVICE_IODEV_HPP
12
17
19
39
40 public:
47 IODev(const std::string& filename,
48 const std::string& name,
50
54 virtual ~IODev() = default;
55
67 void CreateObjects(std::shared_ptr<fcf::devmgr::common::IDeviceConfig> config = nullptr) override;
68
69
77 virtual void Setup(const std::any& payload) override ;
78
91 virtual bool IsSetupActive(const std::any& payload) const override;
92
98 virtual void Status(const std::any& payload, std::string& buffer) override;
99
110 virtual void Status(bool end_acq,
111 const core::dit::did::Did& dictionary,
112 std::shared_ptr<CCfits::FITS>& fits_handle) override;
119 virtual void UpdateStatus() override;
120
129 void GetStatusList(utils::bat::DbVector& cfg_status,
130 const IODevControllerData& status_data);
131
132
133 protected:
145 void GetStatusBuffer(const std::string& stat_prefix,
146 const IODevControllerData* const data,
147 std::string& buffer);
148
156 void GetStatusHeader(const std::string& prefix,
157 const IODevControllerData* const data,
158 bool end_acq,
159 const core::dit::did::Did& dictionary,
160 std::shared_ptr<CCfits::FITS>& fits_handle);
161 protected:
164 protocol::base::VectorVariant m_sensor_list;
165
166 private:
167 log4cplus::Logger m_logger;
168 };
169}
170
171
172#endif //FCF_DEVMGR_DEVICE_IODEV_HPP
Definition: dataContext.hpp:90
Definition: device.hpp:33
The IODev class.
Definition: iodev.hpp:38
virtual void Status(const std::any &payload, std::string &buffer) override
Obtain the status of the device.
Definition: iodev.cpp:325
void GetStatusList(utils::bat::DbVector &cfg_status, const IODevControllerData &status_data)
Get a vector with device status data.
Definition: iodev.cpp:156
IODevControllerData m_controller_status
< object containing the status of the controller
Definition: iodev.hpp:163
virtual ~IODev()=default
Default destructor.
virtual bool IsSetupActive(const std::any &payload) const override
Check if last setup message is still active.
Definition: iodev.cpp:146
void GetStatusBuffer(const std::string &stat_prefix, const IODevControllerData *const data, std::string &buffer)
Get status buffer.
Definition: iodev.cpp:228
protocol::base::VectorVariant m_sensor_list
Definition: iodev.hpp:164
void GetStatusHeader(const std::string &prefix, const IODevControllerData *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: iodev.cpp:276
void CreateObjects(std::shared_ptr< fcf::devmgr::common::IDeviceConfig > config=nullptr) override
Create object instances.
Definition: iodev.cpp:34
virtual void UpdateStatus() override
Update the status of the IODev device in the OLDB.
Definition: iodev.cpp:197
virtual void Setup(const std::any &payload) override
Executes a setup of the motor device.
Definition: iodev.cpp:55
DataContext class header file.
Device class header file.
IODevConfig class header file.
sensorLcsIf class header file.
Definition: iodev.hpp:18
The IODevControllerData struct.
Definition: iodevLcsIf.hpp:65