vibrator: aidl: Add get f0 and get Q APIs
Add APIs to get f0, resonant frequency, and Q factor.
Bug: 178826612
Test: m and verify using idlcli
Change-Id: I834693693a91871f988504d2d9448497ef10e7fc
diff --git a/vibrator/aidl/vts/VtsHalVibratorTargetTest.cpp b/vibrator/aidl/vts/VtsHalVibratorTargetTest.cpp
index adbb0cf..2540d0b 100644
--- a/vibrator/aidl/vts/VtsHalVibratorTargetTest.cpp
+++ b/vibrator/aidl/vts/VtsHalVibratorTargetTest.cpp
@@ -538,6 +538,28 @@
}
}
+TEST_P(VibratorAidl, GetResonantFrequency) {
+ float resonantFrequency;
+ Status status = vibrator->getResonantFrequency(&resonantFrequency);
+ if (capabilities & IVibrator::CAP_GET_RESONANT_FREQUENCY) {
+ ASSERT_NE(resonantFrequency, 0);
+ EXPECT_EQ(status.exceptionCode(), Status::EX_NONE);
+ } else {
+ EXPECT_EQ(status.exceptionCode(), Status::EX_UNSUPPORTED_OPERATION);
+ }
+}
+
+TEST_P(VibratorAidl, GetQFactor) {
+ float qFactor;
+ Status status = vibrator->getQFactor(&qFactor);
+ if (capabilities & IVibrator::CAP_GET_Q_FACTOR) {
+ ASSERT_NE(qFactor, 0);
+ EXPECT_EQ(status.exceptionCode(), Status::EX_NONE);
+ } else {
+ EXPECT_EQ(status.exceptionCode(), Status::EX_UNSUPPORTED_OPERATION);
+ }
+}
+
std::vector<std::tuple<int32_t, int32_t>> GenerateVibratorMapping() {
std::vector<std::tuple<int32_t, int32_t>> tuples;
auto managerAidlNames = android::getAidlHalInstanceNames(IVibratorManager::descriptor);