3 * @brief Header file of aalgorithm.c
4 * @author Jose Maria Martin Laguna <jmmartin@etud.insa-toulouse.fr>
11 #ifdef CONFIG_PP_USES_RBTREE
16 * Information of a cell in A* Algorithm
18 typedef struct _GraphMapCell {
19 float h; /**< @brief Heuristic cost of shortest path from cell to goal */
20 float f; /**< @brief Estimated cost of shortest path from start to goal */
21 float g; /**< @brief Backpointer length */
22 struct _GraphMapCell *backpointer; /**< Backpointer. */
23 bool processed; /**< @brief Processed flag */
25 #ifndef CONFIG_PP_USES_RBTREE
26 struct _GraphMapCell *next; /**< Pointer to the next cell in a list. */
28 struct _GraphMapCell *next; /**< Pointer to the next cell in a path. */
29 struct rb_node node; /**< Red-Black tree data */
36 void GraphCell2XY(GraphMapCell *c, int *x, int *y);
37 int aAlgorithm(double xstart_real,double ystart_real, double xgoal_real, double ygoal_real, GraphMapCell **original_path);
42 #endif /* _AALGORITHM_H */