Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
input-polldev.h
Go to the documentation of this file.
1 #ifndef _INPUT_POLLDEV_H
2 #define _INPUT_POLLDEV_H
3 
4 /*
5  * Copyright (c) 2007 Dmitry Torokhov
6  *
7  * This program is free software; you can redistribute it and/or modify it
8  * under the terms of the GNU General Public License version 2 as published by
9  * the Free Software Foundation.
10  */
11 
12 #include <linux/input.h>
13 #include <linux/workqueue.h>
14 
37 struct input_polled_dev {
38  void *private;
39 
40  void (*open)(struct input_polled_dev *dev);
41  void (*close)(struct input_polled_dev *dev);
42  void (*poll)(struct input_polled_dev *dev);
43  unsigned int poll_interval; /* msec */
44  unsigned int poll_interval_max; /* msec */
45  unsigned int poll_interval_min; /* msec */
46 
47  struct input_dev *input;
48 
49 /* private: */
50  struct delayed_work work;
51 };
52 
53 struct input_polled_dev *input_allocate_polled_device(void);
54 void input_free_polled_device(struct input_polled_dev *dev);
55 int input_register_polled_device(struct input_polled_dev *dev);
56 void input_unregister_polled_device(struct input_polled_dev *dev);
57 
58 #endif