16 #include <vlutil/vlString.h>
17 #include <matrix/vlVector.h>
49 virtual const char*
type()
const;
64 static void followEntityCallback(
DtSimMessage * msg,
void * usrData);
65 virtual void processFollowEntityTask(
DtSimMessage * msg);
67 virtual const DtUUID& entityToFollow()
const;
68 virtual void setEntityToFollow(
const DtUUID& entity);
70 virtual const DtVector& offsetVector()
const;
71 virtual void setOffsetVector(
const DtVector& offsets);
117 virtual bool getCurrentLeaderState(
DtVector& localPosition,
118 DtVector& localVelocity, DtTaitBryan& topoOrientation,
122 virtual double findDesiredFlyingSpeed(
123 const double leaderSpeed,
124 const double forwardPositionError);
131 virtual double flyingControlSpeed(
double targetSpeed,
132 double targetDistance);
149 virtual double calculateControlTurnRate(
150 double desiredHeading,
double distanceFromLine,
double dt);
160 virtual double calculateControlClimbRate(
double altitudeDiff,
161 DtVector& topoEntityCurrentVelocity,
184 virtual double desiredHeading(
double estimatedTurnRadius,
199 virtual double lastHeadingError()
const;
200 virtual void setLastHeadingError(
const double error);
204 virtual double integratedHorizontalError()
const;
205 virtual void setIntegratedHorizontalError(
const double error);
208 virtual void updateIntegratedHorizontalError(
const double currentError,
209 const double dt,
const double decayRate);