Aaron Lamoreaux
/
avc
AVC Code
repeater.h@7:6efd4f07ae00, 2019-03-09 (annotated)
- Committer:
- lamoreauxaj
- Date:
- Sat Mar 09 22:17:08 2019 +0000
- Revision:
- 7:6efd4f07ae00
- Parent:
- 4:370cbd985916
k
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
JamsRamen | 4:370cbd985916 | 1 | #ifndef REPEATER_H |
JamsRamen | 4:370cbd985916 | 2 | #define REPEATER_H |
JamsRamen | 4:370cbd985916 | 3 | |
JamsRamen | 4:370cbd985916 | 4 | struct Repeater { |
JamsRamen | 4:370cbd985916 | 5 | double time, lastTime, step; |
JamsRamen | 4:370cbd985916 | 6 | |
JamsRamen | 4:370cbd985916 | 7 | Repeater (double s) { |
JamsRamen | 4:370cbd985916 | 8 | lastTime = time = 1.0 * clock() / CLOCKS_PER_SEC; |
JamsRamen | 4:370cbd985916 | 9 | step = s; |
JamsRamen | 4:370cbd985916 | 10 | } |
JamsRamen | 4:370cbd985916 | 11 | |
JamsRamen | 4:370cbd985916 | 12 | bool check () { |
JamsRamen | 4:370cbd985916 | 13 | update(); |
JamsRamen | 4:370cbd985916 | 14 | if (time >= lastTime + step) { |
JamsRamen | 4:370cbd985916 | 15 | lastTime = time; |
JamsRamen | 4:370cbd985916 | 16 | return true; |
JamsRamen | 4:370cbd985916 | 17 | } else { |
JamsRamen | 4:370cbd985916 | 18 | return false; |
JamsRamen | 4:370cbd985916 | 19 | } |
JamsRamen | 4:370cbd985916 | 20 | } |
JamsRamen | 4:370cbd985916 | 21 | void update () { |
JamsRamen | 4:370cbd985916 | 22 | time = 1.0 * clock() / CLOCKS_PER_SEC; |
JamsRamen | 4:370cbd985916 | 23 | } |
JamsRamen | 4:370cbd985916 | 24 | }; |
JamsRamen | 4:370cbd985916 | 25 | |
JamsRamen | 4:370cbd985916 | 26 | #endif |