Flair
Framework Libre Air
SimuGps.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 SIMUGPS_H
14 #define SIMUGPS_H
15 
16 #include <Thread.h>
17 #include <NmeaGps.h>
18 
19 namespace flair {
20  namespace core {
21  class FrameworkManager;
22  class SharedMem;
23  }
24  namespace gui {
25  class SpinBox;
26  class DoubleSpinBox;
27  }
28 }
29 
30 namespace flair {
31 namespace sensor {
36 class SimuGps : public core::Thread, public NmeaGps {
37 public:
49  SimuGps(const core::FrameworkManager *parent, std::string name,
50  NmeaGps::NMEAFlags_t NMEAFlags, uint32_t deviceId,uint8_t priority);
51 
62  SimuGps(const core::IODevice *parent, std::string name, uint32_t deviceId);
63 
68  ~SimuGps();
69 
70 private:
78  void UpdateFrom(const core::io_data *data);
79 
86  void Run(void);
87 
88  typedef struct {
89  float e;
90  float n;
91  float u;
92  float ve;
93  float vn;
94  } gps_states_t;
95 
96  core::SharedMem *shmem;
97  gui::SpinBox *dataRate,*fixQuality,*numberOfSatellites;
98  gui::DoubleSpinBox *latitudeRef,*longitudeRef,*altitudeRef;
99 };
100 } // end namespace sensor
101 } // end namespace framewor
102 #endif // SIMUGPS_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
~SimuGps()
Destructor.
Class displaying a QSpinBox on the ground station.
Definition: SpinBox.h:28
Class for a simulation GPS.
Definition: SimuGps.h:36
Base class for GPS using NMEA sentances.
Base class for GPS using NMEA sentances.
Definition: NmeaGps.h:45
NMEAFlags_t
NMEA flags.
Definition: NmeaGps.h:51
Main class of the Framework library.
Definition: FrameworkManager.h:45
Abstract class for a thread.
Class defining a shared memory.
Definition: SharedMem.h:32
Abstract class for a thread.
Definition: Thread.h:38
Class displaying a QDoubleSpinBox on the ground station.
Definition: DoubleSpinBox.h:28
SimuGps(const core::FrameworkManager *parent, std::string name, NmeaGps::NMEAFlags_t NMEAFlags, uint32_t deviceId, uint8_t priority)
Constructor.