]> git.tdb.fi Git - libs/gui.git/blobdiff - source/inputdevice.h
Bugfixes
[libs/gui.git] / source / inputdevice.h
index 60b25e928ba4c7e62fa38380fc9e9b5c03ad6c56..d1c96f23be04e890d56755bc2ef55b4043c5aa8b 100644 (file)
@@ -8,6 +8,7 @@ Distributed under the LGPL
 #ifndef MSP_GBASE_INPUTDEVICE_H_
 #define MSP_GBASE_INPUTDEVICE_H_
 
+#include <string>
 #include <vector>
 #include <sigc++/signal.h>
 
@@ -27,13 +28,22 @@ public:
        sigc::signal<void, unsigned, float, float> signal_axis_motion;
 
 protected:
+       std::string name;
        std::vector<char>  buttons;
        std::vector<float> axes;
+       float axis_threshold;
+       float axis_dead_zone;
 
+       Device() { }
 public:
        virtual ~Device() { }
-       bool  get_button_state(unsigned);
-       float get_axis_value(unsigned);
+       const std::string &get_name() const { return name; }
+       bool  get_button_state(unsigned) const;
+       float get_axis_value(unsigned) const;
+       float get_axis_threshold() const { return axis_threshold; }
+
+       virtual std::string get_button_name(unsigned) const;
+       virtual std::string get_axis_name(unsigned) const;
 protected:
        void set_button_state(unsigned, bool, bool);
        void set_axis_value(unsigned, float, bool);