ifw-fcf 7.1.4
Loading...
Searching...
No Matches
maxis.hpp
Go to the documentation of this file.
1
8#ifndef FCF_DEVMGR_DEVICE_MAXIS_HPP
9#define FCF_DEVMGR_DEVICE_MAXIS_HPP
10
16
17
19
39
40 public:
47 MAxis(const std::string& filename,
48 const std::string& name,
50
54 virtual ~MAxis() = default;
55
67 void CreateObjects(std::shared_ptr<ifw::fcf::devmgr::common::IDeviceConfig> config = nullptr) override;
68
76 virtual void Setup(const std::any& payload) override;
77
90 virtual bool IsSetupActive(const std::any& payload) const override;
91
92
93 void SetTargetNamedPosition(const std::string named_position);
94 const std::string GetTargetNamedPosition();
95
101 virtual void Status(const std::any& payload, std::string& buffer) override;
102
113 virtual void Status(bool end_acq,
114 const ifw::core::dit::did::Did& dictionary,
115 std::shared_ptr<CCfits::FITS>& fits_handle) override;
116
123 virtual void UpdateStatus() override;
124
125 void GetStatusList(ifw::core::utils::bat::DbVector& cfg_status,
126 const MAxisControllerData& status_data);
127
128 void HandleAction(const std::shared_ptr<fcfif::MAxisDevice>& maxis);
129 void HandleMotAction(const std::shared_ptr<fcfif::MAxisDevice>& maxis);
130 virtual void HandleMoveAxesAction(const std::shared_ptr<fcfif::MAxisDevice>& maxis);
131 virtual void HandleCustomAction(const std::shared_ptr<fcfif::MAxisDevice>& maxis);
132 virtual void GetCustomStatusBuffer(const std::string& stat_prefix, std::string& device_status);
133 virtual void GetCustomStatusHeader(const std::string& prefix,
134 bool end_acq,
135 const ifw::core::dit::did::Did& dictionary,
136 std::shared_ptr<CCfits::FITS>& fits_handle);
137 private:
149 void GetStatusBuffer(const std::string& stat_prefix,
150 const MAxisControllerData* const data,
151 std::string& buffer);
152
160 void GetStatusHeader(const std::string& prefix,
161 const MAxisControllerData* const data,
162 bool end_acq,
163 const ifw::core::dit::did::Did& dictionary,
164 std::shared_ptr<CCfits::FITS>& fits_handle);
165
166 private:
168 MAxisControllerData m_controller_status;
169 std::string m_target_named_pos;
170
171 private:
172 log4cplus::Logger m_logger;
173 };
174
175} //namespace
176
177
178#endif //FCF_DEVMGR_DEVICE_MAXIS_HPP
Definition dataContext.hpp:86
Definition device.hpp:32
The MAxis class.
Definition maxis.hpp:38
virtual void UpdateStatus() override
Update the status of the MAxis device in the OLDB.
Definition maxis.cpp:371
void SetTargetNamedPosition(const std::string named_position)
Definition maxis.cpp:282
virtual bool IsSetupActive(const std::any &payload) const override
Check if last setup message is still active.
Definition maxis.cpp:210
virtual void GetCustomStatusHeader(const std::string &prefix, bool end_acq, const ifw::core::dit::did::Did &dictionary, std::shared_ptr< CCfits::FITS > &fits_handle)
Definition maxis.cpp:523
void GetStatusList(ifw::core::utils::bat::DbVector &cfg_status, const MAxisControllerData &status_data)
Definition maxis.cpp:295
MAxis(const std::string &filename, const std::string &name, ifw::fcf::devmgr::common::DataContext &data_ctx)
MAxis constructor.
Definition maxis.cpp:23
void CreateObjects(std::shared_ptr< ifw::fcf::devmgr::common::IDeviceConfig > config=nullptr) override
Create object instances.
Definition maxis.cpp:32
virtual void HandleMoveAxesAction(const std::shared_ptr< fcfif::MAxisDevice > &maxis)
Definition maxis.cpp:124
void HandleMotAction(const std::shared_ptr< fcfif::MAxisDevice > &maxis)
Definition maxis.cpp:72
virtual void GetCustomStatusBuffer(const std::string &stat_prefix, std::string &device_status)
Definition maxis.cpp:462
virtual void Setup(const std::any &payload) override
Executes a setup of the adc device.
Definition maxis.cpp:177
const std::string GetTargetNamedPosition()
Definition maxis.cpp:289
virtual ~MAxis()=default
Default destructor.
virtual void HandleCustomAction(const std::shared_ptr< fcfif::MAxisDevice > &maxis)
Definition maxis.cpp:169
virtual void Status(const std::any &payload, std::string &buffer) override
Obtain the status of the device.
Definition maxis.cpp:468
void HandleAction(const std::shared_ptr< fcfif::MAxisDevice > &maxis)
Definition maxis.cpp:50
MAxis class header file.
Definition maxis.hpp:18
The adcControllerData struct.
Definition maxisLcsIf.hpp:29