ELEC2645 (2018/19) / Mbed 2 deprecated el17ajf

Dependencies:   mbed

Fork of el17ajf by Angus Findlay

Committer:
el17ajf
Date:
Fri Mar 15 21:16:39 2019 +0000
Revision:
10:5762d7fae033
Parent:
9:3a7776a29a11
Child:
12:beb0d7632531
declared static variables in class cpp files

Who changed what in which revision?

UserRevisionLine numberNew contents of line
el17ajf 5:3efbdcb3efaf 1 #include "Input.h"
el17ajf 5:3efbdcb3efaf 2
el17ajf 10:5762d7fae033 3 Input::State Input::states[NUMBER_OF_BUTTONS];
el17ajf 10:5762d7fae033 4
el17ajf 9:3a7776a29a11 5 void Input::init() {
el17ajf 9:3a7776a29a11 6 for (int i = 0; i < NUMBER_OF_BUTTONS; i++) {
el17ajf 10:5762d7fae033 7 Input::states[i] = RELEASED;
el17ajf 9:3a7776a29a11 8 }
el17ajf 9:3a7776a29a11 9 }
el17ajf 9:3a7776a29a11 10
el17ajf 9:3a7776a29a11 11 void Input::deinit() {
el17ajf 9:3a7776a29a11 12
el17ajf 9:3a7776a29a11 13 }
el17ajf 9:3a7776a29a11 14
el17ajf 5:3efbdcb3efaf 15 void Input::update() {
el17ajf 9:3a7776a29a11 16 // update existing states
el17ajf 9:3a7776a29a11 17 for (int i = 0; i < NUMBER_OF_BUTTONS; i++) {
el17ajf 10:5762d7fae033 18 if (Input::states[i] == RELEASED_FRAME) {
el17ajf 10:5762d7fae033 19 Input::states[i] = RELEASED;
el17ajf 9:3a7776a29a11 20 }
el17ajf 10:5762d7fae033 21 if (Input::states[i] == HIT_FRAME) {
el17ajf 10:5762d7fae033 22 Input::states[i] = HELD;
el17ajf 9:3a7776a29a11 23 }
el17ajf 9:3a7776a29a11 24 }
el17ajf 5:3efbdcb3efaf 25
el17ajf 9:3a7776a29a11 26 // check inputs
el17ajf 9:3a7776a29a11 27 }
el17ajf 9:3a7776a29a11 28
el17ajf 9:3a7776a29a11 29 bool Input::buttonHit(Button button) {
el17ajf 10:5762d7fae033 30 return Input::states[button] == HIT_FRAME;
el17ajf 9:3a7776a29a11 31 }
el17ajf 9:3a7776a29a11 32
el17ajf 9:3a7776a29a11 33 bool Input::buttonHeld(Button button) {
el17ajf 10:5762d7fae033 34 return Input::states[button] == HIT_FRAME
el17ajf 10:5762d7fae033 35 || Input::states[button] == HELD;
el17ajf 5:3efbdcb3efaf 36 }