Flair
Framework Libre Air
Gx3_25_imu.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 GX3_25_IMU_H
14 #define GX3_25_IMU_H
15 
16 #include <Imu.h>
17 #include <Thread.h>
18 
19 namespace flair {
20 namespace core {
21 class FrameworkManager;
22 class SerialPort;
23 }
24 }
25 
26 class Gx3_25_imu_impl;
27 
28 namespace flair {
29 namespace sensor {
34 class Gx3_25_imu : public Imu, public core::Thread {
35  friend class ::Gx3_25_imu_impl;
36 
37 public:
42  enum Command_t {
45  0xc8,
46  Quaternion = 0xdf,
47  };
48 
59  Gx3_25_imu(std::string name,
60  core::SerialPort *serialport, Command_t command, uint8_t priority);
61 
66  ~Gx3_25_imu();
67 
68 private:
75  void Run(void);
76 
84  void UpdateFrom(const core::io_data *data){};
85 
86  class Gx3_25_imu_impl *pimpl_;
87 };
88 } // end namespace sensor
89 } // end namespace flair
90 
91 #endif // GX3_25_IMU_H
Abstract class for data types.
Definition: io_data.h:94
Command_t
Command for the continuous mode.
Definition: Gx3_25_imu.h:42
namespace of the flair Framework
Definition: Ahrs.h:19
Base class for Imu.
Gx3_25_imu(std::string name, core::SerialPort *serialport, Command_t command, uint8_t priority)
Constructor.
Base class for Imu.
Definition: Imu.h:44
Base class for serial port.
Definition: SerialPort.h:25
Abstract class for a thread.
Abstract class for a thread.
Definition: Thread.h:38
Class for 3dmgx3-25 Imu.
Definition: Gx3_25_imu.h:34
Definition: Gx3_25_imu.h:46