8#ifndef FCF_DEVMGR_DEVICE_MOTOR_HPP
9#define FCF_DEVMGR_DEVICE_MOTOR_HPP
73 Motor(
const std::string filename,
74 const std::string name,
94 void CreateObjects(std::shared_ptr<ifw::fcf::devmgr::common::IDeviceConfig> config =
nullptr)
override ;
103 virtual void Setup(
const std::any& payload)
override ;
112 virtual bool IsSetupActive(
const std::any& payload)
const override;
121 virtual void Status(
const std::any& payload, std::string& buffer)
override;
133 virtual void Status(
bool end_acq,
134 const ifw::core::dit::did::Did& dictionary,
135 std::shared_ptr<CCfits::FITS>& fits_handle)
override;
146 void GetStatusList(ifw::core::utils::bat::DbVector& cfg_status,
179 std::string& buffer);
191 const ifw::core::dit::did::Did& dictionary,
192 std::shared_ptr<CCfits::FITS>& fits_handle);
201 std::string m_target_named_pos;
202 mutable std::chrono::steady_clock::time_point m_hw_failure_start;
203 static constexpr int HW_FAILURE_RETRIES = 5;
205 log4cplus::Logger m_logger;
Definition dataContext.hpp:86
void SetTargetNamedPosition(const std::string named_position)
Definition motor.cpp:215
const std::string GetTargetNamedPosition()
Definition motor.cpp:222
virtual void Status(const std::any &payload, std::string &buffer) override
Obtain the status of the device.
Definition motor.cpp:464
void HandleAction(const std::shared_ptr< fcfif::MotorDevice > &motor)
Definition motor.cpp:49
void GetStatusList(ifw::core::utils::bat::DbVector &cfg_status, const MotorControllerData &status_data)
Get a vector with device status data.
Definition motor.cpp:228
virtual void UpdateStatus() override
Update the status of the motor device in the OLDB.
Definition motor.cpp:321
void GetStatusBuffer(const std::string &stat_prefix, const MotorControllerData *const data, std::string &buffer)
Get status buffer.
Definition motor.cpp:352
Motor(const std::string filename, const std::string name, ifw::fcf::devmgr::common::DataContext &data_ctx)
Motor constructor.
Definition motor.cpp:24
virtual bool IsSetupActive(const std::any &payload) const override
Check if last setup message is still active.
Definition motor.cpp:113
virtual void Setup(const std::any &payload) override
Executes a setup of the motor device.
Definition motor.cpp:80
virtual ~Motor()=default
Default destructor.
void CreateObjects(std::shared_ptr< ifw::fcf::devmgr::common::IDeviceConfig > config=nullptr) override
Create object instances.
Definition motor.cpp:33
void GetStatusHeader(const std::string &prefix, const MotorControllerData *const data, bool end_acq, const ifw::core::dit::did::Did &dictionary, std::shared_ptr< CCfits::FITS > &fits_handle)
Get device status for the data acquisition.
Definition motor.cpp:496
Motor class source file.
Definition motor.hpp:18
The MotorControllerData struct.
Definition motorLcsIf.hpp:32