summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Erik Staats <estaats@google.com> 2022-02-04 06:39:24 -0800
committer Erik Staats <estaats@google.com> 2022-02-08 14:20:32 -0800
commit13ca5df169b2d55ac5787189c12b70df5c19b18d (patch)
tree90b71d5ddc3432b73ac1435b443fce18724bf16e
parent34c22039a24bce7531f2312aa91b15cb844632ad (diff)
Add ASensorManager_getDynamicSensorList.
Bug: 217890463 Test: Used uhid-sample to add a dynamic sensor and verified it can be used with sensor_test. Change-Id: Ia930c6993c97527381d30e33f817f37632cb8396
-rw-r--r--native/android/libandroid.map.txt1
-rw-r--r--native/android/sensor.cpp10
2 files changed, 11 insertions, 0 deletions
diff --git a/native/android/libandroid.map.txt b/native/android/libandroid.map.txt
index b7beb6e1a6a8..3009a36bae2c 100644
--- a/native/android/libandroid.map.txt
+++ b/native/android/libandroid.map.txt
@@ -205,6 +205,7 @@ LIBANDROID {
ASensorManager_destroyEventQueue;
ASensorManager_getDefaultSensor;
ASensorManager_getDefaultSensorEx; # introduced=21
+ ASensorManager_getDynamicSensorList; # introduced=33
ASensorManager_getInstance;
ASensorManager_getInstanceForPackage; # introduced=26
ASensorManager_getSensorList;
diff --git a/native/android/sensor.cpp b/native/android/sensor.cpp
index 63082fd70bc6..968de34f5d69 100644
--- a/native/android/sensor.cpp
+++ b/native/android/sensor.cpp
@@ -83,6 +83,16 @@ int ASensorManager_getSensorList(ASensorManager* manager, ASensorList* list) {
return c;
}
+ssize_t ASensorManager_getDynamicSensorList(ASensorManager* manager, ASensorList* list) {
+ RETURN_IF_MANAGER_IS_NULL(android::BAD_VALUE);
+ Sensor const* const* l;
+ ssize_t c = static_cast<SensorManager*>(manager)->getDynamicSensorList(&l);
+ if (list) {
+ *list = reinterpret_cast<ASensorList>(l);
+ }
+ return c;
+}
+
ASensor const* ASensorManager_getDefaultSensor(ASensorManager* manager, int type) {
RETURN_IF_MANAGER_IS_NULL(nullptr);
return static_cast<SensorManager*>(manager)->getDefaultSensor(type);