This class encapsulates all the algorithms required for the displaying strings and time dependent patterns on the lcd.
Dependents: 200943412_QuickClick
Display.h@11:7ad2ea427784, 2017-04-16 (annotated)
- Committer:
- domkay97
- Date:
- Sun Apr 16 19:37:09 2017 +0000
- Revision:
- 11:7ad2ea427784
- Parent:
- 9:1e25dcab4927
- Child:
- 12:41e9ba6d65d3
Improved waiting timing equation.
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
domkay97 | 0:dd78eca4b004 | 1 | #ifndef DISPLAY_H |
domkay97 | 0:dd78eca4b004 | 2 | #define DISPLAY_H |
domkay97 | 0:dd78eca4b004 | 3 | |
domkay97 | 0:dd78eca4b004 | 4 | #include "mbed.h" |
domkay97 | 9:1e25dcab4927 | 5 | #include "N5110.h" |
domkay97 | 9:1e25dcab4927 | 6 | #include "Controller.h" |
domkay97 | 1:41a1c20a2056 | 7 | |
domkay97 | 0:dd78eca4b004 | 8 | class Display |
domkay97 | 0:dd78eca4b004 | 9 | { |
domkay97 | 0:dd78eca4b004 | 10 | |
domkay97 | 0:dd78eca4b004 | 11 | public: |
domkay97 | 11:7ad2ea427784 | 12 | |
domkay97 | 11:7ad2ea427784 | 13 | /** Constructor */ |
domkay97 | 11:7ad2ea427784 | 14 | Display(); |
domkay97 | 11:7ad2ea427784 | 15 | |
domkay97 | 11:7ad2ea427784 | 16 | /** Destructor */ |
domkay97 | 0:dd78eca4b004 | 17 | ~Display(); |
domkay97 | 11:7ad2ea427784 | 18 | |
domkay97 | 11:7ad2ea427784 | 19 | /** Sets all variables to zero and resets wait time to max value */ |
domkay97 | 0:dd78eca4b004 | 20 | void init(); |
domkay97 | 11:7ad2ea427784 | 21 | |
domkay97 | 11:7ad2ea427784 | 22 | /** Methord for drawing the circle and decreasing the wait time */ |
domkay97 | 11:7ad2ea427784 | 23 | void drawCircle(Controller &ctrl, N5110 &lcd); |
domkay97 | 11:7ad2ea427784 | 24 | |
domkay97 | 11:7ad2ea427784 | 25 | /** |
domkay97 | 11:7ad2ea427784 | 26 | * @brief Displays a random instruction for the user to perform |
domkay97 | 11:7ad2ea427784 | 27 | * @param id[in] random number generated from operator |
domkay97 | 11:7ad2ea427784 | 28 | * @return void |
domkay97 | 11:7ad2ea427784 | 29 | */ |
domkay97 | 6:8840d7e48ce7 | 30 | void display_instruction(N5110 &lcd, int ran); |
domkay97 | 11:7ad2ea427784 | 31 | |
domkay97 | 11:7ad2ea427784 | 32 | /** Methord for the mathematical operation behind the change in time before gameover */ |
domkay97 | 6:8840d7e48ce7 | 33 | void calculateWait(); |
domkay97 | 0:dd78eca4b004 | 34 | |
domkay97 | 0:dd78eca4b004 | 35 | |
domkay97 | 0:dd78eca4b004 | 36 | private: |
domkay97 | 11:7ad2ea427784 | 37 | |
domkay97 | 11:7ad2ea427784 | 38 | /** |
domkay97 | 11:7ad2ea427784 | 39 | @brief Methord allowing one octant to be displayed at one time. Also allows interaction with controller for flashing screen and sounds |
domkay97 | 11:7ad2ea427784 | 40 | @param id[in] void |
domkay97 | 11:7ad2ea427784 | 41 | @return interger used in for loop (representing nember of loops) |
domkay97 | 11:7ad2ea427784 | 42 | */ |
domkay97 | 11:7ad2ea427784 | 43 | void Circle(Controller &ctrl, N5110 &lcd); |
domkay97 | 11:7ad2ea427784 | 44 | |
domkay97 | 11:7ad2ea427784 | 45 | /** |
domkay97 | 11:7ad2ea427784 | 46 | * @brief An algorithm that draws the eight octants of a circle pixel by pixel |
domkay97 | 11:7ad2ea427784 | 47 | * @param id[in] interger used in for loop from Circle() Methord |
domkay97 | 11:7ad2ea427784 | 48 | * @return void |
domkay97 | 11:7ad2ea427784 | 49 | */ |
domkay97 | 11:7ad2ea427784 | 50 | void Drawarc(N5110 &lcd, int a); |
domkay97 | 11:7ad2ea427784 | 51 | |
domkay97 | 11:7ad2ea427784 | 52 | int _h; // <<number of arcs displayed |
domkay97 | 11:7ad2ea427784 | 53 | float _w; // <<wait time |
domkay97 | 11:7ad2ea427784 | 54 | int _a; // <<for loop variable |
domkay97 | 11:7ad2ea427784 | 55 | int _v; // <<interger to tell class which random instuction to perform |
domkay97 | 11:7ad2ea427784 | 56 | int x; // <<radius of circle |
domkay97 | 11:7ad2ea427784 | 57 | int y; // <<y co-ordinate |
domkay97 | 11:7ad2ea427784 | 58 | int x0; // <<variable used to modify x |
domkay97 | 11:7ad2ea427784 | 59 | int y0; // <<variable used to modify y |
domkay97 | 11:7ad2ea427784 | 60 | int radiusMod; // <<1 - the radius of the circle |
domkay97 | 11:7ad2ea427784 | 61 | |
domkay97 | 0:dd78eca4b004 | 62 | |
domkay97 | 0:dd78eca4b004 | 63 | }; |
domkay97 | 0:dd78eca4b004 | 64 | #endif |