input_interpreter: Add method to check for a button press state

This allows to check for continuous input for the duration of a button press/hold
This commit is contained in:
Morph
2021-01-16 10:34:39 -05:00
parent a7fd61fcce
commit 3c8f936b31
2 changed files with 25 additions and 0 deletions

View File

@ -25,6 +25,10 @@ void InputInterpreter::PollInput() {
button_states[current_index] = button_state;
}
bool InputInterpreter::IsButtonPressed(HIDButton button) const {
return (button_states[current_index] & (1U << static_cast<u8>(button))) != 0;
}
bool InputInterpreter::IsButtonPressedOnce(HIDButton button) const {
const bool current_press =
(button_states[current_index] & (1U << static_cast<u8>(button))) != 0;