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

Class containing utility functions for analyzing the output of the DtRailObstructionFinder. These functions are genreally entity centric.

Public Member Functions

 DtRailObstructionAnalyzer ()
 
virtual ~DtRailObstructionAnalyzer ()
 
virtual void setObstructionList (const std::list< DtRailObstructionPtr > &obstructionList)
 
virtual const std::list
< DtRailObstructionPtr > & 
obstructionList () const
 
virtual void setRailStartOffset (double offset)
 
virtual double railStartOffset () const
 
virtual void setLastCalcHitTime (double hitTime)
 
virtual double lastCalcHitTime () const
 
virtual void setLastObstruction (DtRailObstructionPtr obs)
 
virtual DtRailObstructionPtr lastObstruction () const
 
virtual void setConvoyTarget (const DtUUID &convoyTarget)
 
virtual const DtUUIDconvoyTarget () const
 
virtual void setVelocity (double velocity)
 
virtual double velocity () const
 
virtual bool closestObstructionInLane (int lane, const std::list< DtRailObstructionPtr > &obstructionList, DtRailObstructionPtr &obstruction, bool checkForwardOnly) const
 
virtual bool firstHitObstructionInLane (int lane, double railVelocity, double railStartOffset, const std::list< DtRailObstructionPtr > &obstructionList, DtRailObstructionPtr &obstruction, double &hitTime) const
 
virtual bool timeToHit (double railVelocity, double railStartOffset, const DtRailObstructionPtr &obstruction, double &hitTime) const
 

Private Attributes

std::list< DtRailObstructionPtrmyObstructionList
 
double myRailStartOffset
 
double myLastCalculatedHitTime
 
double myVelocity
 
DtRailObstructionPtr myLastObstruction
 
DtUUID myConvoyTarget
 

Constructor & Destructor Documentation

DtRailObstructionAnalyzer::DtRailObstructionAnalyzer ( )
virtual DtRailObstructionAnalyzer::~DtRailObstructionAnalyzer ( )
virtual

Member Function Documentation

virtual void DtRailObstructionAnalyzer::setObstructionList ( const std::list< DtRailObstructionPtr > &  obstructionList)
virtual
virtual const std::list<DtRailObstructionPtr>& DtRailObstructionAnalyzer::obstructionList ( ) const
virtual
virtual void DtRailObstructionAnalyzer::setRailStartOffset ( double  offset)
virtual
virtual double DtRailObstructionAnalyzer::railStartOffset ( ) const
virtual
virtual void DtRailObstructionAnalyzer::setLastCalcHitTime ( double  hitTime)
virtual
virtual double DtRailObstructionAnalyzer::lastCalcHitTime ( ) const
virtual
virtual void DtRailObstructionAnalyzer::setLastObstruction ( DtRailObstructionPtr  obs)
virtual
virtual DtRailObstructionPtr DtRailObstructionAnalyzer::lastObstruction ( ) const
virtual
virtual void DtRailObstructionAnalyzer::setConvoyTarget ( const DtUUID convoyTarget)
virtual
virtual const DtUUID& DtRailObstructionAnalyzer::convoyTarget ( ) const
virtual
virtual void DtRailObstructionAnalyzer::setVelocity ( double  velocity)
virtual
virtual double DtRailObstructionAnalyzer::velocity ( ) const
virtual
virtual bool DtRailObstructionAnalyzer::closestObstructionInLane ( int  lane,
const std::list< DtRailObstructionPtr > &  obstructionList,
DtRailObstructionPtr obstruction,
bool  checkForwardOnly 
) const
virtual

Finds the closest obstruction in the list that blocks the specified lane.

Parameters
obstructionThe returned obstruction, if found.
Returns
True if any obstruction is found.
Note
This function using the current positions of the obstructions, and does not take any obstruction velocities into account.
virtual bool DtRailObstructionAnalyzer::firstHitObstructionInLane ( int  lane,
double  railVelocity,
double  railStartOffset,
const std::list< DtRailObstructionPtr > &  obstructionList,
DtRailObstructionPtr obstruction,
double hitTime 
) const
virtual

Finds the first obstruction that will be hit in the specified lane, using the specified velocity along the rail. This uses the positions and velocities of the obstructions in the list.

Parameters
obstructionThe returned obstruction.
hitTimeThe amount of time before the collision would occur.
railVelocityThe velocity along the rail which the entity doing this check is traveling.
railStartOffsetThe distance ahead from 0 on the rail that is considered part of the entity doing this check. Typically 0 is the entity center, so this is the half length of the entity.
Returns
True if any obstruction is found.
virtual bool DtRailObstructionAnalyzer::timeToHit ( double  railVelocity,
double  railStartOffset,
const DtRailObstructionPtr obstruction,
double hitTime 
) const
virtual

Member Data Documentation

std::list<DtRailObstructionPtr> DtRailObstructionAnalyzer::myObstructionList
private
double DtRailObstructionAnalyzer::myRailStartOffset
private
double DtRailObstructionAnalyzer::myLastCalculatedHitTime
private
double DtRailObstructionAnalyzer::myVelocity
private
DtRailObstructionPtr DtRailObstructionAnalyzer::myLastObstruction
private
DtUUID DtRailObstructionAnalyzer::myConvoyTarget
private

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

Document ID: Generated on Mon Jun 20 00:38:30 EDT 2022 from SVN revision 244029
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)