summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.h')
-rw-r--r--Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.h b/Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.h
new file mode 100644
index 0000000000..3520d95d13
--- /dev/null
+++ b/Source/Core/InputCommon/ControllerEmu/ControlGroup/Cursor.h
@@ -0,0 +1,29 @@
+// Copyright 2017 Dolphin Emulator Project
+// Licensed under GPLv2+
+// Refer to the license.txt file included.
+
+#pragma once
+
+#include <string>
+#include "InputCommon/ControllerEmu/ControlGroup/ControlGroup.h"
+
+namespace ControllerEmu
+{
+class Cursor : public ControlGroup
+{
+public:
+ explicit Cursor(const std::string& name);
+
+ void GetState(ControlState* x, ControlState* y, ControlState* z, bool adjusted = false);
+
+ ControlState m_z = 0.0;
+
+private:
+ // This is used to reduce the cursor speed for relative input
+ // to something that makes sense with the default range.
+ static constexpr double SPEED_MULTIPLIER = 0.04;
+
+ ControlState m_x = 0.0;
+ ControlState m_y = 0.0;
+};
+} // namespace ControllerEmu