summaryrefslogtreecommitdiff
path: root/libs/surfaces/mackie/jog_wheel.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-04-22 17:37:52 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-04-22 17:37:52 +0000
commitac1b2a664711ce6e66c1bd37565c8066103a722a (patch)
treee8335287eeb2f4abcc860255a2dcf937a297f0c2 /libs/surfaces/mackie/jog_wheel.h
parent4901f9d1d20ea5878b34db025a3dc305d3a78c2e (diff)
MCP: another bevy of changes, including working jog wheel
git-svn-id: svn://localhost/ardour2/branches/3.0@12056 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/surfaces/mackie/jog_wheel.h')
-rw-r--r--libs/surfaces/mackie/jog_wheel.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/libs/surfaces/mackie/jog_wheel.h b/libs/surfaces/mackie/jog_wheel.h
new file mode 100644
index 0000000000..0750775bdd
--- /dev/null
+++ b/libs/surfaces/mackie/jog_wheel.h
@@ -0,0 +1,34 @@
+#ifndef mackie_jog_wheel
+#define mackie_jog_wheel
+
+#include "timer.h"
+
+#include <stack>
+#include <deque>
+#include <queue>
+
+class MackieControlProtocol;
+
+namespace Mackie
+{
+
+class JogWheel
+{
+ public:
+ enum Mode { scroll };
+
+ JogWheel (MackieControlProtocol & mcp);
+
+ /// As the wheel turns...
+ void jog_event (float delta);
+ void set_mode (Mode m);
+ Mode mode() const { return _mode; }
+
+private:
+ MackieControlProtocol & _mcp;
+ Mode _mode;
+};
+
+}
+
+#endif