WSF
WsfWaypointPathGuidance Class Reference

A derived guidance class used by WsfMovers that follow WsfWaypoints. More...

#include <WsfWaypointPathGuidance.hpp>

Inheritance diagram for WsfWaypointPathGuidance:
Collaboration diagram for WsfWaypointPathGuidance:

Public Member Functions

 WsfWaypointPathGuidance ()
WsfPathGuidanceClone () const override
 Clone a path guidance object.
bool ProcessInput (UtInput &aInput) override
double GetAltitude () const override
double GetSpeed () const override
double CalcLateralAccelLimit (double aCurrentSpeed)
double TurnRateLimit () const
double MaxLinearAccel () const
double MaxRadialAccel () const
void SetRollRateLimit (double aRollRateLimit)
double RollRateLimit () const
void SetHeadingPursuitGain (double aHeadingPursuitGain)
double HeadingPursuitGain () const
double MaxClimbRate () const
double MaxFlightPathAngle () const
double DefaultRadialAccel () const
void GetWPTargetInfo (double aVelNED[3], double &aPlatformHeading, double &aPlatformPitch, double &aPlatformRoll, double &aHeadingChangeMag, double &aHdgChgDirection, double &aGroundSpeed, double &aTotalSpeed, double &aGroundDistToTgt, double &aTotalDistToTgt)
 This method is written especially for WsfWaypointMover use.
double GetRadialAccelAtPoint (const WsfWaypoint &aPoint) const override
Public Member Functions inherited from WsfPathGuidance
 WsfPathGuidance ()
 Construct a path guidance object.
virtual ~WsfPathGuidance ()
void SetMover (WsfMover *aMoverPtr)
WsfMoverGetMover () const
 Get the mover to whom guidance is being provided.
virtual bool Initialize (double aSimTime)
virtual void Update (double aSimTime)
void TriggerExtrapolation ()
bool IsChanged () const
bool IsOnGround () const
bool IsOnRoad () const
bool IsExtrapolating () const
bool IsStopping () const
bool IsInitialized () const
bool IsPaused () const
double GetPauseTime () const
double GetRawHeading () const
double GetClimbRate () const
double GetLatitude () const
double GetLongitude () const
double GetSegmentEndTime () const
double GetSegmentEndDist () const
double GetAxialAccel () const
double GetRadialAccel () const
double GetTurnRate () const
WsfPath::AltRef GetAltRef () const
WsfPath::HdgRef GetHdgRef () const
WsfPath::TurnDirection GetTurnDir () const
WsfPath::Switch GetSwitch () const
void DecrementPauseTime (double aValue)
void SetPauseTime (double aValue)
void SetAltitude (double aAltitude, WsfPath::AltRef aAltRef)
void SetAltitude (double aAltitude, WsfPath::AltRef aMoverDefault, WsfPath::AltRef aAltRefWP_Override)
void SetLatLon (double aLatitude, double aLongitude)
void SetHeading (double aHeading, WsfPath::HdgRef aHdgRef)
void SetClimbRate (double aClimbRate)
void SetLLA (double aLatitude, double aLongitude, double aAltitude, WsfPath::AltRef aMoverDefault, WsfPath::AltRef aAltRefOverride=WsfPath::cALT_REF_MSL)
void SetSpeed (double aSpeed)
void SetAxialAccel (double aAxialAccel)
void SetRadialAccel (double aRadialAccel)
void SetTurnRate (double aTurnRate)
void SetSegmentEndTime (double aSegmentTime)
void SetSegmentEndDist (double aSegmentDist)
void SetHdgRef (WsfPath::HdgRef aHdgRef)
void SetTurnDir (WsfPath::TurnDirection aTurnDir)
void SetSwitch (WsfPath::Switch aMoverDefault, WsfPath::Switch aWP_SwitchOverride)
void ClearValid (int aClearMask)
bool IsSet (int aMask)
bool SpeedIsSet () const
bool AltIsSet () const
bool LatLonIsSet () const
bool HeadingIsSet () const
bool AxialAccelIsSet () const
bool ClimbRateIsSet () const
bool TurnRateIsSet () const
bool RadialAccelIsSet () const
bool SegmentTimeIsSet () const
bool SegmentDistIsSet () const
bool LLA_IsSet () const
bool HdgAndAltSet () const
bool HdgAltAndSpeedSet () const
bool TurnIsDetermined () const
double ChosenHeading () const
WsfPath::TurnDirection ChosenDirection () const
void PrintValidityMap (double aSimTime) const
void GetWPTargetInfo (double aVelNED[3], double &aPlatformHeading, double &aPlatformPitch, double &aPlatformRoll, double &aHeadingChangeMag, double &aHdgChgDirection, double &aGroundSpeed, double &aTotalSpeed, double &aGroundDistTo)

Additional Inherited Members

