00001 #ifndef _NODE_H 00002 #define _NODE_H 00003 // Backwards compatibility with A*. A* stores the heuristic Hvalue whereas D* stores the rhs value. 00004 #define Hvalue rhs 00005 #include <types.h> 00006 #include <occupancy_grid.h> 00007 using namespace std; 00008 00010 00021 class Node 00022 { 00023 public: 00024 // Whether the this node is on the path planned by the robot. 00025 /* If an obstacle ocurrs in a cell with a _pathflag set, then a new planned path must be generated.*/ 00026 // uint8 _pathflag; 00031 uint8 x; 00036 word y; // Don't know why y must be word to work, but x does not!? 00041 uint8 cost; 00047 word Gvalue; // was float 00053 // uint8 Hvalue; // was float 00055 word rhs; // not sure what type this will be. 00056 /* 00057 * Function value of the node. 00058 * The Fvalue of the node is the sum of the actual cost + the heuristic 00059 */ 00060 00061 // short Fvalue; // was float 00067 Node* parent; // Get this out of A* please! 00068 }; 00069 00070 #endif
1.3