1/* //device/java/android/android/os/IPowerManager.aidl
2**
3** Copyright 2007, The Android Open Source Project
4**
5** Licensed under the Apache License, Version 2.0 (the "License");
6** you may not use this file except in compliance with the License.
7** You may obtain a copy of the License at
8**
9**     http://www.apache.org/licenses/LICENSE-2.0
10**
11** Unless required by applicable law or agreed to in writing, software
12** distributed under the License is distributed on an "AS IS" BASIS,
13** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14** See the License for the specific language governing permissions and
15** limitations under the License.
16*/
17
18package android.os;
19
20import android.os.WorkSource;
21
22/** @hide */
23
24interface IPowerManager
25{
26    // WARNING: The first two methods must remain the first two methods because their
27    // transaction numbers must not change unless IPowerManager.cpp is also updated.
28    void acquireWakeLock(IBinder lock, int flags, String tag, in WorkSource ws);
29    void releaseWakeLock(IBinder lock, int flags);
30
31    void updateWakeLockWorkSource(IBinder lock, in WorkSource ws);
32    boolean isWakeLockLevelSupported(int level);
33
34    void userActivity(long time, int event, int flags);
35    void wakeUp(long time);
36    void goToSleep(long time, int reason);
37    void nap(long time);
38
39    boolean isScreenOn();
40    void reboot(boolean confirm, String reason, boolean wait);
41    void shutdown(boolean confirm, boolean wait);
42    void crash(String message);
43
44    void setStayOnSetting(int val);
45    void setMaximumScreenOffTimeoutFromDeviceAdmin(int timeMs);
46
47    // temporarily overrides the screen brightness settings to allow the user to
48    // see the effect of a settings change without applying it immediately
49    void setTemporaryScreenBrightnessSettingOverride(int brightness);
50    void setTemporaryScreenAutoBrightnessAdjustmentSettingOverride(float adj);
51
52    // sets the attention light (used by phone app only)
53    void setAttentionLight(boolean on, int color);
54}
55