Public Types inherited from WsfPathGuidance
enum  {
  cSPEED = 0x0001 , cAXIAL_ACCEL = 0x0002 , cCLIMB_RATE = 0x0004 , cALTITUDE = 0x0008 ,
  cHEADING = 0x0010 , cTURN_RATE = 0x0020 , cRADIAL_ACCEL = 0x0040 , cLAT_LON = 0x0080 ,
  cSEGMENT_TIME = 0x0100 , cSEGMENT_DIST = 0x0200 , cTURN_DETERMINED = 0x8000
}
Protected Member Functions inherited from WsfPathGuidance
virtual bool BeginExtrapolation (double aSimTime)
virtual bool SetNewGuidance (double aSimTime)
virtual bool ReviseGuidance (double aSimTime)
virtual bool DetermineTheTurn (double aSimTime)
void ClearChosenDir ()
void SetAltRef (WsfPath::AltRef aMoverDefault, WsfPath::AltRef aAltRefOverride=WsfPath::cALT_REF_MSL)
const double * TgtWCS () const
void PrivateSetTurnDir (WsfPath::TurnDirection aTurnDir)
std::string PrintBool (int aMask) const
void SetValid (int aSetMask)
Protected Attributes inherited from WsfPathGuidance
bool mDebug
bool mInitialized
bool mIsChanged
bool mIsOnGround
bool mIsOnRoad
bool mKeepLevel
double mPauseTime

Detailed Description

A derived guidance class used by WsfMovers that follow WsfWaypoints.

Constructor & Destructor Documentation

◆ WsfWaypointPathGuidance()

WsfWaypointPathGuidance::WsfWaypointPathGuidance ( )

References WsfPathGuidance::WsfPathGuidance().

Referenced by Clone().

Member Function Documentation

◆ CalcLateralAccelLimit()

double WsfWaypointPathGuidance::CalcLateralAccelLimit ( double aCurrentSpeed)

◆ Clone()

WsfPathGuidance * WsfWaypointPathGuidance::Clone ( ) const
overridevirtual

Clone a path guidance object.

Reimplemented from WsfPathGuidance.

References WsfPathGuidance::WsfPathGuidance(), and WsfWaypointPathGuidance().

◆ DefaultRadialAccel()

double WsfWaypointPathGuidance::DefaultRadialAccel ( ) const
inline

References MaxRadialAccel().

◆ GetAltitude()

double WsfWaypointPathGuidance::GetAltitude ( ) const
overridevirtual

Reimplemented from WsfPathGuidance.

References WsfPathGuidance::GetAltitude().

Referenced by GetWPTargetInfo().

◆ GetRadialAccelAtPoint()

double WsfWaypointPathGuidance::GetRadialAccelAtPoint ( const WsfWaypoint & aPoint) const
overridevirtual

Get the radial acceleration to be used for turning FROM the specified waypoint. This overrides the base class method to impose additional constraints that are provided by this class.

Reimplemented from WsfPathGuidance.

References WsfPath::cDOUBLE_NOT_SET, WsfPathGuidance::GetMover(), WsfPlatformPart::GetPlatform(), WsfWaypoint::GetRadialAccel(), and WsfWaypoint::GetSpeed().

◆ GetSpeed()

double WsfWaypointPathGuidance::GetSpeed ( ) const
overridevirtual

◆ GetWPTargetInfo()

void WsfWaypointPathGuidance::GetWPTargetInfo ( double aVelNED[3],
double & aPlatformHeading,
double & aPlatformPitch,
double & aPlatformRoll,
double & aHeadingChangeMag,
double & aHdgChgDirection,
double & aGroundSpeed,
double & aTotalSpeed,
double & aGroundDistToTgt,
double & aTotalDistToTgt )

◆ HeadingPursuitGain()

double WsfWaypointPathGuidance::HeadingPursuitGain ( ) const
inline

◆ MaxClimbRate()

double WsfWaypointPathGuidance::MaxClimbRate ( ) const
inline

◆ MaxFlightPathAngle()

double WsfWaypointPathGuidance::MaxFlightPathAngle ( ) const
inline

◆ MaxLinearAccel()

double WsfWaypointPathGuidance::MaxLinearAccel ( ) const
inline

◆ MaxRadialAccel()

double WsfWaypointPathGuidance::MaxRadialAccel ( ) const
inline

Referenced by DefaultRadialAccel().

◆ ProcessInput()

bool WsfWaypointPathGuidance::ProcessInput ( UtInput & aInput)
overridevirtual

Reimplemented from WsfPathGuidance.

References WsfPathGuidance::ProcessInput().

◆ RollRateLimit()

double WsfWaypointPathGuidance::RollRateLimit ( ) const
inline

◆ SetHeadingPursuitGain()

void WsfWaypointPathGuidance::SetHeadingPursuitGain ( double aHeadingPursuitGain)
inline

◆ SetRollRateLimit()

void WsfWaypointPathGuidance::SetRollRateLimit ( double aRollRateLimit)
inline

◆ TurnRateLimit()

double WsfWaypointPathGuidance::TurnRateLimit ( ) const
inline

The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved