74 static void moveAlongCallback(
DtSimMessage* msg,
void* usr);
94 static void routeChangedCallback(
DtVrfObject* obj,
void* user);
104 static DtReaderWriter* provideCurrentMinTurnRadius(
void* controller);
113 static DtReaderWriter* provideTurnRadiusForOrderedSpeed(
void* controller);
116 static DtReaderWriter* provideNextRoutePointIndex(
void* controller);
126 virtual void processRouteChanged(
DtVrfObject* obj);
158 virtual bool targetNextVertex();
160 static void objectAboutToBeRemovedCallback(
DtVrfObject* obj,
void* usr);
200 virtual DtVector* getNextRoutePoint(
int & index);
205 virtual DtVector previousRoutePoint();
214 virtual void setStateForCurrentPoint();
235 virtual void moveToMiddleOrFinalPoint();
249 virtual bool shouldMoveToRouteSegment(
double& distanceToSegment);
254 virtual void controlMovementToRouteSegment(
double distanceToSegment);
264 virtual DtReal computeStartTurnDistance2();
268 virtual DtReal minTurnRadiusForSpeed(
double speed)
const;
284 virtual void emptyVertexList();
287 virtual void processObjectAboutToBeRemoved(
DtVrfObject* obj);