Flair
Framework Libre Air
Ahrs.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 AHRS_H
14 #define AHRS_H
15 
16 #include <IODevice.h>
17 #include <DataPlot.h>
18 
19 namespace flair {
20  namespace core {
21  class AhrsData;
22  }
23  namespace gui {
24  class Tab;
25  class DataPlot1D;
26  }
27  namespace sensor {
28  class Imu;
29  }
30 }
31 
32 class Ahrs_impl;
33 
34 namespace flair {
35 namespace filter {
44 class Ahrs : public core::IODevice {
45 public:
54  Ahrs(const sensor::Imu *parent, std::string name);
55 
60  ~Ahrs();
61 
67  const sensor::Imu *GetImu(void) const;
68 
74  const core::AhrsData *GetDatas(void) const;
75 
82  void LockUserInterface(void) const;
83 
88  void UnlockUserInterface(void) const;
89 
97  void UseDefaultPlot(void);
98 
107  void AddPlot(const core::AhrsData *ahrsData, gui::DataPlot::Color_t color);
108 
117  gui::DataPlot1D *RollPlot(void) const;
118 
127  gui::DataPlot1D *PitchPlot(void) const;
128 
137  gui::DataPlot1D *YawPlot(void) const;
138 
147  gui::DataPlot1D *WXPlot(void) const;
148 
157  gui::DataPlot1D *WYPlot(void) const;
158 
167  gui::DataPlot1D *WZPlot(void) const;
168 
169 protected:
177  void GetDatas(core::AhrsData **ahrsData) const;
178 
179 private:
180  class Ahrs_impl *pimpl_;
181 };
182 } // end namespace filter
183 } // end namespace flair
184 #endif // AHRS_H
gui::DataPlot1D * YawPlot(void) const
Yaw plot.
void AddPlot(const core::AhrsData *ahrsData, gui::DataPlot::Color_t color)
Add plot.
Abstract class for input/ouput system.
Definition: IODevice.h:45
namespace of the flair Framework
Definition: Ahrs.h:19
void LockUserInterface(void) const
Lock the graphical user interface.
Class defining AHRS datas.
Definition: AhrsData.h:30
Base class for Imu.
Definition: Imu.h:44
Abstract class for input/ouput system.
gui::DataPlot1D * WXPlot(void) const
Rotation speed around x axis plot.
Abstract class for AHRS.
Definition: Ahrs.h:44
gui::DataPlot1D * RollPlot(void) const
Roll plot.
void UseDefaultPlot(void)
Use default plot.
gui::DataPlot1D * WZPlot(void) const
Rotation speed around z axis plot.
gui::DataPlot1D * WYPlot(void) const
Rotation speed around y axis plot.
void UnlockUserInterface(void) const
Unlock the graphical user interface.
const sensor::Imu * GetImu(void) const
Get parent Imu.
Color_t
Types of colors.
Definition: DataPlot.h:40
Abstract class to display plots on ground station.
gui::DataPlot1D * PitchPlot(void) const
Pitch plot.
Class displaying a 1D plot on the ground station.
Definition: DataPlot1D.h:33
Class displaying a QTab on the ground station.
Definition: Tab.h:29
~Ahrs()
Destructor.
const core::AhrsData * GetDatas(void) const
Get ahrs datas.
Ahrs(const sensor::Imu *parent, std::string name)
Constructor.