Matthew Goldsmith
/
cis441projMS2b
Road.h@1:54512aca944d, 2019-11-11 (annotated)
- Committer:
- kchen7
- Date:
- Mon Nov 11 00:50:05 2019 +0000
- Revision:
- 1:54512aca944d
- Parent:
- 0:ca7cb51e9fd1
- Child:
- 4:ef8866873df5
attempt 1
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
mwgold | 0:ca7cb51e9fd1 | 1 | #ifndef _ROAD_H_ |
mwgold | 0:ca7cb51e9fd1 | 2 | #define _ROAD_H_ |
mwgold | 0:ca7cb51e9fd1 | 3 | |
mwgold | 0:ca7cb51e9fd1 | 4 | #include "mbed.h" |
mwgold | 0:ca7cb51e9fd1 | 5 | #include "AccCar.h" |
kchen7 | 1:54512aca944d | 6 | #include "Intersection.h" |
mwgold | 0:ca7cb51e9fd1 | 7 | |
mwgold | 0:ca7cb51e9fd1 | 8 | #define MAX_CARS 5 |
mwgold | 0:ca7cb51e9fd1 | 9 | |
mwgold | 0:ca7cb51e9fd1 | 10 | class AccCar; |
mwgold | 0:ca7cb51e9fd1 | 11 | |
mwgold | 0:ca7cb51e9fd1 | 12 | class Road { |
mwgold | 0:ca7cb51e9fd1 | 13 | public: |
mwgold | 0:ca7cb51e9fd1 | 14 | EventFlags go_flags; |
mwgold | 0:ca7cb51e9fd1 | 15 | EventFlags done_flags; |
mwgold | 0:ca7cb51e9fd1 | 16 | int active_cars; |
mwgold | 0:ca7cb51e9fd1 | 17 | |
kchen7 | 1:54512aca944d | 18 | Road(Intersection* intersection, int roadId); |
kchen7 | 1:54512aca944d | 19 | Intersection* intersection; |
mwgold | 0:ca7cb51e9fd1 | 20 | int try_enter_car(int time); |
mwgold | 0:ca7cb51e9fd1 | 21 | void let_cars_update(); |
mwgold | 0:ca7cb51e9fd1 | 22 | void wait_for_car_update(); |
kchen7 | 1:54512aca944d | 23 | void check_exit_cars(); |
kchen7 | 1:54512aca944d | 24 | void intendToEnter(int id); |
kchen7 | 1:54512aca944d | 25 | int roadId; |
mwgold | 0:ca7cb51e9fd1 | 26 | |
mwgold | 0:ca7cb51e9fd1 | 27 | void print_status(); |
mwgold | 0:ca7cb51e9fd1 | 28 | |
mwgold | 0:ca7cb51e9fd1 | 29 | |
mwgold | 0:ca7cb51e9fd1 | 30 | private: |
mwgold | 0:ca7cb51e9fd1 | 31 | AccCar* last_car; |
mwgold | 0:ca7cb51e9fd1 | 32 | AccCar* cars[MAX_CARS]; |
mwgold | 0:ca7cb51e9fd1 | 33 | |
mwgold | 0:ca7cb51e9fd1 | 34 | AccCar* pending_car; |
mwgold | 0:ca7cb51e9fd1 | 35 | int next_release; |
mwgold | 0:ca7cb51e9fd1 | 36 | int num_cars; |
mwgold | 0:ca7cb51e9fd1 | 37 | }; |
mwgold | 0:ca7cb51e9fd1 | 38 | #endif |