|
Caddy
A 2005 Roborodentia entry with vision and path planning capability
|
Course defined by a connected grid of nodes. More...
#include <stdint.h>#include <stdbool.h>

Go to the source code of this file.
Data Structures | |
| struct | GraphNode |
| Definition of each node (vertex) in the course map node. More... | |
Macros | |
| #define | NUM_NODES 43 |
| #define | START_NODE 0 |
| #define | START_HEADING -64 |
| #define | STOP_NODE 42 |
| #define | BALL_NODE_MIN 1 |
| #define | BALL_NODE_MAX 20 |
| #define | JUNCTION_MIN 21 |
| #define | JUNCTION_MAX 41 |
| #define | NUM_BALL_NODES (BALL_NODE_MAX - BALL_NODE_MAX + 1) |
| #define | MAX_ADJ_NODES 3 |
| #define | N_WEST -41 |
| #define | S_EAST 87 |
| #define | BONUS_BALL_1 24 |
| #define | BONUS_BALL_2 30 |
| #define | SENSOR_NODE 37 |
| #define | BB1_HEADING 32 |
| #define | BB2_HEADING -96 |
| #define | NUM_FIXED_GOALS 3 |
| #define | NUM_RANDOM_GOALS 3 |
| #define | NUM_GOALS NUM_FIXED_GOALS + NUM_RANDOM_GOALS |
Typedefs | |
| typedef struct GraphNode | GraphNodeType |
| Definition of each node (vertex) in the course map node. | |
Functions | |
| bool | isJunction (uint8_t nodeNum) |
| uint8_t | getCostToNode (GraphNodeType *node, uint8_t nodeNum) |
| uint8_t | getNodeAtHeading (GraphNodeType *node, int8_t heading) |
| bool | isBallNode (uint8_t nodeNum) |
| void | getNode (uint8_t nodeNum, GraphNodeType *node) |
Course defined by a connected grid of nodes.
Conserves SRAM by storing graph of arena in FLASH memory. See doc directory for image of arena with node numbers.
Definition in file node_list.h.
| #define BALL_NODE_MAX 20 |
End of node number range used for ball nodes
Definition at line 51 of file node_list.h.
| #define BALL_NODE_MIN 1 |
Beginning of node number range used for ball nodes
Definition at line 49 of file node_list.h.
| #define BB1_HEADING 32 |
The heading required to pickup bonus ball 1
Definition at line 75 of file node_list.h.
| #define BB2_HEADING -96 |
The heading required to pickup bonus ball 2
Definition at line 77 of file node_list.h.
| #define BONUS_BALL_1 24 |
Node number of bonus ball 1
Definition at line 68 of file node_list.h.
| #define BONUS_BALL_2 30 |
Node number of bonus ball 2
Definition at line 70 of file node_list.h.
| #define JUNCTION_MAX 41 |
End of node number range used for junction nodes
Definition at line 55 of file node_list.h.
| #define JUNCTION_MIN 21 |
Beginning of node number range used for junction nodes
Definition at line 53 of file node_list.h.
| #define MAX_ADJ_NODES 3 |
Maximum number nodes that can be adjacent to one node
Definition at line 61 of file node_list.h.
| #define N_WEST -41 |
Direction of north west in binary radians (brads)
Definition at line 63 of file node_list.h.
| #define NUM_FIXED_GOALS 3 |
The number of goals known a priori (nest sensor and two bonus balls)
Definition at line 80 of file node_list.h.
| #define NUM_GOALS NUM_FIXED_GOALS + NUM_RANDOM_GOALS |
Total number of goals
Definition at line 84 of file node_list.h.
| #define NUM_NODES 43 |
Total number of nodes in the arena map
Definition at line 39 of file node_list.h.
| #define NUM_RANDOM_GOALS 3 |
The number of goals with unknown location at the start of a run (ground balls)
Definition at line 82 of file node_list.h.
| #define S_EAST 87 |
Convenience macor for direction of south east in (brads)
Definition at line 65 of file node_list.h.
| #define SENSOR_NODE 37 |
Node number of the nest release sensor
Definition at line 72 of file node_list.h.
| #define START_HEADING -64 |
Heading of the robot at the beginning of the course
Definition at line 44 of file node_list.h.
| #define START_NODE 0 |
Beginning of the course
Definition at line 42 of file node_list.h.
| #define STOP_NODE 42 |
End of the course
Definition at line 46 of file node_list.h.
| typedef struct GraphNode GraphNodeType |
Definition of each node (vertex) in the course map node.
Defines the directions and distances to adjacent nodes.
1.8.1.2