ifw-fcf  3.0.0
drot.hpp
Go to the documentation of this file.
1 
10 #ifndef FCF_DEVMGR_DEVICE_DROT_HPP
11 #define FCF_DEVMGR_DEVICE_DROT_HPP
12 
13 #include "fcf/common/dispatcher.hpp"
14 
20 
21 namespace fcf {
22  namespace devmgr {
23  namespace drot {
24 
44 
45  public:
52  Drot(const std::string& filename,
53  const std::string& name,
55 
59  virtual ~Drot() {};
60 
72  void CreateObjects(std::shared_ptr<fcf::devmgr::common::IDeviceConfig> config = nullptr) override;
73 
89  void RegisterComm(std::shared_ptr<fcf::common::IComm> comm_if,
90  fcf::common::Dispatcher<>& failure,
91  fcf::common::Dispatcher<>& normal) override;
92 
100  virtual void Setup(const std::any& payload) override;
101 
114  virtual bool IsSetupActive(const std::any& payload) const override;
115 
116 
117  void SetTargetNamedPosition(const std::string named_position);
118  const std::string GetTargetNamedPosition();
119 
125  virtual void Status(const std::any& payload, std::string& buffer) override;
126 
137  virtual void Status(bool end_acq,
138  const dit::did::Did& dictionary,
139  std::shared_ptr<CCfits::FITS>& fits_handle) override;
140  //CCfits::FITS* fits_handle = nullptr);
141 
148  virtual void UpdateStatus() override;
149 
154  virtual std::shared_ptr<fcf::devmgr::common::DeviceLcsIf> GetLcsIf() const override;
155 
161  virtual std::shared_ptr<fcf::devmgr::common::IDeviceConfig> GetConfig() const override;
162 
163  protected:
166  std::string m_target_named_pos;
167  std::shared_ptr<DrotConfig> m_config;
168 
169  // Local Control System Interface
170  std::shared_ptr<DrotLcsIf<fcfif::DrotTopicUnion>> m_lcs_if;
171  };
172  }
173  }
174 }
175 
176 
177 #endif //FCF_DEVMGR_DEVICE_DROT_HPP
dataContext.hpp
DataContext class header file.
fcf::devmgr::drot::Drot::GetTargetNamedPosition
const std::string GetTargetNamedPosition()
Definition: drot.cpp:276
fcf::devmgr::drot::Drot::m_lcs_if
std::shared_ptr< DrotLcsIf< fcfif::DrotTopicUnion > > m_lcs_if
pointer to device lcs interface object
Definition: drot.hpp:170
fcf::devmgr::drot::Drot::RegisterComm
void RegisterComm(std::shared_ptr< fcf::common::IComm > comm_if, fcf::common::Dispatcher<> &failure, fcf::common::Dispatcher<> &normal) override
Register a communication interface object.
Definition: drot.cpp:80
device.hpp
Device class header file.
fcf::devmgr::drot::Drot::Status
virtual void Status(const std::any &payload, std::string &buffer) override
Obtain the status of the device.
Definition: drot.cpp:378
fcf::devmgr::drot::Drot
The Drot class.
Definition: drot.hpp:43
fcf::devmgr::drot::Drot::UpdateStatus
virtual void UpdateStatus() override
Update the status of the Drot device in the OLDB.
Definition: drot.cpp:282
drotConfig.hpp
DrotConfig class header file.
fcf::devmgr::common::DataContext
Definition: dataContext.hpp:92
fcf
Definition: actionMgr.cpp:29
fcf::devmgr::drot::Drot::SetTargetNamedPosition
void SetTargetNamedPosition(const std::string named_position)
Definition: drot.cpp:269
fcf::devmgr::drot::Drot::GetConfig
virtual std::shared_ptr< fcf::devmgr::common::IDeviceConfig > GetConfig() const override
Get a pointer of device configuration.
Definition: drot.cpp:477
fcf::devmgr::drot::Drot::m_target_named_pos
std::string m_target_named_pos
Definition: drot.hpp:166
fcf::devmgr::drot::Drot::m_controller_status
DrotControllerData m_controller_status
< object containing the status of the controller
Definition: drot.hpp:165
fcf::devmgr::drot::Drot::CreateObjects
void CreateObjects(std::shared_ptr< fcf::devmgr::common::IDeviceConfig > config=nullptr) override
Create object instances.
Definition: drot.cpp:38
fcf::devmgr::common::Device
Definition: device.hpp:30
fcf::devmgr::drot::Drot::Drot
Drot(const std::string &filename, const std::string &name, fcf::devmgr::common::DataContext &data_ctx)
Drot constructor.
Definition: drot.cpp:30
iDeviceConfig.hpp
IDeviceConfig class header file.
fcf::devmgr::drot::Drot::Setup
virtual void Setup(const std::any &payload) override
Executes a setup of the drot device.
Definition: drot.cpp:96
fcf::devmgr::drot::Drot::m_config
std::shared_ptr< DrotConfig > m_config
pointer to device config object
Definition: drot.hpp:167
fcf::devmgr::drot::Drot::GetLcsIf
virtual std::shared_ptr< fcf::devmgr::common::DeviceLcsIf > GetLcsIf() const override
Definition: drot.cpp:90
drotLcsIf.hpp
drotLcsIf class header file.
fcf::devmgr::drot::Drot::~Drot
virtual ~Drot()
Default destructor.
Definition: drot.hpp:59
fcf::devmgr::drot::Drot::IsSetupActive
virtual bool IsSetupActive(const std::any &payload) const override
Check if last setup message is still active.
Definition: drot.cpp:195
fcf::devmgr::drot::DrotControllerData
The drotControllerData struct.
Definition: drotLcsIf.hpp:29