X-Git-Url: http://git.droids-corp.org/?p=aversive.git;a=blobdiff_plain;f=projects%2Fmicrob2010%2Fmainboard%2Fstrat_corn.h;h=4f50cb6738e9de47802b00d9a89e583e0c5dff86;hp=def2237c6880274eb83339d4ba87fc2a68d6c27b;hb=HEAD;hpb=78150017ab8c5615af414df706a0525fe7c262ae diff --git a/projects/microb2010/mainboard/strat_corn.h b/projects/microb2010/mainboard/strat_corn.h index def2237..4f50cb6 100644 --- a/projects/microb2010/mainboard/strat_corn.h +++ b/projects/microb2010/mainboard/strat_corn.h @@ -20,33 +20,23 @@ * Olivier MATZ */ -#define CORN_NB 18 - -/* enum is better */ -#define TYPE_WAYPOINT 0 -#define TYPE_DANGEROUS 1 -#define TYPE_WHITE_CORN 2 -#define TYPE_BLACK_CORN 3 -#define TYPE_OBSTACLE 4 - #define LINE_UP 0 -#define LINE_DOWN 1 -#define LINE_R_UP 2 -#define LINE_L_DOWN 3 -#define LINE_L_UP 4 -#define LINE_R_DOWN 5 +#define LINE_L_UP 1 +#define LINE_L_DOWN 2 +#define LINE_DOWN 3 +#define LINE_R_DOWN 4 +#define LINE_R_UP 5 struct line_2pts { point_t p1; point_t p2; }; -extern uint8_t corn_table[CORN_NB]; - -int8_t ijcoord_to_corn_idx(uint8_t i, uint8_t j); -int8_t xycoord_to_corn_idx(int16_t *x, int16_t *y); -void init_corn_table(int8_t conf_side, int8_t conf_center); +/* there is a corn near */ +int8_t corn_is_near(uint8_t *corn_idx, uint8_t side, + int16_t *xspickle, int16_t *yspickle); -uint8_t line2line(uint8_t dir1, uint8_t num1, - uint8_t dir2, uint8_t num2); -void num2line(struct line_2pts *l, uint8_t dir, uint8_t num); +/* go from line num1,dir1 to line num2,dir2. Uses trjectory flags + * specified as argument and return END_xxx condition */ +uint8_t line2line(uint8_t num1, uint8_t dir1, uint8_t num2, + uint8_t dir2, uint8_t flags);