VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Attributes
DtRailMovementControllerPSR Class Reference

Instances of DtRailMovementControllerPSR are used to hold the shared/checkpointable data for a rail movement system.

Inheritance diagram for DtRailMovementControllerPSR:
Inheritance graph
[legend]

Public Member Functions

 DtRailMovementControllerPSR (DtLocalObject *vrfObject, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 
 DtRailMovementControllerPSR (const DtRailMovementControllerPSR &orig, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 
virtual ~DtRailMovementControllerPSR () override
 
DtRailMovementControllerPSRoperator= (const DtRailMovementControllerPSR &orig)
 
virtual
DtVrfProcessStateRepository
clone (const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0) const override
 
virtual DtString type () const override
 
virtual void setCurrentMovementState (DtRailMovementState state)
 
virtual DtRailMovementState currentMovementState () const
 
virtual double offsetFromLaneCenterline () const
 
virtual void setOffsetFromLaneCenterline (const double offset)
 
virtual double laneHeading () const
 
virtual void setLaneHeading (const double heading)
 
virtual double laneChangeWidth () const
 
virtual void setLaneChangeWidth (const double f)
 
virtual void setCurrentLanePosition (const int lane)
 
virtual const int currentLanePosition () const
 
virtual void setCurrentLaneNumber (const int lane)
 
virtual const int currentLaneNumber () const
 
virtual void setIsAcquiringLane (bool isAcquiring)
 
virtual bool isAcquiringLane () const
 
void setConvoyUseCatchUpSpeed (const bool useCatchUpSpeed)
 
const bool convoyUseCatchUpSpeed () const
 
virtual void setUseHighFidelityGroundClamping (bool yesOrNo)
 
virtual bool useHighFidelityGroundClamping () const
 
virtual void resetSegmentIndex ()
 
virtual void incrementSegmentIndex ()
 
virtual const int segmentIndex () const
 
virtual void setSegmentIndex (const int)
 
virtual double positionAlongLane () const
 
virtual void setPositionAlongLane (const double p)
 
virtual double speedAlongLane () const
 
virtual void setSpeedAlongLane (const double s)
 
virtual double accelerationAlongLane () const
 
virtual void setAccelerationAlongLane (const double a)
 
virtual void setPassingLanePosition (const int lane)
 
virtual const int passingLanePosition () const
 
virtual void setTurning (bool turn)
 
virtual bool turning () const
 
virtual void setAllowPassing (bool canPass)
 
virtual bool allowPassing () const
 
virtual void setPassing (bool pass)
 
virtual bool passing () const
 
virtual void setAvoidingCollision (bool avoid)
 
virtual bool avoidingCollision () const
 
virtual void setNeedSwitchLanes (bool switchLane)
 
virtual bool needSwitchLanes () const
 
virtual void setConvoyTargetSpecified (bool following)
 
virtual bool convoyTargetSpecified () const
 
virtual void setConvoyFollowTarget (const DtUUID &)
 
virtual DtSimObjectReference convoyFollowTarget () const
 
virtual void setConvoyFollowDistance (const double dist)
 
virtual const double convoyFollowDistance () const
 
virtual const double maxFollowThreshold () const
 
virtual void setMaxFollowThreshold (const double threshold)
 
virtual bool useBreakdownLane () const
 
virtual void setUseBreakdownLane (const bool bYes)
 
virtual bool useOpposingLane () const
 
virtual void setUseOpposingLane (const bool bYes)
 
virtual void setUseTaskSpeed (const bool value)
 
virtual bool useTaskSpeed () const
 
virtual void setTaskSpeed (const double value)
 
virtual double taskSpeed () const
 
- Public Member Functions inherited from DtVrfProcessStateRepository
 DtVrfProcessStateRepository (DtLocalObject *vrfObject, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 
 DtVrfProcessStateRepository (const DtVrfProcessStateRepository &orig, const DtString &rwName=DtString::nullString(), DtReaderWriterRegistry *parentRegistry=0)
 
const DtVrfProcessStateRepositoryoperator= (const DtVrfProcessStateRepository &orig)
 
virtual ~DtVrfProcessStateRepository () override
 
virtual bool init ()
 
virtual bool loadedFromMTL () const
 
virtual void getSelf (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings) override
 
- Public Member Functions inherited from DtReaderWriter
 DtReaderWriter ()
 
 DtReaderWriter (const DtString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false)
 
 DtReaderWriter (const DtSymbolString &name, DtReaderWriterRegistry *parentRegistry=NULL, bool readonly=false)
 
 DtReaderWriter (const DtString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 
 DtReaderWriter (const DtSymbolString &name, const DtReaderWriter &orig, DtReaderWriterRegistry *parentRegistry=NULL)
 
 DtReaderWriter (const DtReaderWriter &, DtReaderWriterRegistry *parentRegistry=NULL)
 
const DtReaderWriteroperator= (const DtReaderWriter &orig)
 
bool operator== (const DtReaderWriter &) const
 
bool operator!= (const DtReaderWriter &rhs) const
 
virtual ~DtReaderWriter ()
 
virtual void putSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
 
virtual void postPutSelf ()
 
virtual void prePutSelf ()
 
virtual void postGetSelf ()
 
virtual void preGetSelf ()
 
virtual void writeSelf (std::string &fp, int indentLevel=0, bool writeUnspecified=false, const DtFilename &path=DtFilename::nullFilename())
 
virtual DtSymbolString name () const
 
virtual void addAlias (const DtSymbolString &alias)
 
virtual void addAlias (const DtString &alias)
 
virtual bool hasAlias (const DtSymbolString &alias)
 
virtual const aliasContaineraliases () const
 
virtual void setReadonly (bool flag)
 
bool isReadonly () const
 
virtual void reset ()
 
virtual int alignment () const
 
virtual bool variableIsBound () const
 
virtual void unbindVariable ()
 
virtual void setName (const DtString &)
 
virtual const charreaderWriterType () const
 
virtual const charxmlType () const
 
virtual DtString prettyPrint () const
 
std::string debugText () const
 
virtual void bindVariables (DtVariableBindingsList variableBindings)
 
virtual std::list
< DtVariableNameType
unboundVariables () const
 
bool invalid () const
 
virtual bool hasChild (const DtReaderWriter *p) const
 
virtual bool hasVariableReference () const
 
virtual void bindLocalVariables (const DtVariableBindingsList &variableBindings)
 
virtual void recordUpdateTime () const
 
virtual bool changedSinceLastChecked ()
 
virtual bool peekChangedSinceLastChecked () const
 
virtual void putData (std::string &fp, int indentLevel=0)
 
virtual DtlObjPtr getData (DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
 
virtual void setValueSpecified (bool specified, bool recurse=false)
 
virtual bool valueSpecified () const
 
virtual bool isVariableReference () const
 
virtual void setIsVariableReference (bool value)
 
virtual void clearAllVariableReferenceFlags ()
 
virtual DtSymbolString variableName () const
 
virtual void setVariableName (const DtSymbolString variableName)
 
virtual const DtReaderWriterdefaultRWValue () const
 
virtual DtReaderWriterdefaultRWValue ()
 
virtual void setDefaultRWValue (DtReaderWriter *)
 
virtual bool checkAndSetDefaultRWValue (DtlObjPtr args, const DtReaderWriter::SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &variableBindings=nullVariableReference())
 
const DtReaderWriterRegistryregistry () const
 
DtReaderWriterRegistryregistry ()
 
virtual DtPropertyInterfaceproperty ()
 
virtual const DtPropertyInterfaceproperty () const
 
virtual DtString toXml () const
 
virtual DtRwVariableBindingsgenerateVariableBindings () const
 
virtual bool toXml (const DtFilename &) const
 
virtual bool fromXml (const DtString &)
 
virtual bool fromXmlFile (const DtFilename &)
 
virtual void putSelf (DtEnvironmentSP, DtEnvValueSP parent) const
 
virtual void putData (DtEnvironmentSP, DtEnvValueSP value) const
 
virtual void putVariableReference (DtEnvironmentSP, DtEnvValueSP value) const
 
virtual void getSelf (const DtEnvironmentSP, const DtEnvValueSP root, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList())
 
virtual void getData (const DtEnvironmentSP, const DtEnvValueSP, const SearchPaths &searchPaths=SearchPaths(), const DtVariableBindingsList &bindings=DtVariableBindingsList())
 
virtual void unrecognizedItem (const DtEnvironmentSP env, const DtEnvValueSP root, const SearchPaths &searchPaths, const DtVariableBindingsList &varBindings)
 
virtual void getVariableReference (DtEnvironmentSP, DtEnvValueSP value)
 

Static Public Member Functions

static
DtVrfProcessStateRepository
creator (const DtString &rwName, DtLocalObject *vrfObject, DtReaderWriterRegistry *parentRegistry)
 
- Static Public Member Functions inherited from DtVrfProcessStateRepository
static
DtVrfProcessStateRepositoryFactory
factory ()
 
static void setFactory (DtVrfProcessStateRepositoryFactory *factory)
 
static void addVrfProcessStateRepositoryCreatorFcn (const DtString &type, DtVrfProcessStateRepositoryCreatorFcn fcn)
 
static
DtVrfProcessStateRepository
createRepository (const DtString &name, const DtString &type, DtLocalObject *vrfObject, DtReaderWriterRegistry *parentRegistry=0)
 
- Static Public Member Functions inherited from DtReaderWriter
static void putIndent (std::string &fp, int indentLevel)
 
static const
DtVariableBindingsList
nullVariableReference ()
 
static void setPostGetSelfCallback (DtGetSelfCallbackFcn fcn, void *usrData)
 
static void setPrePutSelfCallback (DtPutSelfCallbackFcn fcn, void *usrData)
 
static void setPutIndent (bool)
 
static bool putIndent ()
 
static const chartheXmlType ()
 
static const DtFilename & appPath ()
 
static void setFactoryCreatorFunction (DtReaderWriterFactoryCreatorFcn fcn)
 
static void createReaderWriterFactory ()
 
static void cleanupFactory ()
 
static DtReaderWriterFactoryfactory ()
 
static void setOutputStream (DtOutputStream *stream)
 
static DtOutputStream & outputStream ()
 
static DtReaderWritercreateFromXmlFile (const DtFilename &, bool createAsProperty=false)
 
static DtReaderWritercreateFromXml (const DtString &, bool createAsProperty=false)
 
static DtReaderWritercreateFromEnvironment (DtEnvironmentSP, bool createAsProperty=false)
 
static DtString getAttribute (DtEnvironmentSP env, const DtString &name, DtEnvValueSP root)
 

Protected Attributes

DtRwInt myCurrentMovementState
 
DtRwBoolean myUseHighFidelityGroundClamping
 
DtRwInt mySegmentIndex
 
DtRwReal myPositionAlongLane
 
DtRwReal myLateralOffset
 
DtRwReal myLaneHeading
 
DtRwReal myLaneChangeWidth
 
DtRwInt myCurrentLanePosition
 
DtRwInt myPassingLanePosition
 
DtRwBoolean myTurning
 
DtRwBoolean myAllowPassing
 
DtRwBoolean myPassing
 
DtRwBoolean myAvoidingCollision
 
DtRwBoolean myNeedToSwitchLanes
 
DtRwBoolean myIsAcquiringLane
 
DtRwBoolean myConvoyTargetSpecified
 
DtRwSimObjectReference myConvoyFollowTarget
 
DtRwReal myConvoyFollowDistance
 
DtRwBoolean myConvoyUseCatchUpSpeed
 
DtRwReal myMaxFollowThreshold
 
DtRwReal mySpeedAlongLane
 
DtRwReal myAccelerationAlongLane
 
DtRwBoolean myUsingBreakdownLane
 
DtRwBoolean myUsingOpposingLane
 
DtRwReal myTaskSpeed
 
DtRwBoolean myUseTaskSpeed
 
- Protected Attributes inherited from DtVrfProcessStateRepository
DtLocalObjectmyVrfObject
 
bool myLoadedFromMTL
 
- Protected Attributes inherited from DtReaderWriter
const DtSymbolString myName
 
DtReaderWriterRegistry myRegistry
 
DtReaderWriterRegistrymyParentRegistry
 
bool myValueSpecified
 
bool myReadOnlyFlag
 
bool myIsVariableReference
 
DtSymbolString myVariableName
 
bool myVariableIsBound
 
DtReaderWritermyDefaultValue
 
aliasContainer myAliases
 
bool myInvalid
 
bool myChangedFlag
 

Additional Inherited Members

- Public Types inherited from DtReaderWriter
typedef std::vector
< DtSymbolString
aliasContainer
 
typedef std::vector
< DtSymbolString >::iterator 
aliasIter
 
typedef std::vector
< DtSymbolString >
::const_iterator 
aliasConstIter
 
typedef std::vector< DtFilename > SearchPaths
 
typedef std::pair
< DtSymbolString, DtString
DtVariableNameType
 
typedef DtReaderWriterFactory *(* DtReaderWriterFactoryCreatorFcn )()
 
- Protected Member Functions inherited from DtVrfProcessStateRepository
 DtVrfProcessStateRepository ()
 
const DtSimObjectvrfObject () const
 
- Protected Member Functions inherited from DtReaderWriter
virtual void bindToRwAsVariable (const DtReaderWriter *rw)
 
- Static Protected Attributes inherited from DtVrfProcessStateRepository
static
DtVrfProcessStateRepositoryFactory
theFactory
 
- Static Protected Attributes inherited from DtReaderWriter
static DtString theUnspecifiedValue
 
static DtGetSelfCallbackInfo thePostGetSelfCallback
 
static DtPutSelfCallbackInfo thePrePutSelfCallback
 
static const DtVariableBindingsList theEmptyVariableBindingsList
 
static bool theCreatorFcnSet
 
static DtReaderWriterFactorytheFactory
 
static
DtReaderWriterFactoryCreatorFcn 
theFactoryCreatorFcn
 
static bool thePutIndent
 
static DtOutputStream * theOutputStream
 

Constructor & Destructor Documentation

DtRailMovementControllerPSR::DtRailMovementControllerPSR ( DtLocalObject vrfObject,
const DtString rwName = DtString::nullString(),
DtReaderWriterRegistry parentRegistry = 0 
)

constructor

DtRailMovementControllerPSR::DtRailMovementControllerPSR ( const DtRailMovementControllerPSR orig,
const DtString rwName = DtString::nullString(),
DtReaderWriterRegistry parentRegistry = 0 
)

copy constructor

virtual DtRailMovementControllerPSR::~DtRailMovementControllerPSR ( )
overridevirtual

destructor

Member Function Documentation

DtRailMovementControllerPSR& DtRailMovementControllerPSR::operator= ( const DtRailMovementControllerPSR orig)

assignment operator

virtual DtVrfProcessStateRepository* DtRailMovementControllerPSR::clone ( const DtString rwName = DtString::nullString(),
DtReaderWriterRegistry parentRegistry = 0 
) const
overridevirtual

returns a newly created copy of this object

Implements DtVrfProcessStateRepository.

virtual DtString DtRailMovementControllerPSR::type ( ) const
overridevirtual

Returns the string type of the repository, as defined in psrTypes.h. (DtVrfAutomotiveProcessStateRepositoryType).

Implements DtVrfProcessStateRepository.

virtual void DtRailMovementControllerPSR::setCurrentMovementState ( DtRailMovementState  state)
virtual
virtual DtRailMovementState DtRailMovementControllerPSR::currentMovementState ( ) const
virtual
virtual void DtRailMovementControllerPSR::setUseHighFidelityGroundClamping ( bool  yesOrNo)
virtual

When clamping the entity to the ground, using high fidelity ground clamping will cause the entity to use all four support points when determining the plane on which the entity is positioned. When not using high fidelity, the entity will only use a single support point, the center, to determine the normal. Defaults to true, as that is the safer initial value.

Note
This can lead to errors if the support points lie on different polygons, as the entity will appear to be clamped to the polygon on which the center lies.
virtual bool DtRailMovementControllerPSR::useHighFidelityGroundClamping ( ) const
virtual

When clamping the entity to the ground, using high fidelity ground clamping will cause the entity to use all four support points when determining the plane on which the entity is positioned. When not using high fidelity, the entity will only use a single support point, the center, to determine the normal. Defaults to true, as that is the safer initial value.

Note
This can lead to errors if the support points lie on different polygons, as the entity will appear to be clamped to the polygon on which the center lies.
virtual void DtRailMovementControllerPSR::resetSegmentIndex ( )
virtual

resets to -1

virtual void DtRailMovementControllerPSR::incrementSegmentIndex ( )
virtual

resets to -1

virtual const int DtRailMovementControllerPSR::segmentIndex ( ) const
virtual

resets to -1

virtual void DtRailMovementControllerPSR::setSegmentIndex ( const int  )
virtual

resets to -1

virtual double DtRailMovementControllerPSR::positionAlongLane ( ) const
virtual

The linear position of the turn center (rear axle) along the current road segment.

virtual void DtRailMovementControllerPSR::setPositionAlongLane ( const double  p)
virtual

The linear position of the turn center (rear axle) along the current road segment.

virtual double DtRailMovementControllerPSR::speedAlongLane ( ) const
virtual

The 1-dimensional speed of the entity along the lane.

virtual void DtRailMovementControllerPSR::setSpeedAlongLane ( const double  s)
virtual

The 1-dimensional speed of the entity along the lane.

virtual double DtRailMovementControllerPSR::accelerationAlongLane ( ) const
virtual

The 1-dimensional acceleration of the entity along the lane.

virtual void DtRailMovementControllerPSR::setAccelerationAlongLane ( const double  a)
virtual

The 1-dimensional acceleration of the entity along the lane.

virtual double DtRailMovementControllerPSR::offsetFromLaneCenterline ( ) const
virtual

The lateral offset from the current lane's center line. Positive to the right. Note that if driving on the left, this is an offset to the left in world because the road segment takes the direction toward the outside of the road to be positive in any case.

virtual void DtRailMovementControllerPSR::setOffsetFromLaneCenterline ( const double  offset)
virtual
virtual double DtRailMovementControllerPSR::laneHeading ( ) const
virtual

Heading of road in current position on lane.

virtual void DtRailMovementControllerPSR::setLaneHeading ( const double  heading)
virtual
virtual double DtRailMovementControllerPSR::laneChangeWidth ( ) const
virtual

Indicates the total distance between lane centerlines of the lane change maneuver being performed. Set when the lane change is begun.

virtual void DtRailMovementControllerPSR::setLaneChangeWidth ( const double  f)
virtual
virtual void DtRailMovementControllerPSR::setCurrentLanePosition ( const int  lane)
virtual

Deprecated:

virtual const int DtRailMovementControllerPSR::currentLanePosition ( ) const
virtual
virtual void DtRailMovementControllerPSR::setCurrentLaneNumber ( const int  lane)
virtual

This is the lane we are currently traveling in, or moving to in a lane-change maneuver. This is a 1-based lane number.

virtual const int DtRailMovementControllerPSR::currentLaneNumber ( ) const
virtual
virtual void DtRailMovementControllerPSR::setPassingLanePosition ( const int  lane)
virtual

This is the lane the entity is going to in a lane-change maneuver. This is a 1-based lane number. Not used in road movement controller.

virtual const int DtRailMovementControllerPSR::passingLanePosition ( ) const
virtual

This is the lane the entity is going to in a lane-change maneuver. This is a 1-based lane number. Not used in road movement controller.

virtual void DtRailMovementControllerPSR::setTurning ( bool  turn)
virtual
virtual bool DtRailMovementControllerPSR::turning ( ) const
virtual
virtual void DtRailMovementControllerPSR::setAllowPassing ( bool  canPass)
virtual
virtual bool DtRailMovementControllerPSR::allowPassing ( ) const
virtual
virtual void DtRailMovementControllerPSR::setPassing ( bool  pass)
virtual
virtual bool DtRailMovementControllerPSR::passing ( ) const
virtual
virtual void DtRailMovementControllerPSR::setAvoidingCollision ( bool  avoid)
virtual
virtual bool DtRailMovementControllerPSR::avoidingCollision ( ) const
virtual
virtual void DtRailMovementControllerPSR::setNeedSwitchLanes ( bool  switchLane)
virtual
virtual bool DtRailMovementControllerPSR::needSwitchLanes ( ) const
virtual
virtual void DtRailMovementControllerPSR::setIsAcquiringLane ( bool  isAcquiring)
virtual

Indicates that the vehicle should move to get onto a lane, i.e. initially (not just changing lanes).

virtual bool DtRailMovementControllerPSR::isAcquiringLane ( ) const
virtual
virtual void DtRailMovementControllerPSR::setConvoyTargetSpecified ( bool  following)
virtual
virtual bool DtRailMovementControllerPSR::convoyTargetSpecified ( ) const
virtual
virtual void DtRailMovementControllerPSR::setConvoyFollowTarget ( const DtUUID )
virtual

Was: setConvoyFollowTargetName.

virtual DtSimObjectReference DtRailMovementControllerPSR::convoyFollowTarget ( ) const
virtual

Was: convoyFollowTargetName.

virtual void DtRailMovementControllerPSR::setConvoyFollowDistance ( const double  dist)
virtual
virtual const double DtRailMovementControllerPSR::convoyFollowDistance ( ) const
virtual
void DtRailMovementControllerPSR::setConvoyUseCatchUpSpeed ( const bool  useCatchUpSpeed)
const bool DtRailMovementControllerPSR::convoyUseCatchUpSpeed ( ) const
virtual const double DtRailMovementControllerPSR::maxFollowThreshold ( ) const
virtual
virtual void DtRailMovementControllerPSR::setMaxFollowThreshold ( const double  threshold)
virtual
virtual bool DtRailMovementControllerPSR::useBreakdownLane ( ) const
virtual

Road passing options.

virtual void DtRailMovementControllerPSR::setUseBreakdownLane ( const bool  bYes)
virtual

Road passing options.

virtual bool DtRailMovementControllerPSR::useOpposingLane ( ) const
virtual

Road passing options.

virtual void DtRailMovementControllerPSR::setUseOpposingLane ( const bool  bYes)
virtual

Road passing options.

virtual void DtRailMovementControllerPSR::setUseTaskSpeed ( const bool  value)
virtual

Sets whether to use task speed, sets value.

virtual bool DtRailMovementControllerPSR::useTaskSpeed ( ) const
virtual

Sets whether to use task speed, sets value.

virtual void DtRailMovementControllerPSR::setTaskSpeed ( const double  value)
virtual

Sets whether to use task speed, sets value.

virtual double DtRailMovementControllerPSR::taskSpeed ( ) const
virtual

Sets whether to use task speed, sets value.

static DtVrfProcessStateRepository* DtRailMovementControllerPSR::creator ( const DtString rwName,
DtLocalObject vrfObject,
DtReaderWriterRegistry parentRegistry 
)
static

Returns a newly created instance of this class.

Member Data Documentation

DtRwInt DtRailMovementControllerPSR::myCurrentMovementState
protected
DtRwBoolean DtRailMovementControllerPSR::myUseHighFidelityGroundClamping
protected

Used by the rail updater when determining the orientation of the entity on the terrain.

DtRwInt DtRailMovementControllerPSR::mySegmentIndex
protected

Keep track of which segment we're on. This index corresponds to the order of rail segments, although the rail segments are not kept in a vector. The index is incremented in parallel with advancing to the next() segment.

DtRwReal DtRailMovementControllerPSR::myPositionAlongLane
protected

The current linear position along the segment in the current lane. This is the distance along the lane centerline from the start of the entry curve for the lane. This is the position of the turn center (rear axle), not the origin.

DtRwReal DtRailMovementControllerPSR::mySpeedAlongLane
protected

Since kinematics are based on the rail, and not on motion in space, we need speed and acceleration along the lane as state; these are not saved in the entity State Repository.

DtRwReal DtRailMovementControllerPSR::myAccelerationAlongLane
protected

Since kinematics are based on the rail, and not on motion in space, we need speed and acceleration along the lane as state; these are not saved in the entity State Repository.

DtRwReal DtRailMovementControllerPSR::myLateralOffset
protected

The current offset from the current lane centerline. Positive is to the right.

DtRwReal DtRailMovementControllerPSR::myLaneHeading
protected

Useful for determining if the entity actual heading matches the road heading in the location it is supposed to be (see DtRoadMovementUpdater::updateLaneAcquisitionStatus.

DtRwReal DtRailMovementControllerPSR::myLaneChangeWidth
protected

Indicates what the distance is between lane centerlines of the lanes the entity is between in a lane change maneuver.

DtRwInt DtRailMovementControllerPSR::myCurrentLanePosition
protected

Current lane NUMBER. This is a 1-based lane number, with 1 on the outside.

DtRwInt DtRailMovementControllerPSR::myPassingLanePosition
protected

Lane number of lane we are moving to. *** Not used in road movement controller; only in old rail move controller. ***.

DtRwBoolean DtRailMovementControllerPSR::myTurning
protected

Keep track of whether we were in a turn or not. *** Not used in road movement controller; only in old rail move controller. ***.

DtRwBoolean DtRailMovementControllerPSR::myAllowPassing
protected

Were we passing *** Not used in road movement controller; only in old rail move controller. ***.

DtRwBoolean DtRailMovementControllerPSR::myPassing
protected

Were we passing *** Not used in road movement controller; only in old rail move controller. ***.

DtRwBoolean DtRailMovementControllerPSR::myAvoidingCollision
protected

*** Not used in road movement controller; only in old rail move controller. ***

DtRwBoolean DtRailMovementControllerPSR::myNeedToSwitchLanes
protected

Keep track if we need to switch lanes. This could be due to an upcoming turn, need to pass someone, user told us to switch. *** Not used in road movement controller; only in old rail move controller. ***.

DtRwBoolean DtRailMovementControllerPSR::myIsAcquiringLane
protected

Indicates that the vehicle is off the normal lane track and is moving to get onto the road/lane, e.g. at the very beginning of the task.

DtRwBoolean DtRailMovementControllerPSR::myConvoyTargetSpecified
protected

Quick check to know if we have target to follow.

DtRwSimObjectReference DtRailMovementControllerPSR::myConvoyFollowTarget
protected

Keep track of who we're following if anybody. Used for convoys.

DtRwReal DtRailMovementControllerPSR::myConvoyFollowDistance
protected

Keep track of how far behind convoy target we should follow.

DtRwBoolean DtRailMovementControllerPSR::myConvoyUseCatchUpSpeed
protected

*** Not used in road movement controller; only in old rail move controller. ***

DtRwReal DtRailMovementControllerPSR::myMaxFollowThreshold
protected

If entity is following another entity while moving along a rail route, this is the maximum delta they can have off of the follow distance before the rail controller will change the speed. This will help prevent jerky following if the target entity's speed is changing only briefly say at a curve if using acceleration. *** Not used in road movement controller; only in old rail move controller. ***.

DtRwBoolean DtRailMovementControllerPSR::myUsingBreakdownLane
protected

Road passing options.

DtRwBoolean DtRailMovementControllerPSR::myUsingOpposingLane
protected

Road passing options.

DtRwReal DtRailMovementControllerPSR::myTaskSpeed
protected

Are we using speed from task message, or default ordered speed?

DtRwBoolean DtRailMovementControllerPSR::myUseTaskSpeed
protected

Are we using speed from task message, or default ordered speed?


The documentation for this class was generated from the following file:

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)