19 #include <matrix/vlVector.h>
57 virtual const DtString& navProfile()
const;
58 virtual void setNavProfile(
const DtString& profile);
61 virtual bool hasControl(
int priority);
62 virtual void releaseControl(
int priority);
68 virtual void setDestination(
const DtVector& localDest);
71 virtual void setPositionInvalid();
73 virtual void setDesiredSpeed(
double speed);
81 virtual double getOutputSpeed();
84 virtual double getOutputHeading();
86 virtual bool currentPath(std::vector<DtVector>& path);
87 virtual bool abstractPath(std::vector<DtVector>& path);
91 virtual unsigned currentAbstractPathIndex();
99 virtual bool usingTransitionPoint()
const;
101 virtual bool nextTransitionPoint(
DtVector& tPoint);
104 virtual bool findingTransitionPoint()
const;
111 void* usrData = 0,
int navTag = -1);
112 virtual std::vector<DtVector> searchInArea(
const DtVector& startPoint,
114 void* usrData = 0,
int navTag = -1);
124 virtual bool findFarthestPositionAlongHeading(
const DtVector& start,
125 double heading,
double maxDistance,
DtVector& result,
bool& reachedMaxDist)
const;
131 virtual void moveAlongPath(
const std::vector<DtVector>&);
135 virtual bool findFarthestPositionAlongHeading(
double heading,
double maxDistance,
136 DtVector& result,
bool& reachedMaxDist)
const;
142 virtual DtNavTag upcomingNavTagOnPath()
const;
151 virtual void resetNavigationMethod();
158 virtual DtVector performMovement(
double dt);
165 bool findValidPositionNearby(
const DtVector& localStart,
double radius,
DtVector& result);
176 static void setLocationCompleteCallback(
const DtVrfObject* vrfObject,
void* usr);
177 virtual void processSetLocationComplete(
const DtVrfObject* vrfObject);
182 const DtVector& localCoverFrom,
double coverFromRadius,
double distanceFromThreat);
183 virtual bool findInsidePositionFromOutsidePosition(
DtNavArea* navArea,
194 virtual DtVector objectLocationLocalOrParent()
const;
199 virtual bool botShouldBeActive();
214 virtual void findTransitionPointStartingFrom(
const DtVector& startingPoint,
217 virtual void removeDebugTransitionPoints();
DtNavAreaQuery::Ptr myPendingQuery
Definition: activeBotNavInterface.h:237
const DtNavArea * navArea() const
Definition: activeBotNavInterface.h:55
Definition: vrfObjectNavInterface.h:18
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
void(* DtSearchAreaPointCostModifierEvaluatorFcn)(const DtVector &localPoint, float *currentCost, void *userData)
Definition: navArea.h:200
DtNavBot::DtNavBotPathLocationEvalFcn myPathCostEvalFcn
Definition: activeBotNavInterface.h:248
This is the DtVrfObjectNavInterface subclass for objects which are actively querying the navigation s...
Definition: activeBotNavInterface.h:26
DtVector myTransitionPoint
Definition: activeBotNavInterface.h:231
DtNavBot * myNavBot
Definition: activeBotNavInterface.h:228
boost::shared_ptr< DtCoverPointFinder > myPendingCoverPointFinder
Definition: activeBotNavInterface.h:241
boost::shared_ptr< DtTransitionPointFinder > myPendingPointFinder
Definition: activeBotNavInterface.h:238
DtOnPathToGraphVertexComputedResult(* DtPathCalculatedEvaluatorFcn)(const DtVector &localPoint, double pathCost, void *userData)
Definition: navArea.h:201
Wrapper for GameWare NavTag.
Definition: navDataTag.h:54
DtOnGraphVertexVisitedResult(* DtPointOfInterestEvaluatorFcn)(const DtVector &localPoint, void *userData)
Definition: navArea.h:198
std::vector< DtNavTagAndLocation > DtNavTagAndLocationList
Definition: navBot.h:24
bool myWaitingForInitialNav
Definition: activeBotNavInterface.h:256
DtSharedVrfObjectReference class will allocate an empty DtVrfObjectReference if one is not assigned s...
Definition: vrfObjectReference.h:102
DtTime myInitialSimTime
Definition: activeBotNavInterface.h:260
int myControllerPriority
Definition: activeBotNavInterface.h:243
bool mySetDestinationWaitingForNav
Definition: activeBotNavInterface.h:257
DtString myController
Definition: activeBotNavInterface.h:244
bool myFindingDestNavAreaTransitionPoint
Definition: activeBotNavInterface.h:235
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
DT_DLL_VRVCORE double distance(const makVrv::DtCoordinateSystem &, const DtVector &from, const DtVector &to)
Returns the distance from the two points.
Contains all the data and logic for navigation within a specific area.
Definition: navArea.h:179
virtual bool init()
Virtual init, called from the create() method.
DtVector myDestinationWaitingForNav
Definition: activeBotNavInterface.h:259
std::vector< DtSharedVrfObjectReference > myDebugTransitionPoints
Definition: activeBotNavInterface.h:251
DtVector myDestNavAreaTransitionPoint
Definition: activeBotNavInterface.h:234
DtString myStatusString
Definition: activeBotNavInterface.h:246
virtual DtVector transitionPoint() const
Definition: activeBotNavInterface.h:97
boost::shared_ptr< DtNavAreaQuery > Ptr
Definition: navArea.h:59
bool myNavigationIsEnabled
Definition: activeBotNavInterface.h:258
*array controller(no time code)*/template< class Instance
//!//!//!//!//!//!//!//!//!//!//!//
DtNavArea * navArea()
Definition: activeBotNavInterface.h:54
DtString myProfile
Definition: activeBotNavInterface.h:227
bool myFailedToFindTransitionPoint
Definition: activeBotNavInterface.h:253
bool myFailedToFindCoverPoint
Definition: activeBotNavInterface.h:254
DtVrfObjectNavInterface & operator=(const DtVrfObjectNavInterface &orig)
Not Implemented.
DtNavArea * myDestNavArea
Definition: activeBotNavInterface.h:233
DtNavArea * myNavArea
Definition: activeBotNavInterface.h:229
PathStatus
Definition: navBot.h:121
virtual bool ableToNavigate() const
Generic call. Basic nav interfaces are not able to navigate.
NavigationMethod
Definition: navBot.h:30
virtual void changingNavArea(DtNavArea *newNavArea)
Called when about to change to a new navArea.
void * myPathCostEvalFcnUsrData
Definition: activeBotNavInterface.h:249
DtNavBot::NavigationMethod myDefaultNavigationMethod
Definition: activeBotNavInterface.h:262
bool(* DtNavBotPathLocationEvalFcn)(const DtNavTag &navTag, float *costMultiplier, void *userData)
Definition: navBot.h:117