Flair
Framework Libre Air
SimulatedNmeaGps.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 SIMULATEDNMEAGPS_H
14 #define SIMULATEDNMEAGPS_H
15 
16 #include <Thread.h>
17 #include <NmeaGpsNEDPosition.h>
18 
19 namespace flair {
20  namespace core {
21  class SharedMem;
22  }
23  namespace gui {
24  class SpinBox;
25  class DoubleSpinBox;
26  }
27 }
28 
29 namespace flair {
30 namespace sensor {
36 public:
48  SimulatedNmeaGps(std::string name,uint32_t modelId,uint32_t deviceId,uint8_t priority);
49 
55 
56 private:
64  void UpdateFrom(const core::io_data *data) override{};
65 
72  void Run(void) override;
73 
74  typedef struct {
75  float n;
76  float e;
77  float d;
78  float vn;
79  float ve;
80  } gps_states_t;
81 
82  std::string ShMemName(uint32_t modelId,uint32_t deviceId);
83 
84  core::SharedMem *shmem;
85  gui::SpinBox *dataRate,*fixQuality,*numberOfSatellites;
86  gui::DoubleSpinBox *latitudeRef,*longitudeRef,*altitudeRef,*magneticDeclination;
87 };
88 } // end namespace sensor
89 } // end namespace flair
90 #endif // SIMULATEDNMEAGPS_H
Abstract class for data types.
Definition: io_data.h:94
namespace of the flair Framework
Definition: Ahrs.h:19
Class displaying a QSpinBox on the ground station.
Definition: SpinBox.h:28
SimulatedNmeaGps(std::string name, uint32_t modelId, uint32_t deviceId, uint8_t priority)
Constructor.
Base class for NEDPosition using a NMEA GPS.
Abstract class for a thread.
Class defining a shared memory.
Definition: SharedMem.h:32
Class for a simulation GPS.
Definition: SimulatedNmeaGps.h:35
Abstract class for a thread.
Definition: Thread.h:37
Class displaying a QDoubleSpinBox on the ground station.
Definition: DoubleSpinBox.h:28
Base class for NEDPosition using a NMEA GPS.
Definition: NmeaGpsNEDPosition.h:42