Merge "BatteryStatsImpl: Add parcel methods for DisplayBatteryStats." into tm-dev-plus-aosp

This commit is contained in:
TreeHugger Robot
2022-06-22 00:12:27 +00:00
committed by Android (Google) Code Review

View File

@@ -166,8 +166,8 @@ public class BatteryStatsImpl extends BatteryStats {
// In-memory Parcel magic number, used to detect attempts to unmarshall bad data // In-memory Parcel magic number, used to detect attempts to unmarshall bad data
private static final int MAGIC = 0xBA757475; // 'BATSTATS' private static final int MAGIC = 0xBA757475; // 'BATSTATS'
// Current on-disk Parcel version // Current on-disk Parcel version. Must be updated when the format of the parcelable changes
static final int VERSION = 208; public static final int VERSION = 209;
// The maximum number of names wakelocks we will keep track of // The maximum number of names wakelocks we will keep track of
// per uid; once the limit is reached, we batch the remaining wakelocks // per uid; once the limit is reached, we batch the remaining wakelocks
@@ -884,6 +884,28 @@ public class BatteryStatsImpl extends BatteryStats {
screenBrightnessTimers[i].reset(false, elapsedRealtimeUs); screenBrightnessTimers[i].reset(false, elapsedRealtimeUs);
} }
} }
/**
* Write data to summary parcel
*/
public void writeSummaryToParcel(Parcel out, long elapsedRealtimeUs) {
screenOnTimer.writeSummaryFromParcelLocked(out, elapsedRealtimeUs);
screenDozeTimer.writeSummaryFromParcelLocked(out, elapsedRealtimeUs);
for (int i = 0; i < NUM_SCREEN_BRIGHTNESS_BINS; i++) {
screenBrightnessTimers[i].writeSummaryFromParcelLocked(out, elapsedRealtimeUs);
}
}
/**
* Read data from summary parcel
*/
public void readSummaryFromParcel(Parcel in) {
screenOnTimer.readSummaryFromParcelLocked(in);
screenDozeTimer.readSummaryFromParcelLocked(in);
for (int i = 0; i < NUM_SCREEN_BRIGHTNESS_BINS; i++) {
screenBrightnessTimers[i].readSummaryFromParcelLocked(in);
}
}
} }
DisplayBatteryStats[] mPerDisplayBatteryStats; DisplayBatteryStats[] mPerDisplayBatteryStats;
@@ -17275,6 +17297,10 @@ public class BatteryStatsImpl extends BatteryStats {
for (int i=0; i<NUM_SCREEN_BRIGHTNESS_BINS; i++) { for (int i=0; i<NUM_SCREEN_BRIGHTNESS_BINS; i++) {
mScreenBrightnessTimer[i].readSummaryFromParcelLocked(in); mScreenBrightnessTimer[i].readSummaryFromParcelLocked(in);
} }
final int numDisplays = in.readInt();
for (int i = 0; i < numDisplays; i++) {
mPerDisplayBatteryStats[i].readSummaryFromParcel(in);
}
mInteractive = false; mInteractive = false;
mInteractiveTimer.readSummaryFromParcelLocked(in); mInteractiveTimer.readSummaryFromParcelLocked(in);
mPhoneOn = false; mPhoneOn = false;
@@ -17784,6 +17810,11 @@ public class BatteryStatsImpl extends BatteryStats {
for (int i=0; i<NUM_SCREEN_BRIGHTNESS_BINS; i++) { for (int i=0; i<NUM_SCREEN_BRIGHTNESS_BINS; i++) {
mScreenBrightnessTimer[i].writeSummaryFromParcelLocked(out, nowRealtime); mScreenBrightnessTimer[i].writeSummaryFromParcelLocked(out, nowRealtime);
} }
final int numDisplays = mPerDisplayBatteryStats.length;
out.writeInt(numDisplays);
for (int i = 0; i < numDisplays; i++) {
mPerDisplayBatteryStats[i].writeSummaryToParcel(out, nowRealtime);
}
mInteractiveTimer.writeSummaryFromParcelLocked(out, nowRealtime); mInteractiveTimer.writeSummaryFromParcelLocked(out, nowRealtime);
mPowerSaveModeEnabledTimer.writeSummaryFromParcelLocked(out, nowRealtime); mPowerSaveModeEnabledTimer.writeSummaryFromParcelLocked(out, nowRealtime);
out.writeLong(mLongestLightIdleTimeMs); out.writeLong(mLongestLightIdleTimeMs);