00001 #ifndef INCLUDE_NAVLIB
00002 #define INCLUDE_NAVLIB
00003 
00004 #include "dynamics.h"
00005 #include "geometry.h"
00006 #include "path.h"
00007 #include "timer.h"
00008 #include "controller/controller.h"
00009 #include "identifier/identifier.h"
00010 #include "pathplanner/pathPlanner.h"
00011 #include "tpbvpsolver/tpbvpSolver.h"
00012 
00013 namespace navlib
00014 {
00015 
00017 std::vector<PathPoint> findDoorways(const Pose& psensor, const Shape* body, std::vector<Polar> obstacles);
00018 std::vector<PathPoint> findDoorways(const Pose& psensor, double minWidth, double minLength, std::vector<Polar> obstacles);
00019 
00021 std::vector<Sector> findSafeRegions(std::vector<Polar>& points, const double& maxLength);
00022 
00024 double getClearance(Shape* body, std::vector<Point> obstacles, const double& maxdist);
00025 
00027 double getTimeTilCollision(const Shape* body, double v, double w, std::vector<Point> obstacles);
00028 double getTimeTilCollision(const Pose& pose, const Shape* body, double v, double w, std::vector<Point> obstacles);
00029 
00030 }
00031 
00032 #endif