diff options
author | Ameer <aj662@drexel.edu> | 2020-07-07 12:20:59 -0400 |
---|---|---|
committer | Ameer <aj662@drexel.edu> | 2020-07-07 12:20:59 -0400 |
commit | b57475887be5879347d5fda425676d0bd2e2a3d3 (patch) | |
tree | 92f0b09499d1a7b89d0ec9093bd3be4462871210 /src/input_common/gcadapter/gc_adapter.cpp | |
parent | e3253b5f1896605f94d661cae1a7333522b6aee8 (diff) |
Address PR feedback, fix axis button thresholding
Diffstat (limited to 'src/input_common/gcadapter/gc_adapter.cpp')
-rw-r--r-- | src/input_common/gcadapter/gc_adapter.cpp | 62 |
1 files changed, 18 insertions, 44 deletions
diff --git a/src/input_common/gcadapter/gc_adapter.cpp b/src/input_common/gcadapter/gc_adapter.cpp index b43b737598..f1c280e2e6 100644 --- a/src/input_common/gcadapter/gc_adapter.cpp +++ b/src/input_common/gcadapter/gc_adapter.cpp @@ -385,51 +385,25 @@ const std::array<GCState, 4>& Adapter::GetPadState() const { return state; } -int Adapter::GetOriginValue(int port, int axis) { - // TODO: perhaps place stick statuses into an array in PadStatus - const PadAxes padaxis = static_cast<PadAxes>(axis); - if (padaxis == PadAxes::StickX) { - return origin_status[port].stick_x; +int Adapter::GetOriginValue(int port, int axis) const { + const auto& status = origin_status[port]; + + switch (static_cast<PadAxes>(axis)) { + case PadAxes::StickX: + return status.stick_x; + case PadAxes::StickY: + return status.stick_y; + case PadAxes::SubstickX: + return status.substick_x; + case PadAxes::SubstickY: + return status.substick_y; + case PadAxes::TriggerLeft: + return status.trigger_left; + case PadAxes::TriggerRight: + return status.trigger_right; + default: + return 0; } - if (padaxis == PadAxes::StickY) { - return origin_status[port].stick_y; - } - if (padaxis == PadAxes::SubstickX) { - return origin_status[port].substick_x; - } - if (padaxis == PadAxes::SubstickY) { - return origin_status[port].substick_x; - } - if (padaxis == PadAxes::TriggerLeft) { - return origin_status[port].trigger_left; - } - if (padaxis == PadAxes::TriggerRight) { - return origin_status[port].trigger_right; - } - return 0; -} - -const int Adapter::GetOriginValue(int port, int axis) const { - const PadAxes padaxis = static_cast<PadAxes>(axis); - if (padaxis == PadAxes::StickX) { - return origin_status[port].stick_x; - } - if (padaxis == PadAxes::StickY) { - return origin_status[port].stick_y; - } - if (padaxis == PadAxes::SubstickX) { - return origin_status[port].substick_x; - } - if (padaxis == PadAxes::SubstickY) { - return origin_status[port].substick_x; - } - if (padaxis == PadAxes::TriggerLeft) { - return origin_status[port].trigger_left; - } - if (padaxis == PadAxes::TriggerRight) { - return origin_status[port].trigger_right; - } - return 0; } } // namespace GCAdapter |