7485a2d2b428841a674bf46af25db925451cda36
[olsrd.git] / src / apm.h
1 /*
2  * OLSR ad-hoc routing table management protocol
3  * Copyright (C) 2003 Andreas T√łnnesen (andreto@ifi.uio.no)
4  *
5  * This file is part of the olsr.org OLSR daemon.
6  *
7  * olsr.org is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * olsr.org is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with olsr.org; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
20  * 
21  * 
22  * $Id: apm.h,v 1.6 2004/10/09 22:32:47 kattemat Exp $
23  *
24  */
25
26
27 #ifndef _OLSR_APM
28 #define _OLSR_APM
29
30 /*
31  * Interface to OS dependent power management information
32  */
33
34 #define OLSR_BATTERY_POWERED  0
35 #define OLSR_AC_POWERED       1
36
37 struct olsr_apm_info
38 {
39   int ac_line_status;
40   int battery_percentage;
41 };
42
43
44 int apm_init(void);
45
46 void apm_printinfo(struct olsr_apm_info *);
47
48 /* 
49  * This function should return 0 if no powerinfo
50  * is available. If returning 1 the function must
51  * fill the provided olsr_apm_info struct with
52  * the current power status.
53  */
54
55 int apm_read(struct olsr_apm_info *);
56
57 #endif