IBatteryStats.aidl revision e9b06d754af03faf27012fbed1e7559ec1ba7c79
19066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project/*
29066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Copyright (C) 2008 The Android Open Source Project
39066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
49066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Licensed under the Apache License, Version 2.0 (the "License");
59066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * you may not use this file except in compliance with the License.
69066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * You may obtain a copy of the License at
79066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
89066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *      http://www.apache.org/licenses/LICENSE-2.0
99066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project *
109066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * Unless required by applicable law or agreed to in writing, software
119066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * distributed under the License is distributed on an "AS IS" BASIS,
129066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
139066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * See the License for the specific language governing permissions and
149066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project * limitations under the License.
159066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project */
169066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
179066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectpackage com.android.internal.app;
189066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
199066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectimport com.android.internal.os.BatteryStatsImpl;
209066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project
21e9b06d754af03faf27012fbed1e7559ec1ba7c79Wink Savilleimport android.telephony.SignalStrength;
22e9b06d754af03faf27012fbed1e7559ec1ba7c79Wink Saville
239066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Projectinterface IBatteryStats {
249066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    byte[] getStatistics();
259066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void noteStartWakelock(int uid, String name, int type);
269066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void noteStopWakelock(int uid, String name, int type);
279066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void noteStartSensor(int uid, int sensor);
289066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void noteStopSensor(int uid, int sensor);
299066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void noteStartGps(int uid);
309066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void noteStopGps(int uid);
319066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void noteScreenOn();
32617f877c06c82584a38f41bb60d836e08c5e3bdaDianne Hackborn    void noteScreenBrightness(int brightness);
339066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void noteScreenOff();
34617f877c06c82584a38f41bb60d836e08c5e3bdaDianne Hackborn    void noteInputEvent();
35617f877c06c82584a38f41bb60d836e08c5e3bdaDianne Hackborn    void noteUserActivity(int uid, int event);
369066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void notePhoneOn();
379066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    void notePhoneOff();
38e9b06d754af03faf27012fbed1e7559ec1ba7c79Wink Saville    void notePhoneSignalStrength(in SignalStrength signalStrength);
39627bba736d022c39696b7c582a6af5592d2b8c33Dianne Hackborn    void notePhoneDataConnectionState(int dataType, boolean hasData);
40617f877c06c82584a38f41bb60d836e08c5e3bdaDianne Hackborn    void noteWifiOn(int uid);
41617f877c06c82584a38f41bb60d836e08c5e3bdaDianne Hackborn    void noteWifiOff(int uid);
42d4c5f8919b0522bcaab41a5863c313fec52d3a79Eric Shienbrood    void noteWifiRunning();
43d4c5f8919b0522bcaab41a5863c313fec52d3a79Eric Shienbrood    void noteWifiStopped();
44105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project    void noteBluetoothOn();
45105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project    void noteBluetoothOff();
46105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project    void noteFullWifiLockAcquired(int uid);
47105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project    void noteFullWifiLockReleased(int uid);
48105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project    void noteScanWifiLockAcquired(int uid);
49105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project    void noteScanWifiLockReleased(int uid);
505347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt    void noteWifiMulticastEnabled(int uid);
515347bd4cda2b6afc18f8acab48e52131f35ed13cRobert Greenwalt    void noteWifiMulticastDisabled(int uid);
52105925376f8d0f6b318c9938c7b83ef7fef094daThe Android Open Source Project    void setOnBattery(boolean onBattery, int level);
53633a1740ce5951ccb5d478ba2795f6f4fada1646Evan Millar    void recordCurrentLevel(int level);
549066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    long getAwakeTimeBattery();
559066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project    long getAwakeTimePlugged();
569066cfe9886ac131c34d59ed0e2d287b0e3c0087The Android Open Source Project}
57