9-axis sensor fusion with Kalman filter
Add support for 9-axis gravity and linear-acceleration sensors
virtual orientation sensor using 9-axis fusion
Change-Id: I6717539373fce781c10e97b6fa59f68a831a592f
diff --git a/include/gui/Sensor.h b/include/gui/Sensor.h
index 2de07b1..e59757a 100644
--- a/include/gui/Sensor.h
+++ b/include/gui/Sensor.h
@@ -21,8 +21,9 @@
#include <sys/types.h>
#include <utils/Errors.h>
-#include <utils/String8.h>
#include <utils/Flattenable.h>
+#include <utils/String8.h>
+#include <utils/Timers.h>
#include <hardware/sensors.h>
@@ -64,6 +65,8 @@
float getResolution() const;
float getPowerUsage() const;
int32_t getMinDelay() const;
+ nsecs_t getMinDelayNs() const;
+ int32_t getVersion() const;
// Flattenable interface
virtual size_t getFlattenedSize() const;
@@ -83,6 +86,7 @@
float mResolution;
float mPower;
int32_t mMinDelay;
+ int32_t mVersion;
};
// ----------------------------------------------------------------------------
diff --git a/libs/gui/Sensor.cpp b/libs/gui/Sensor.cpp
index b1f37ff..f9a2c04 100644
--- a/libs/gui/Sensor.cpp
+++ b/libs/gui/Sensor.cpp
@@ -89,6 +89,14 @@
return mMinDelay;
}
+nsecs_t Sensor::getMinDelayNs() const {
+ return getMinDelay() * 1000;
+}
+
+int32_t Sensor::getVersion() const {
+ return mVersion;
+}
+
size_t Sensor::getFlattenedSize() const
{
return sizeof(int32_t) + ((mName.length() + 3) & ~3) +