00001 00035 #ifndef BWI_MAPPER_PATH_FINDER_H_ 00036 #define BWI_MAPPER_PATH_FINDER_H_ 00037 00038 #include <nav_msgs/OccupancyGrid.h> 00039 #include <bwi_mapper/structures/point.h> 00040 00041 namespace bwi_mapper { 00042 00048 class PathFinder { 00049 00050 public: 00051 00052 static const int OBSTACLE = -2; 00053 static const int NOT_CONNECTED = -1; 00054 00055 PathFinder(const nav_msgs::OccupancyGrid& map, const Point2d& start_pt); 00056 00057 bool pathExists(const Point2d& pt); 00058 00059 int getManhattanDistance(const Point2d& pt); 00060 00062 int width_; 00063 std::vector<int> search_space_; 00064 00065 }; 00066 00067 } /* bwi_mapper */ 00068 00069 #endif /* end of include guard: BWI_MAPPER_PATH_FINDER_H_ */