1/* Copyright (C) 2007-2008 The Android Open Source Project 2** 3** This software is licensed under the terms of the GNU General Public 4** License version 2, as published by the Free Software Foundation, and 5** may be copied, distributed, and modified under those terms. 6** 7** This program is distributed in the hope that it will be useful, 8** but WITHOUT ANY WARRANTY; without even the implied warranty of 9** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 10** GNU General Public License for more details. 11*/ 12#ifndef _android_hw_control_h 13#define _android_hw_control_h 14 15#include "qemu-common.h" 16 17/* a callback function called when the system wants to change the brightness 18 * of a given light. 'light' is a string which can be one of: 19 * 'lcd_backlight', 'button_backlight' or 'Keyboard_backlight' 20 * 21 * brightness is an integer (acceptable range are 0..255), however the 22 * default is around 105, and we probably don't want to dim the emulator's 23 * output at that level. 24 */ 25typedef void (*AndroidHwLightBrightnessFunc)( void* opaque, 26 const char* light, 27 int brightness ); 28 29/* used to record a hw control 'client' */ 30typedef struct { 31 AndroidHwLightBrightnessFunc light_brightness; 32} AndroidHwControlFuncs; 33 34/* used to initialize the hardware control support */ 35extern void android_hw_control_init( void ); 36 37/* used to register a new hw-control back-end */ 38extern void android_hw_control_set( void* opaque, 39 const AndroidHwControlFuncs* funcs ); 40 41#endif /* _android_hw_control_h */ 42