Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
Fork of el17ajf by
Input/Input.cpp@10:5762d7fae033, 2019-03-15 (annotated)
- 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?
| User | Revision | Line number | New 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 | } |
