Interface NavigationStrategy
-
- All Implemented Interfaces:
public interface NavigationStrategy<T extends Object, P extends Position<P>, Vector<P>, A extends Transformation<P>, L extends ConvexShape<P, A>, R extends Object, N extends ConvexShape<P, A>, E extends Object>
Defines what a node should do when in a new room (= environment's area), this is designed to be used jointly with a NavigationAction: the latter defines how to properly move the node, while delegating the decision on where to move it to a NavigationStrategy.
-
-
Method Summary
Modifier and Type Method Description abstract Unit
inNewRoom(N newRoom)
This is called whenever the node enters a new room. Unit
inUnexpectedNewRoom(N previousRoom, N expectedNewRoom, N actualNewRoom)
This is called in place of inNewRoom when the node ends up in an unexpected room while moving. abstract NavigationAction<T, P, A, L, R, N, E>
getAction()
The NavigationAction used to navigate the environment. OrientingProperty<T, P, A, L, N, E>
getOrientingCapability()
-
-
Method Detail
-
inUnexpectedNewRoom
Unit inUnexpectedNewRoom(N previousRoom, N expectedNewRoom, N actualNewRoom)
This is called in place of inNewRoom when the node ends up in an unexpected room while moving. By default, unexpected rooms are treated just like expected ones.
-
getAction
abstract NavigationAction<T, P, A, L, R, N, E> getAction()
The NavigationAction used to navigate the environment.
-
getOrientingCapability
OrientingProperty<T, P, A, L, N, E> getOrientingCapability()
-
-
-
-