Flair
Framework Libre Air
UgvControls.h
Go to the documentation of this file.
1 // %flair:license{
2 // This file is part of the Flair framework distributed under the
3 // CECILL-C License, Version 1.0.
4 // %flair:license}
13 #ifndef UGVCONTROLS_H
14 #define UGVCONTROLS_H
15 
16 #include <IODevice.h>
17 
18 namespace flair {
19 namespace core {
20  class Matrix;
21 }
22 namespace gui {
23  class Tab;
24 }
25 }
26 
27 
28 namespace flair {
29 namespace actuator {
34 class UgvControls : public core::IODevice {
35 
36 public:
44  UgvControls(std::string name);
45 
50  ~UgvControls();
51 
56  void UseDefaultPlot(void);
57 
65  core::Matrix *Output(void) const;
66 
73  virtual void SetControls(float speed,float turn)=0;
74 
75 protected:
76  core::Matrix *output;
77 
78 private:
86  void UpdateFrom(const core::io_data *data) override{};
87 
88  gui::Tab *mainTab;
89 };
90 } // end namespace actuator
91 } // end namespace flair
92 #endif // UGVCONTROLS_H
Abstract class for data types.
Definition: io_data.h:94
Abstract class for input/ouput system.
Definition: IODevice.h:45
namespace of the flair Framework
Definition: Ahrs.h:19
Base class for ugv controls.
Definition: UgvControls.h:34
Abstract class for input/ouput system.
core::Matrix * Output(void) const
Output from motors.
virtual void SetControls(float speed, float turn)=0
Set controls values.
void UseDefaultPlot(void)
Use default plot.
Class defining a matrix.
Definition: Matrix.h:31
UgvControls(std::string name)
Constructor.
Class displaying a QTab on the ground station.
Definition: Tab.h:29