a lot!!! of changes

added main menu
added debug display
many debug widgets for plotting live data
worked on android live sensors
added offline-data sensor feeding
some dummy data sensors
worked on the map display
added ui debug for grid-points, particles and weights
added a cool dude to display the estimation
added real filtering based on the Indoor components
c++11 fixes for android compilation
online and offline filtering support
new resampling technique for testing
map loading via dialog
This commit is contained in:
kazu
2016-09-16 19:30:04 +02:00
parent d910e88220
commit 075d8bb633
90 changed files with 4735 additions and 624 deletions

View File

@@ -3,6 +3,9 @@
#include <vector>
#include <QObject>
#include <Indoor/data/Timestamp.h>
template <typename T> class Sensor;
/** listen for sensor events */
template <typename T> class SensorListener {
@@ -10,7 +13,7 @@ template <typename T> class SensorListener {
public:
/** incoming sensor data */
virtual void onSensorData(const T& data) = 0;
virtual void onSensorData(Sensor<T>* sensor, const Timestamp ts, const T& data) = 0;
};
@@ -38,9 +41,17 @@ public:
protected:
/** inform all attached listeners */
void informListeners(const T& sensorData) const {
void informListeners(const T& sensorData) {
const Timestamp now = Timestamp::fromRunningTime();
for (SensorListener<T>* l : listeners) {
l->onSensorData(sensorData);
l->onSensorData(this, now, sensorData);
}
}
/** inform all attached listeners. call this if you know the timestamp */
void informListeners(const Timestamp ts, const T& sensorData) {
for (SensorListener<T>* l : listeners) {
l->onSensorData(this, ts, sensorData);
}
}