X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Finput%2Fdevice.h;h=b42ed3fde4991feb8d87b05258831585db57efec;hb=69aaca13ae0949acf12056e390cbd1009a8487b2;hp=e356bea86a4639cc5280d0a974eb6af3a8f005ab;hpb=5627c06b70fe2e8e926ed8d1d2d3fff0a33a503f;p=libs%2Fgui.git diff --git a/source/input/device.h b/source/input/device.h index e356bea..b42ed3f 100644 --- a/source/input/device.h +++ b/source/input/device.h @@ -3,15 +3,24 @@ #include #include +#include #include namespace Msp { namespace Input { +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() { } +}; + + /** Base class for input devices. Input devices have two types of controls: buttons and axes. Buttons are either on or off. Axes have a floating point -value in the range [-1, 1]. +value nominally in the range [-1, 1]. Event handlers return a boolean indicating whether the event is considered processed. If a handler returns true, no further handlers are invoked.