3 * (c) 2010 Adam Lackorzynski <adam@os.inf.tu-dresden.de>,
4 * Alexander Warg <warg@os.inf.tu-dresden.de>
5 * economic rights: Technische Universität Dresden (Germany)
7 * This file is part of TUD:OS and distributed under the terms of the
8 * GNU General Public License 2.
9 * Please see the COPYING-GPL-2 file for details.
13 #include <l4/re/event>
17 namespace Mag_server {
24 Input_source *_next_active;
25 void add_lua_input_source(lua_State *l, int ref_table);
32 explicit Input_source(Core_api *core = 0) : _core(core) {}
33 virtual void poll_events() = 0;
34 void post_event(L4Re::Event_buffer::Event const *e);
35 Input_source *next() const { return _next_active; }
36 virtual int get_stream_info(l4_umword_t stream_id, L4Re::Event_stream_info *info) = 0;
37 virtual int get_axis_info(l4_umword_t stream_id, unsigned naxes, unsigned *axes, L4Re::Event_absinfo *info) = 0;