summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControllerEmu/ControlGroup/Force.h
diff options
context:
space:
mode:
authorJMC47 <JMC4789@gmail.com>2019-04-13 12:13:13 -0400
committerGitHub <noreply@github.com>2019-04-13 12:13:13 -0400
commita891115ea350528f1735dab54d05edc8b8fe77c6 (patch)
tree08257dd14877d4693d502dcf50e81a734e0cb043 /Source/Core/InputCommon/ControllerEmu/ControlGroup/Force.h
parent241166a1a5becb0a6a2af209e7f5ea2962d6a2dd (diff)
parentc89ddf8cba9c6b19d59e2db1896292797163c54c (diff)
Merge pull request #7952 from jordan-woyak/emu-shake-params
WiimoteEmu: Allow shake frequency and intensity to be configured.
Diffstat (limited to 'Source/Core/InputCommon/ControllerEmu/ControlGroup/Force.h')
-rw-r--r--Source/Core/InputCommon/ControllerEmu/ControlGroup/Force.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/Source/Core/InputCommon/ControllerEmu/ControlGroup/Force.h b/Source/Core/InputCommon/ControllerEmu/ControlGroup/Force.h
index 21aca174a9..da66dc034e 100644
--- a/Source/Core/InputCommon/ControllerEmu/ControlGroup/Force.h
+++ b/Source/Core/InputCommon/ControllerEmu/ControlGroup/Force.h
@@ -40,4 +40,28 @@ private:
SettingValue<double> m_jerk_setting;
SettingValue<double> m_angle_setting;
};
+
+class Shake : public ControlGroup
+{
+public:
+ using StateData = Common::Vec3;
+
+ explicit Shake(const std::string& name, ControlState default_intensity_scale = 1);
+
+ StateData GetState(bool adjusted = true) const;
+
+ ControlState GetDeadzone() const;
+
+ // Return total travel distance in meters.
+ ControlState GetIntensity() const;
+
+ // Return frequency in Hz.
+ ControlState GetFrequency() const;
+
+private:
+ SettingValue<double> m_deadzone_setting;
+ SettingValue<double> m_intensity_setting;
+ SettingValue<double> m_frequency_setting;
+};
+
} // namespace ControllerEmu