summaryrefslogtreecommitdiffstats
path: root/server/inputs_channel.h
diff options
context:
space:
mode:
authorAlon Levy <alevy@redhat.com>2010-10-31 16:31:14 +0200
committerAlon Levy <alevy@redhat.com>2010-12-07 21:32:33 +0200
commit347e32177cd7a563054ac903e1efb193f6ec7b57 (patch)
tree325974ac49ac33cdf9e127a852cdfe78da31e1e3 /server/inputs_channel.h
parent26c40c4196a6c1b12dc59a794d64fb217b5a7259 (diff)
downloadspice-347e32177cd7a563054ac903e1efb193f6ec7b57.tar.gz
spice-347e32177cd7a563054ac903e1efb193f6ec7b57.tar.xz
spice-347e32177cd7a563054ac903e1efb193f6ec7b57.zip
server: introduce inputs_channel, split from reds.c
Diffstat (limited to 'server/inputs_channel.h')
-rw-r--r--server/inputs_channel.h40
1 files changed, 40 insertions, 0 deletions
diff --git a/server/inputs_channel.h b/server/inputs_channel.h
new file mode 100644
index 00000000..491c8a5b
--- /dev/null
+++ b/server/inputs_channel.h
@@ -0,0 +1,40 @@
+/*
+ Copyright (C) 2009 Red Hat, Inc.
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with this library; if not, see <http://www.gnu.org/licenses/>.
+*/
+
+#ifndef _INPUTS_CHANNEL_H_
+#define _INPUTS_CHANNEL_H_
+
+// Inputs channel, dealing with keyboard, mouse, tablet.
+// This include should only be used by reds.c and inputs_channel.c
+
+#include <stdint.h>
+#include <spice/vd_agent.h>
+
+void inputs_init(void);
+int inputs_inited(void);
+int inputs_has_tablet(void);
+const VDAgentMouseState *inputs_get_mouse_state(void);
+void inputs_send_keyboard_modifiers(uint8_t modifiers);
+void inputs_on_keyboard_leds_change(void *opaque, uint8_t leds);
+int inputs_set_keyboard(SpiceKbdInstance *_keyboard);
+int inputs_set_mouse(SpiceMouseInstance *_mouse);
+int inputs_set_tablet(SpiceTabletInstance *_tablet);
+void inputs_detach_tablet(SpiceTabletInstance *_tablet);
+void inputs_set_tablet_logical_size(int x_res, int y_res);
+
+#endif
+