53 const DtString& rwName = DtString::nullString(),
58 const DtString& rwName = DtString::nullString(),
69 const DtString& rwName = DtString::nullString(),
89 virtual void setUseHighFidelityGroundClamping(
bool yesOrNo);
90 virtual bool useHighFidelityGroundClamping()
const;
95 virtual void resetSegmentIndex();
96 virtual void incrementSegmentIndex();
97 virtual const int segmentIndex()
const;
98 virtual void setSegmentIndex(
const int);
104 virtual double positionAlongLane()
const;
105 virtual void setPositionAlongLane(
const double p);
110 virtual double speedAlongLane()
const;
111 virtual void setSpeedAlongLane(
const double s);
116 virtual double accelerationAlongLane()
const;
117 virtual void setAccelerationAlongLane(
const double a);
125 virtual double offsetFromLaneCenterline()
const;
126 virtual void setOffsetFromLaneCenterline(
const double offset);
131 virtual double laneChangeWidth()
const;
132 virtual void setLaneChangeWidth(
const double f);
138 virtual void setCurrentLanePosition(
const int lane);
139 virtual const int currentLanePosition()
const;
142 virtual void setCurrentLaneNumber(
const int lane);
143 virtual const int currentLaneNumber()
const;
150 virtual void setPassingLanePosition(
const int lane);
152 virtual const int passingLanePosition()
const;
156 virtual void setTurning(
bool turn);
157 virtual bool turning()
const;
161 virtual void setAllowPassing(
bool canPass);
162 virtual bool allowPassing()
const;
166 virtual void setPassing(
bool pass);
167 virtual bool passing()
const;
171 virtual void setAvoidingCollision(
bool avoid);
172 virtual bool avoidingCollision()
const;
176 virtual void setNeedSwitchLanes(
bool switchLane);
177 virtual bool needSwitchLanes()
const;
181 virtual void setConvoyTargetSpecified(
bool following);
182 virtual bool convoyTargetSpecified()
const;
187 virtual void setConvoyFollowTarget(
const DtUUID&);
195 virtual void setConvoyFollowDistance(
const double dist);
196 virtual const double convoyFollowDistance()
const;
199 void setConvoyUseCatchUpSpeed(
const bool useCatchUpSpeed);
200 const bool convoyUseCatchUpSpeed()
const;
204 virtual const double maxFollowThreshold()
const;
205 virtual void setMaxFollowThreshold(
const double threshold);
UUID is a unique ID wrapper class.
Definition: rwUUID.h:222
DtRailMovementState
Used to keep the current state of an entity as it travels along a route using the rail system...
Definition: railMovementControllerPSR.h:32
DtRwInt myCurrentMovementState
Definition: railMovementControllerPSR.h:217
Definition: railMovementControllerPSR.h:42
DtVrfObject is used to represent any type of simulated object (entities, aggregate, control objects) in a VR-Forces application.
Definition: vrfObject.h:215
DtRwBoolean myTurning
Keep track of whether we were in a turn or not.
Definition: railMovementControllerPSR.h:260
DtRwBoolean myAllowPassing
Were we passing *** Not used in road movement controller; only in old rail move controller.
Definition: railMovementControllerPSR.h:264
Instances of DtRailMovementControllerPSR are used to hold the shared/checkpointable data for a rail m...
Definition: railMovementControllerPSR.h:47
Definition: railMovementControllerPSR.h:41
DtRwInt myPassingLanePosition
Lane number of lane we are moving to.
Definition: railMovementControllerPSR.h:256
Definition: readerWriterRegistry.h:39
DtRwVrfObjectReference myConvoyFollowTarget
Keep track of who we're following if anybody. Used for convoys.
Definition: railMovementControllerPSR.h:283
Definition: railMovementControllerPSR.h:37
DtRwBoolean myPassing
Were we passing *** Not used in road movement controller; only in old rail move controller.
Definition: railMovementControllerPSR.h:268
Definition: railMovementControllerPSR.h:36
Definition: railMovementControllerPSR.h:40
Definition: railMovementControllerPSR.h:35
DtRwReal myPositionAlongLane
The current linear position along the segment in the current lane.
Definition: railMovementControllerPSR.h:233
DtRwInt mySegmentIndex
Keep track of which segment we're on.
Definition: railMovementControllerPSR.h:227
#define DT_DLL_vrfobjcore
This file is used to determine how to build.
Definition: vrfobjcoreDefines.h:24
DtRwReal mySpeedAlongLane
Since kinematics are based on the rail, and not on motion in space, we need speed and acceleration al...
Definition: railMovementControllerPSR.h:239
DtRwReal myConvoyFollowDistance
Keep track of how far behind convoy target we should follow.
Definition: railMovementControllerPSR.h:286
Description: Readable, Writable int.
Definition: rwInt.h:25
virtual DtVrfProcessStateRepository * clone(const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const =0
DtRwBoolean myConvoyTargetSpecified
Quick check to know if we have target to follow.
Definition: railMovementControllerPSR.h:280
DtRwBoolean myNeedToSwitchLanes
Keep track if we need to switch lanes.
Definition: railMovementControllerPSR.h:277
DtRwBoolean myUseHighFidelityGroundClamping
Used by the rail updater when determining the orientation of the entity on the terrain.
Definition: railMovementControllerPSR.h:221
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
Class used as the reader/writer implementation of the DtVrfObjectReference.
Definition: vrfObjectReference.h:204
Class DtVrfProcessStateRepository: Abstract base class for all process state repositories.
Definition: vrfProcessStateRepository.h:43
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtRwBoolean myAvoidingCollision
*** Not used in road movement controller; only in old rail move controller.
Definition: railMovementControllerPSR.h:272
Definition: railMovementControllerPSR.h:43
DtRwInt myCurrentLanePosition
Current lane number.
Definition: railMovementControllerPSR.h:252
DtRwBoolean myConvoyUseCatchUpSpeed
*** Not used in road movement controller; only in old rail move controller. ***
Definition: railMovementControllerPSR.h:289
DtRwReal myMaxFollowThreshold
If entity is following another entity while moving along a rail route, this is the maximum delta they...
Definition: railMovementControllerPSR.h:296
Definition: railMovementControllerPSR.h:39
DtRwReal myLateralOffset
The current offset from the current lane centerline.
Definition: railMovementControllerPSR.h:245
DtRwReal myLaneChangeWidth
Indicates what the distance is between lane centerlines of the lanes the entity is between in a lane ...
Definition: railMovementControllerPSR.h:249
Definition: railMovementControllerPSR.h:38
DtRwReal myAccelerationAlongLane
Definition: railMovementControllerPSR.h:240
virtual DtString type() const =0
Returns the string type of the repository, as defined in procSRTypes.h.
voidpf uLong offset
Definition: ioapi.h:42
Definition: railMovementControllerPSR.h:34
const DtVrfProcessStateRepository & operator=(const DtVrfProcessStateRepository &orig)