Loading services/vibratorservice/VibratorHalWrapper.cpp +13 −5 Original line number Diff line number Diff line Loading @@ -131,9 +131,10 @@ HalResult<void> HalWrapper::performPwleEffect(const std::vector<PrimitivePwle>&, return HalResult<void>::unsupported(); } HalResult<void> HalWrapper::composePwleV2(const CompositePwleV2&, const std::function<void()>&) { HalResult<milliseconds> HalWrapper::composePwleV2(const CompositePwleV2&, const std::function<void()>&) { ALOGV("Skipped composePwleV2 because it's not available in Vibrator HAL"); return HalResult<void>::unsupported(); return HalResult<milliseconds>::unsupported(); } HalResult<Capabilities> HalWrapper::getCapabilities() { Loading Loading @@ -359,11 +360,18 @@ HalResult<void> AidlHalWrapper::performPwleEffect(const std::vector<PrimitivePwl return HalResultFactory::fromStatus(getHal()->composePwle(primitives, cb)); } HalResult<void> AidlHalWrapper::composePwleV2(const CompositePwleV2& composite, const std::function<void()>& completionCallback) { HalResult<milliseconds> AidlHalWrapper::composePwleV2( const CompositePwleV2& composite, const std::function<void()>& completionCallback) { // This method should always support callbacks, so no need to double check. auto cb = ndk::SharedRefBase::make<HalCallbackWrapper>(completionCallback); return HalResultFactory::fromStatus(getHal()->composePwleV2(composite, cb)); milliseconds totalDuration(0); for (const auto& primitive : composite.pwlePrimitives) { totalDuration += milliseconds(primitive.timeMillis); } return HalResultFactory::fromStatus<milliseconds>(getHal()->composePwleV2(composite, cb), totalDuration); } HalResult<Capabilities> AidlHalWrapper::getCapabilitiesInternal() { Loading services/vibratorservice/include/vibratorservice/VibratorHalWrapper.h +5 −4 Original line number Diff line number Diff line Loading @@ -423,8 +423,8 @@ public: virtual HalResult<void> performPwleEffect(const std::vector<PrimitivePwle>& primitives, const std::function<void()>& completionCallback); virtual HalResult<void> composePwleV2(const CompositePwleV2& composite, const std::function<void()>& completionCallback); virtual HalResult<std::chrono::milliseconds> composePwleV2( const CompositePwleV2& composite, const std::function<void()>& completionCallback); protected: // Shared pointer to allow CallbackScheduler to outlive this wrapper. Loading Loading @@ -511,7 +511,8 @@ public: const std::vector<PrimitivePwle>& primitives, const std::function<void()>& completionCallback) override final; HalResult<void> composePwleV2(const CompositePwleV2& composite, HalResult<std::chrono::milliseconds> composePwleV2( const CompositePwleV2& composite, const std::function<void()>& completionCallback) override final; protected: Loading services/vibratorservice/test/VibratorHalWrapperAidlTest.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -787,5 +787,6 @@ TEST_F(VibratorHalWrapperAidlTest, TestComposePwleV2) { result = mWrapper->composePwleV2(composite, callback); ASSERT_TRUE(result.isOk()); ASSERT_EQ(300ms, result.value()); ASSERT_EQ(1, *callbackCounter.get()); } Loading
services/vibratorservice/VibratorHalWrapper.cpp +13 −5 Original line number Diff line number Diff line Loading @@ -131,9 +131,10 @@ HalResult<void> HalWrapper::performPwleEffect(const std::vector<PrimitivePwle>&, return HalResult<void>::unsupported(); } HalResult<void> HalWrapper::composePwleV2(const CompositePwleV2&, const std::function<void()>&) { HalResult<milliseconds> HalWrapper::composePwleV2(const CompositePwleV2&, const std::function<void()>&) { ALOGV("Skipped composePwleV2 because it's not available in Vibrator HAL"); return HalResult<void>::unsupported(); return HalResult<milliseconds>::unsupported(); } HalResult<Capabilities> HalWrapper::getCapabilities() { Loading Loading @@ -359,11 +360,18 @@ HalResult<void> AidlHalWrapper::performPwleEffect(const std::vector<PrimitivePwl return HalResultFactory::fromStatus(getHal()->composePwle(primitives, cb)); } HalResult<void> AidlHalWrapper::composePwleV2(const CompositePwleV2& composite, const std::function<void()>& completionCallback) { HalResult<milliseconds> AidlHalWrapper::composePwleV2( const CompositePwleV2& composite, const std::function<void()>& completionCallback) { // This method should always support callbacks, so no need to double check. auto cb = ndk::SharedRefBase::make<HalCallbackWrapper>(completionCallback); return HalResultFactory::fromStatus(getHal()->composePwleV2(composite, cb)); milliseconds totalDuration(0); for (const auto& primitive : composite.pwlePrimitives) { totalDuration += milliseconds(primitive.timeMillis); } return HalResultFactory::fromStatus<milliseconds>(getHal()->composePwleV2(composite, cb), totalDuration); } HalResult<Capabilities> AidlHalWrapper::getCapabilitiesInternal() { Loading
services/vibratorservice/include/vibratorservice/VibratorHalWrapper.h +5 −4 Original line number Diff line number Diff line Loading @@ -423,8 +423,8 @@ public: virtual HalResult<void> performPwleEffect(const std::vector<PrimitivePwle>& primitives, const std::function<void()>& completionCallback); virtual HalResult<void> composePwleV2(const CompositePwleV2& composite, const std::function<void()>& completionCallback); virtual HalResult<std::chrono::milliseconds> composePwleV2( const CompositePwleV2& composite, const std::function<void()>& completionCallback); protected: // Shared pointer to allow CallbackScheduler to outlive this wrapper. Loading Loading @@ -511,7 +511,8 @@ public: const std::vector<PrimitivePwle>& primitives, const std::function<void()>& completionCallback) override final; HalResult<void> composePwleV2(const CompositePwleV2& composite, HalResult<std::chrono::milliseconds> composePwleV2( const CompositePwleV2& composite, const std::function<void()>& completionCallback) override final; protected: Loading
services/vibratorservice/test/VibratorHalWrapperAidlTest.cpp +1 −0 Original line number Diff line number Diff line Loading @@ -787,5 +787,6 @@ TEST_F(VibratorHalWrapperAidlTest, TestComposePwleV2) { result = mWrapper->composePwleV2(composite, callback); ASSERT_TRUE(result.isOk()); ASSERT_EQ(300ms, result.value()); ASSERT_EQ(1, *callbackCounter.get()); }