added compass support added ui elements for gps and compass added support for writing sensor data
44 lines
842 B
C++
44 lines
842 B
C++
#ifndef COMPASSSENSORDUMMY_H
|
|
#define COMPASSSENSORDUMMY_H
|
|
|
|
#include "../CompassSensor.h"
|
|
#include "RandomSensor.h"
|
|
#include <random>
|
|
|
|
class CompassSensorDummy : public RandomSensor<CompassData, CompassSensor> {
|
|
|
|
private:
|
|
|
|
std::thread thread;
|
|
|
|
/** hidden ctor */
|
|
CompassSensorDummy() : RandomSensor(Timestamp::fromMS(100)) {
|
|
;
|
|
}
|
|
|
|
public:
|
|
|
|
/** singleton access */
|
|
static CompassSensorDummy& get() {
|
|
static CompassSensorDummy compass;
|
|
return compass;
|
|
}
|
|
|
|
protected:
|
|
|
|
std::minstd_rand gen;
|
|
std::uniform_real_distribution<float> distNoise = std::uniform_real_distribution<float>(-0.07, +0.07);
|
|
|
|
CompassData getRandomEntry() override {
|
|
|
|
const Timestamp ts = Timestamp::fromRunningTime();
|
|
|
|
const float azimuth = 0 + std::sin(ts.sec()) * 0.5 + distNoise(gen);
|
|
return CompassData(azimuth);
|
|
|
|
}
|
|
|
|
};
|
|
|
|
#endif // COMPASSSENSORDUMMY_H
|