git.droids-corp.org
/
aversive.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
cup1
[aversive.git]
/
projects
/
microb2010
/
mainboard
/
strat_db.h
diff --git
a/projects/microb2010/mainboard/strat_db.h
b/projects/microb2010/mainboard/strat_db.h
index
b770b43
..
e377ceb
100644
(file)
--- a/
projects/microb2010/mainboard/strat_db.h
+++ b/
projects/microb2010/mainboard/strat_db.h
@@
-54,16
+54,19
@@
struct waypoint_db {
/* visited by opponent */
uint8_t opp_visited:1;
/* visited by opponent */
uint8_t opp_visited:1;
- uint8_t reserved:3;
+ /* true if the wp is on a circuit */
+ uint8_t on_circuit:1;
- /* absolute position of the waypoint */
-/* int16_t x; */
-/* int16_t y; */
+ uint8_t reserved:2;
union {
struct corn_db corn;
struct tomato_db tomato;
};
union {
struct corn_db corn;
struct tomato_db tomato;
};
+
+ /* to monitor time when corn/ball was removed */
+ /* not optimal... but... we have enough ram */
+ int8_t time_removed;
};
/* database reflecting the status of objects on area */
};
/* database reflecting the status of objects on area */
@@
-87,10
+90,13
@@
struct strat_db {
/* global structure storing the database */
extern struct strat_db strat_db;
/* global structure storing the database */
extern struct strat_db strat_db;
+/* return the nearest waypoint */
+int8_t xycoord_to_ijcoord(int16_t *xp, int16_t *yp, uint8_t *ip, uint8_t *jp);
+
/* return the nearest waypoint that is not a corn: xp and yp contains
* the input and output, and ip, jp are only outputs. return 0 on
* success. */
/* return the nearest waypoint that is not a corn: xp and yp contains
* the input and output, and ip, jp are only outputs. return 0 on
* success. */
-int8_t xycoord_to_ijcoord(int16_t *xp, int16_t *yp, uint8_t *ip, uint8_t *jp);
+int8_t xycoord_to_ijcoord
_not_corn
(int16_t *xp, int16_t *yp, uint8_t *ip, uint8_t *jp);
/* convert i,j coords to x,y coords */
int8_t ijcoord_to_xycoord(uint8_t i, uint8_t j, int16_t *x, int16_t *y);
/* convert i,j coords to x,y coords */
int8_t ijcoord_to_xycoord(uint8_t i, uint8_t j, int16_t *x, int16_t *y);