lib/log: Switch to pb_log_fn
[petitboot] / ui / common / joystick.h
1 /*
2  *  Copyright (C) 2009 Sony Computer Entertainment Inc.
3  *  Copyright 2009 Sony Corp.
4  *
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; version 2 of the License.
8  *
9  *  This program is distributed in the hope that it will be useful,
10  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12  *  GNU General Public License for more details.
13  *
14  *  You should have received a copy of the GNU General Public License
15  *  along with this program; if not, write to the Free Software
16  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
17  */
18
19 #if !defined(_PB_JOYSTICK_H)
20 #define _PB_JOYSTICK_H
21
22 #include <linux/joystick.h>
23
24 /**
25  * struct pjs - Petitboot joystick event handler.
26  * @map: Routine to map from a Linux struct js_event to a ui key code.
27  */
28
29 struct pjs {
30         int fd;
31         int (*map)(const struct js_event *e);
32 };
33
34 struct pjs *pjs_init(void *ctx, int (*map)(const struct js_event *));
35 int pjs_process_event(const struct pjs *pjs);
36
37 static inline struct pjs *pjs_from_arg(void *arg)
38 {
39         return arg;
40 }
41
42 static inline int pjs_get_fd(const struct pjs *pjs)
43 {
44         return pjs->fd;
45 }
46
47 #endif