+class device_not_available: public std::runtime_error
+{
+public:
+ device_not_available(const std::string &w): std::runtime_error(w) { }
+ virtual ~device_not_available() throw() { }
+};
+
+
+enum DeviceType
+{
+ UNSPECIFIED,
+ KEYBOARD,
+ MOUSE,
+ TOUCH_SURFACE,
+ GAME_CONTROLLER
+};
+
+