summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon
diff options
context:
space:
mode:
authorJordan Woyak <jordan.woyak@gmail.com>2019-01-17 10:13:32 -0600
committerJordan Woyak <jordan.woyak@gmail.com>2019-03-17 08:53:53 -0500
commit0bdfa19650ef3b52ccfa5dee3eed5d42efb206b9 (patch)
tree548e9237383547d43a909551984edfd710010a54 /Source/Core/InputCommon
parent4fb68c530bc07518948f82ea3475c1ff6d1ca9a0 (diff)
ControllerInterface: SDL: Replace unclear bool parameter with enum class.
Diffstat (limited to 'Source/Core/InputCommon')
-rw-r--r--Source/Core/InputCommon/ControllerInterface/SDL/SDL.cpp18
-rw-r--r--Source/Core/InputCommon/ControllerInterface/SDL/SDL.h10
-rw-r--r--Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp8
-rw-r--r--Source/Core/InputCommon/ControllerInterface/evdev/evdev.h4
4 files changed, 22 insertions, 18 deletions
diff --git a/Source/Core/InputCommon/ControllerInterface/SDL/SDL.cpp b/Source/Core/InputCommon/ControllerInterface/SDL/SDL.cpp
index dde7533169..a26deee6e8 100644
--- a/Source/Core/InputCommon/ControllerInterface/SDL/SDL.cpp
+++ b/Source/Core/InputCommon/ControllerInterface/SDL/SDL.cpp
@@ -248,10 +248,8 @@ Joystick::Joystick(SDL_Joystick* const joystick, const int sdl_index)
// LeftRight
if (supported_effects & SDL_HAPTIC_LEFTRIGHT)
{
- // Strong motor:
- AddOutput(new LeftRightEffect(m_haptic, true));
- // Weak motor:
- AddOutput(new LeftRightEffect(m_haptic, false));
+ AddOutput(new LeftRightEffect(m_haptic, LeftRightEffect::Motor::Strong));
+ AddOutput(new LeftRightEffect(m_haptic, LeftRightEffect::Motor::Weak));
}
#endif
}
@@ -344,8 +342,8 @@ Joystick::PeriodicEffect::PeriodicEffect(SDL_Haptic* haptic, u16 waveform)
m_effect.periodic.phase = 0;
}
-Joystick::LeftRightEffect::LeftRightEffect(SDL_Haptic* haptic, bool use_strong_motor)
- : HapticEffect(haptic), m_use_strong_motor(use_strong_motor)
+Joystick::LeftRightEffect::LeftRightEffect(SDL_Haptic* haptic, Motor motor)
+ : HapticEffect(haptic), m_motor(motor)
{
m_effect.leftright = {};
m_effect.leftright.length = RUMBLE_LENGTH_MS;
@@ -380,7 +378,7 @@ std::string Joystick::PeriodicEffect::GetName() const
std::string Joystick::LeftRightEffect::GetName() const
{
- return m_use_strong_motor ? "Strong" : "Weak";
+ return (Motor::Strong == m_motor) ? "Strong" : "Weak";
}
void Joystick::HapticEffect::SetState(ControlState state)
@@ -432,8 +430,8 @@ bool Joystick::PeriodicEffect::UpdateParameters(s16 value)
bool Joystick::LeftRightEffect::UpdateParameters(s16 value)
{
- u16& level =
- m_use_strong_motor ? m_effect.leftright.large_magnitude : m_effect.leftright.small_magnitude;
+ u16& level = (Motor::Strong == m_motor) ? m_effect.leftright.large_magnitude :
+ m_effect.leftright.small_magnitude;
const u16 old_level = level;
level = value;
@@ -486,7 +484,7 @@ ControlState Joystick::Button::GetState() const
ControlState Joystick::Axis::GetState() const
{
- return std::max(0.0, ControlState(SDL_JoystickGetAxis(m_js, m_index)) / m_range);
+ return ControlState(SDL_JoystickGetAxis(m_js, m_index)) / m_range;
}
ControlState Joystick::Hat::GetState() const
diff --git a/Source/Core/InputCommon/ControllerInterface/SDL/SDL.h b/Source/Core/InputCommon/ControllerInterface/SDL/SDL.h
index e0c88fbc02..890a064d8b 100644
--- a/Source/Core/InputCommon/ControllerInterface/SDL/SDL.h
+++ b/Source/Core/InputCommon/ControllerInterface/SDL/SDL.h
@@ -124,13 +124,19 @@ private:
class LeftRightEffect : public HapticEffect
{
public:
- LeftRightEffect(SDL_Haptic* haptic, bool use_strong_motor);
+ enum class Motor : u8
+ {
+ Weak,
+ Strong,
+ };
+
+ LeftRightEffect(SDL_Haptic* haptic, Motor motor);
std::string GetName() const override;
private:
bool UpdateParameters(s16 value) override;
- const bool m_use_strong_motor;
+ const Motor m_motor;
};
#endif
diff --git a/Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp b/Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp
index d1fa694fae..758988a052 100644
--- a/Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp
+++ b/Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp
@@ -251,8 +251,8 @@ evdevDevice::evdevDevice(const std::string& devnode) : m_devfile(devnode)
// Rumble (i.e. Left/Right) (i.e. Strong/Weak) effect
if (libevdev_has_event_code(m_dev, EV_FF, FF_RUMBLE))
{
- AddOutput(new RumbleEffect(m_fd, RumbleEffect::Motor::STRONG));
- AddOutput(new RumbleEffect(m_fd, RumbleEffect::Motor::WEAK));
+ AddOutput(new RumbleEffect(m_fd, RumbleEffect::Motor::Strong));
+ AddOutput(new RumbleEffect(m_fd, RumbleEffect::Motor::Weak));
}
// TODO: Add leds as output devices
@@ -383,7 +383,7 @@ std::string evdevDevice::PeriodicEffect::GetName() const
std::string evdevDevice::RumbleEffect::GetName() const
{
- return (Motor::STRONG == m_motor) ? "Strong" : "Weak";
+ return (Motor::Strong == m_motor) ? "Strong" : "Weak";
}
void evdevDevice::Effect::SetState(ControlState state)
@@ -477,7 +477,7 @@ bool evdevDevice::PeriodicEffect::UpdateParameters(ControlState state)
bool evdevDevice::RumbleEffect::UpdateParameters(ControlState state)
{
- u16& value = (Motor::STRONG == m_motor) ? m_effect.u.rumble.strong_magnitude :
+ u16& value = (Motor::Strong == m_motor) ? m_effect.u.rumble.strong_magnitude :
m_effect.u.rumble.weak_magnitude;
const u16 old_value = value;
diff --git a/Source/Core/InputCommon/ControllerInterface/evdev/evdev.h b/Source/Core/InputCommon/ControllerInterface/evdev/evdev.h
index 5196084d24..4b6d0bc0b2 100644
--- a/Source/Core/InputCommon/ControllerInterface/evdev/evdev.h
+++ b/Source/Core/InputCommon/ControllerInterface/evdev/evdev.h
@@ -90,8 +90,8 @@ private:
public:
enum class Motor : u8
{
- WEAK,
- STRONG,
+ Weak,
+ Strong,
};
RumbleEffect(int fd, Motor motor);