ifw-fcf  2.0.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
drot.h
Go to the documentation of this file.
1 
9 #ifndef DROT_WDG_H
10 #define DROT_WDG_H
11 
12 #include "fcf/gui/wdglib/device.h"
13 #include <QWidget>
14 #include <QObject>
15 #include <rad/mal/subscriber.hpp>
16 #include <rad/mal/utils.hpp>
17 
18 class QLabel;
19 class QCheckBox;
20 class QComboBox;
21 class QSpinBox;
22 class QPalette;
23 
24 namespace Ui {
25  class DrotWdg;
26 }
27 
28 class DrotWdg : public DeviceWdg {
29  Q_OBJECT
30 
31 public:
32  explicit DrotWdg(QWidget *parent = 0,
33  std::string name = "undefined",
34  std::string filename = "undefined_file",
35  std::string server_id = "undefined",
36  int cmd_timeout = 60000);
37  virtual ~DrotWdg();
38 
39  virtual void StartSubscription();
40  void GetMessage(std::shared_ptr<::elt::mal::Mal> mal,
41  std::vector<std::shared_ptr<::fcfif::FcsUnion>>& setup_buffer,
42  bool ignoreChecked = false);
43  virtual void GetSubordinatedDevices(QStringList& dev_list);
44  virtual void UpdateData(QList<QVariant>& data_list);
45  virtual std::vector<std::string> GetDbAttributes(std::string server_id);
46  virtual void SetEnable(bool flag);
47 
48 signals:
49 
50 
51 public slots:
52  void SetActive(int index);
53  void SetActive(double value);
54 
55  void UpdateSubstate(int substate);
56  void UpdateSpinner(int substate);
57  void UpdateTrackMode(int mode);
58  void UpdatePosition(double position);
59  void UpdateAlpha(double position);
60  void UpdateDelta(double position);
61  void UpdateEncoders(double encoders);
62  void UpdateOptions(int mode);
63  void UpdateNamedPos(QString named_pos);
64  void HandleLaunchButton();
65 
66 private:
67 
68  Ui::DrotWdg *ui;
69  std::string m_server_id;
70  QStringList m_options;
71  std::string m_address;
72  std::string m_simaddr;
73  std::string m_prefix;
74  std::unique_ptr<rad::cii::Subscriber<fcfif::DrotTopicUnion>> m_subscriber;
75  std::unique_ptr<rad::cii::Subscriber<fcfif::MotorPositionTopic>> m_motor_subscriber;
76 
77 };
78 
79 #endif // DROT_WDG_H
virtual void UpdateData(QList< QVariant > &data_list)
Definition: drot.cpp:173
void UpdateEncoders(double encoders)
Definition: drot.cpp:317
DrotWdg(QWidget *parent=0, std::string name="undefined", std::string filename="undefined_file", std::string server_id="undefined", int cmd_timeout=60000)
Definition: drot.cpp:22
Definition: device.h:112
void GetMessage(std::shared_ptr<::elt::mal::Mal > mal, std::vector< std::shared_ptr<::fcfif::FcsUnion >> &setup_buffer, bool ignoreChecked=false)
Definition: drot.cpp:92
void UpdateTrackMode(int mode)
Definition: drot.cpp:289
virtual void SetEnable(bool flag)
Definition: drot.cpp:359
virtual void GetSubordinatedDevices(QStringList &dev_list)
Definition: drot.cpp:415
void HandleLaunchButton()
Definition: drot.cpp:333
void UpdateSpinner(int substate)
Definition: drot.cpp:257
virtual ~DrotWdg()
Definition: drot.cpp:88
void SetActive(int index)
Definition: drot.cpp:206
void UpdateNamedPos(QString named_pos)
Definition: drot.cpp:321
virtual std::vector< std::string > GetDbAttributes(std::string server_id)
Definition: drot.cpp:142
void UpdateSubstate(int substate)
Definition: drot.cpp:227
void UpdateOptions(int mode)
Definition: drot.cpp:402
Definition: drot.h:28
void UpdatePosition(double position)
Definition: drot.cpp:313
WDGLIB DeviceWdg class declaration file.
virtual void StartSubscription()
Definition: drot.cpp:420
void UpdateAlpha(double position)
Definition: drot.cpp:325
void UpdateDelta(double position)
Definition: drot.cpp:329