Quick and dirty linux event input driver.
[gfxprim.git] / tests / drivers / linux_input.c
blob04a0480952d58b78e12ae3cdd8d6d786c529c172
1 /*****************************************************************************
2 * This file is part of gfxprim library. *
3 * *
4 * Gfxprim is free software; you can redistribute it and/or *
5 * modify it under the terms of the GNU Lesser General Public *
6 * License as published by the Free Software Foundation; either *
7 * version 2.1 of the License, or (at your option) any later version. *
8 * *
9 * Gfxprim 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 GNU *
12 * Lesser General Public License for more details. *
13 * *
14 * You should have received a copy of the GNU Lesser General Public *
15 * License along with gfxprim; if not, write to the Free Software *
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, *
17 * Boston, MA 02110-1301 USA *
18 * *
19 * Copyright (C) 2009-2011 Cyril Hrubis <metan@ucw.cz> *
20 * *
21 *****************************************************************************/
27 #include <math.h>
29 #include <GP.h>
30 #include <input/GP_InputDriverLinux.h>
32 int main(int argc, char *argv[])
34 struct GP_InputDriverLinux *drv;
36 GP_SetDebugLevel(10);
38 if (argc != 2) {
39 printf("Usage: %s /dev/input/eventX\n", argv[0]);
40 return 1;
43 drv = GP_InputDriverLinuxOpen(argv[1]);
45 if (drv == NULL) {
46 printf("Failed to open input device\n");
47 return 1;
50 GP_EventSetScreenSize(640, 480);
52 for (;;) {
53 GP_InputDriverLinuxRead(drv);
55 while (GP_EventQueued()) {
56 GP_Event ev;
58 GP_EventGet(&ev);
59 GP_EventDump(&ev);
62 usleep(1000);
65 return 0;