2 * Flashlight applet (widget) for Maemo.
3 * Copyright (C) 2009 Roman Moravcik
5 * This program is free software; you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation; either version 2 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program; if not, write to the Free Software
17 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 #ifndef FLASHLIGHT_LIB_H
21 #define FLASHLIGHT_LIB_H
23 #define FLASHLIGHT_STATUS_SHORT_CIRCUT_FAULT 0x0001
24 #define FLASHLIGHT_STATUS_OVERTEMPERATURE_FAULT 0x0002
25 #define FLASHLIGHT_STATUS_TIMEOUT_FAULT 0x0004
26 #define FLASHLIGHT_STATUS_OVERVOLTAGE_FAULT 0x0008
33 struct FlashlightContext {
37 /* file descriptor of device */
44 typedef struct FlashlightContext FlashlightContext_t;
46 int flashlight_init (FlashlightContext_t **flashlight);
47 int flashlight_deinit (FlashlightContext_t *flashlight);
49 int flashlight_open (FlashlightContext_t *flashlight, const char *device_name);
50 int flashlight_close (FlashlightContext_t *flashlight);
52 int flashlight_set_intensity (FlashlightContext_t *flashlight, int intensity);
53 int flashlight_get_intensity (FlashlightContext_t *flashlight, int *intensity);
55 int flashlight_get_status (FlashlightContext_t *flashlight, int *status);