19 #include <matrix/vlVector.h>
57 virtual bool requestControl(
int priority,
const DtString& controller);
58 virtual bool hasControl(
int priority);
59 virtual void releaseControl(
int priority);
65 virtual void setDestination(
const DtVector& localDest);
67 virtual void setDesiredSpeed(
double speed);
75 virtual double getOutputSpeed();
78 virtual double getOutputHeading();
80 virtual bool currentPath(std::vector<DtVector>& path);
81 virtual bool abstractPath(std::vector<DtVector>& path);
85 virtual unsigned currentAbstractPathIndex();
93 virtual bool usingTransitionPoint()
const;
96 virtual bool findingTransitionPoint()
const;
103 void* usrData = 0,
int navTag = -1);
104 virtual std::vector<DtVector> searchInArea(
const DtVector& startPoint,
106 void* usrData = 0,
int navTag = -1);
116 virtual bool findFarthestPositionAlongHeading(
const DtVector& start,
117 double heading,
double maxDistance,
DtVector& result,
bool& reachedMaxDist);
123 virtual void moveAlongPath(
const std::vector<DtVector>&);
127 virtual bool findFarthestPositionAlongHeading(
double heading,
double maxDistance,
128 DtVector& result,
bool& reachedMaxDist);
134 virtual DtNavTag upcomingNavTagOnPath()
const;
143 virtual void resetNavigationMethod();
149 bool findValidPositionNearby(
const DtVector& localStart,
double radius,
DtVector& result);
160 static void setLocationCompleteCallback(
DtVrfObject* vrfObject,
void* usr);
161 virtual void processSetLocationComplete(
DtVrfObject* vrfObject);
166 const DtVector& localCoverFrom,
double coverFromRadius,
double distanceFromThreat);
167 virtual bool findInsidePositionFromOutsidePosition(
DtNavArea* navArea,
178 virtual DtVector objectLocationLocalOrParent();
183 virtual bool botShouldBeActive();
198 virtual void findTransitionPointStartingFrom(
const DtVector& startingPoint,
201 virtual void removeDebugTransitionPoints();