1182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski/* 2182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * Copyright (C) 2013 The Android Open Source Project 3182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * 4182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * Licensed under the Apache License, Version 2.0 (the "License"); 5182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * you may not use this file except in compliance with the License. 6182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * You may obtain a copy of the License at 7182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * 8182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * http://www.apache.org/licenses/LICENSE-2.0 9182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * 10182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * Unless required by applicable law or agreed to in writing, software 11182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * distributed under the License is distributed on an "AS IS" BASIS, 12182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * See the License for the specific language governing permissions and 14182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * limitations under the License. 15182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski */ 16182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski 17182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinskipackage com.android.server.lights; 18182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski 19182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinskipublic abstract class Light { 20182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public static final int LIGHT_FLASH_NONE = 0; 21182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public static final int LIGHT_FLASH_TIMED = 1; 22182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public static final int LIGHT_FLASH_HARDWARE = 2; 23182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski 24182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski /** 25182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * Light brightness is managed by a user setting. 26182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski */ 27182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public static final int BRIGHTNESS_MODE_USER = 0; 28182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski 29182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski /** 30182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski * Light brightness is managed by a light sensor. 31182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski */ 32182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public static final int BRIGHTNESS_MODE_SENSOR = 1; 33182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski 34182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public abstract void setBrightness(int brightness); 35182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public abstract void setBrightness(int brightness, int brightnessMode); 36182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public abstract void setColor(int color); 37182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public abstract void setFlashing(int color, int mode, int onMS, int offMS); 38182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public abstract void pulse(); 39182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public abstract void pulse(int color, int onMS); 40182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski public abstract void turnOff(); 41182f73fc4da13a6417e5086ec9ecce80eb8423caAdam Lesinski}