diff options
author | Benjamin Schwartz <bsschwar@google.com> | 2021-02-08 15:24:08 -0800 |
---|---|---|
committer | Benjamin Schwartz <bsschwar@google.com> | 2021-03-08 14:35:57 -0800 |
commit | 6a35f191ebe3a783407bdb589e52aa43d8e7d739 (patch) | |
tree | 18a2464f95c0f46ce23b69534121273e815026ca /powerstats/PowerStatsAidl.cpp | |
parent | cba15fa36224781ac7f9ffd855a03e341aca0719 (diff) | |
download | pixel-6a35f191ebe3a783407bdb589e52aa43d8e7d739.tar.gz |
powerstats: Create vendor state residency provider
Needed to change ::android::sp to shared_ptr in order to use the aidl
interface ndk_platform backend.
Bug: 167218032
Bug: 168834034
Test: adb shell dumpsys android.hardware.power.stats.IPowerStats/default
Test: killed power.stats and bluetooth services and verified that
providers are re-registered.
Change-Id: Ia028e589b29b0163cd53e3f8b4f8bb764b1a11f2
Diffstat (limited to 'powerstats/PowerStatsAidl.cpp')
-rw-r--r-- | powerstats/PowerStatsAidl.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/powerstats/PowerStatsAidl.cpp b/powerstats/PowerStatsAidl.cpp index e61c6cc1..8b0519dd 100644 --- a/powerstats/PowerStatsAidl.cpp +++ b/powerstats/PowerStatsAidl.cpp @@ -36,7 +36,7 @@ namespace hardware { namespace power { namespace stats { -void PowerStats::addStateResidencyDataProvider(sp<IStateResidencyDataProvider> p) { +void PowerStats::addStateResidencyDataProvider(std::shared_ptr<IStateResidencyDataProvider> p) { if (!p) { return; } @@ -109,14 +109,14 @@ ndk::ScopedAStatus PowerStats::getStateResidency(const std::vector<int32_t> &in_ return ndk::ScopedAStatus::fromStatus(err); } -void PowerStats::addEnergyConsumer(sp<IEnergyConsumer> p) { +void PowerStats::addEnergyConsumer(std::shared_ptr<IEnergyConsumer> p) { if (!p) { return; } std::pair<EnergyConsumerType, std::string> info = p->getInfo(); - int32_t count = - count_if(mEnergyConsumers.begin(), mEnergyConsumers.end(), - [info](sp<IEnergyConsumer> c) { return info.first == c->getInfo().first; }); + + int32_t count = count_if(mEnergyConsumerInfos.begin(), mEnergyConsumerInfos.end(), + [&info](const EnergyConsumer &c) { return info.first == c.type; }); int32_t id = mEnergyConsumers.size(); mEnergyConsumerInfos.emplace_back( EnergyConsumer{.id = id, .ordinal = count, .type = info.first, .name = info.second}); |