cz.cuni.amis.pogamut.base.agent.navigation
Interface IPathPlanner<PATH_ELEMENT>

All Known Implementing Classes:
FloydWarshallMap, UT2004AStarPathPlanner

public interface IPathPlanner<PATH_ELEMENT>

Interface for generic path planner. PathPlanner is responsible for finding paths between two points in the map.

There are several ways how to implement this interface, eg. Dijkstra, A*, external A* from the environment, Floyd-Warshall, etc. ...

Bot programmers are able to supply their own implementation of PathPlanner, eg. for cars or flying vehicles, or path planners that aren't computing the shortest path but paths with some other property (eg. paths without jumps, movers etc.)

IPathPlanner should be independent of the bot.


Method Summary
 IPathFuture<PATH_ELEMENT> computePath(PATH_ELEMENT from, PATH_ELEMENT to)
          Returns a future where the path planner will set the result of its computation.
 

Method Detail

computePath

IPathFuture<PATH_ELEMENT> computePath(PATH_ELEMENT from,
                                      PATH_ELEMENT to)
Returns a future where the path planner will set the result of its computation.

Note that the IPathFuture might already contain the path (i.e., the returned path was computed inside this method or it was a precomputed result). Always examine status of the future before attaching listeners to it.

Parameters:
from -
to -
Returns: