Some fixes to power manager lib code
- Run clang-format on all recently added files;
- Move all new classes to android::power namespace and remove Power
prefix from all classes and enums;
- Add virtual function specifier to overrides of virtual members;
- Add missing virtual destructors;
- Remove namespaces and aliases from public api of header files;
- Delete constructor and destructor of PowerHalLoader;
- Add helper functions to convert hal results in wrapper
implementations;
- Merge test targets to single libpowermanager_test target;
Bug: 150878220
Test: atest libpowermanager_test
Change-Id: Ie2b5ad69f3b05d5f6b576671bc98e0f83b274152
diff --git a/services/powermanager/PowerHalController.cpp b/services/powermanager/PowerHalController.cpp
index d26d582..178f545 100644
--- a/services/powermanager/PowerHalController.cpp
+++ b/services/powermanager/PowerHalController.cpp
@@ -15,40 +15,39 @@
*/
#define LOG_TAG "PowerHalController"
-#include <utils/Log.h>
-
#include <android/hardware/power/1.1/IPower.h>
#include <android/hardware/power/Boost.h>
#include <android/hardware/power/IPower.h>
#include <android/hardware/power/Mode.h>
-
#include <powermanager/PowerHalController.h>
#include <powermanager/PowerHalLoader.h>
+#include <utils/Log.h>
-using android::hardware::power::Boost;
-using android::hardware::power::Mode;
+using namespace android::hardware::power;
namespace android {
+namespace power {
+
// -------------------------------------------------------------------------------------------------
-std::unique_ptr<PowerHalWrapper> PowerHalConnector::connect() {
- sp<IPowerAidl> halAidl = PowerHalLoader::loadAidl();
+std::unique_ptr<HalWrapper> HalConnector::connect() {
+ sp<IPower> halAidl = PowerHalLoader::loadAidl();
if (halAidl) {
- return std::make_unique<AidlPowerHalWrapper>(halAidl);
+ return std::make_unique<AidlHalWrapper>(halAidl);
}
- sp<IPowerV1_0> halHidlV1_0 = PowerHalLoader::loadHidlV1_0();
- sp<IPowerV1_1> halHidlV1_1 = PowerHalLoader::loadHidlV1_1();
+ sp<V1_0::IPower> halHidlV1_0 = PowerHalLoader::loadHidlV1_0();
+ sp<V1_1::IPower> halHidlV1_1 = PowerHalLoader::loadHidlV1_1();
if (halHidlV1_1) {
- return std::make_unique<HidlPowerHalWrapperV1_1>(halHidlV1_0, halHidlV1_1);
+ return std::make_unique<HidlHalWrapperV1_1>(halHidlV1_0, halHidlV1_1);
}
if (halHidlV1_0) {
- return std::make_unique<HidlPowerHalWrapperV1_0>(halHidlV1_0);
+ return std::make_unique<HidlHalWrapperV1_0>(halHidlV1_0);
}
return nullptr;
}
-void PowerHalConnector::reset() {
+void HalConnector::reset() {
PowerHalLoader::unloadAll();
}
@@ -58,8 +57,9 @@
initHal();
}
-// Check validity of current handle to the power HAL service, and create a new one if necessary.
-std::shared_ptr<PowerHalWrapper> PowerHalController::initHal() {
+// Check validity of current handle to the power HAL service, and create a new
+// one if necessary.
+std::shared_ptr<HalWrapper> PowerHalController::initHal() {
std::lock_guard<std::mutex> lock(mConnectedHalMutex);
if (mConnectedHal == nullptr) {
mConnectedHal = mHalConnector->connect();
@@ -71,10 +71,10 @@
return mConnectedHal;
}
-// Check if a call to Power HAL function failed; if so, log the failure and invalidate the
-// current Power HAL handle.
-PowerHalResult PowerHalController::processHalResult(PowerHalResult result, const char* fnName) {
- if (result == PowerHalResult::FAILED) {
+// Check if a call to Power HAL function failed; if so, log the failure and
+// invalidate the current Power HAL handle.
+HalResult PowerHalController::processHalResult(HalResult result, const char* fnName) {
+ if (result == HalResult::FAILED) {
ALOGE("%s() failed: power HAL service not available.", fnName);
std::lock_guard<std::mutex> lock(mConnectedHalMutex);
// Drop Power HAL handle. This will force future api calls to reconnect.
@@ -84,16 +84,18 @@
return result;
}
-PowerHalResult PowerHalController::setBoost(Boost boost, int32_t durationMs) {
- std::shared_ptr<PowerHalWrapper> handle = initHal();
+HalResult PowerHalController::setBoost(Boost boost, int32_t durationMs) {
+ std::shared_ptr<HalWrapper> handle = initHal();
auto result = handle->setBoost(boost, durationMs);
return processHalResult(result, "setBoost");
}
-PowerHalResult PowerHalController::setMode(Mode mode, bool enabled) {
- std::shared_ptr<PowerHalWrapper> handle = initHal();
+HalResult PowerHalController::setMode(Mode mode, bool enabled) {
+ std::shared_ptr<HalWrapper> handle = initHal();
auto result = handle->setMode(mode, enabled);
return processHalResult(result, "setMode");
}
-}; // namespace android
+} // namespace power
+
+} // namespace android