WSF
wsf::six_dof::RigidBodyMover Class Reference

#include <WsfRigidBodySixDOF_Mover.hpp>

Inheritance diagram for wsf::six_dof::RigidBodyMover:
Collaboration diagram for wsf::six_dof::RigidBodyMover:

Public Member Functions

 RigidBodyMover (const WsfScenario &aScenario)
 Constructor.
RigidBodyMoveroperator= (const RigidBodyMover &other)=delete
WsfMoverClone () const override
bool ProcessInput (UtInput &aInput) override
bool Initialize (double aSimTime) override
double GetYawMoment_nm () const
double GetYawMoment_ftlbs () const
double GetPitchMoment_nm () const
double GetPitchMoment_ftlbs () const
double GetRollMoment_nm () const
double GetRollMoment_ftlbs () const
size_t GetControlSurfaceHandle (const std::string &aControlSurfaceName) const
size_t GetControlSurfaceHandleContainingString (const std::string &aString) const
size_t GetControlSurfaceHandleContainingTwoStrings (const std::string &aString1, const std::string &aString2) const
double GetAngleOfControlSurface (std::string aControlSurfaceName) const
double GetAngleOfControlSurface (size_t aHandle) const
double GetNormalizedAngleOfControlSurface (size_t aHandle) const
std::vector< std::string > GetListOfControlSurfaceNames () const
double GetAileronsBothPosition () const
double GetStabilatorLeftPosition () const
double GetStabilatorRightPosition () const
double GetRudderPosition () const
double GetLandingGearPosition () const
double GetSpeedBrakePosition_rad () const
double GetSpeedBrakePosition () const override
double GetFlapsPosition () const override
double GetSpoilersPosition () const override
double GetNoseWheelAngle () const
double GetAngleAileronLeft () const
double GetAngleAileronRight () const
double GetAngleFlapLeft () const
double GetAngleFlapRight () const
double GetAngleSpoilerLeft () const
double GetAngleSpoilerRight () const
double GetAngleStabilizerLeft () const
double GetAngleStabilizerRight () const
double GetAngleElevator () const
double GetAngleRudderLeft () const
double GetAngleRudder () const
double GetAngleRudderRight () const
double GetAngleSpeedBrake () const
double GetAngleLandingGear () const
double GetAngleLandingGearNose () const
double GetAngleLandingGearMainLeft () const
double GetAngleLandingGearMainRight () const
double GetNormalizedAileronLeft () const override
double GetNormalizedAileronRight () const override
double GetNormalizedFlapLeft () const override
double GetNormalizedFlapRight () const override
double GetNormalizedSpoilerLeft () const override
double GetNormalizedSpoilerRight () const override
double GetNormalizedStabilizerLeft () const override
double GetNormalizedStabilizerRight () const override
double GetNormalizedElevator () const override
double GetNormalizedRudderLeft () const override
double GetNormalizedRudder () const override
double GetNormalizedRudderRight () const override
double GetNormalizedSpeedBrake () const override
double GetNormalizedLandingGear () const override
double GetNormalizedLandingGearNose () const override
double GetNormalizedLandingGearMainLeft () const override
double GetNormalizedLandingGearMainRight () const override
bool AileronLeftValid () const override
bool AileronRightValid () const override
bool FlapLeftValid () const override
bool FlapRightValid () const override
bool SpoilerLeftValid () const override
bool SpoilerRightValid () const override
bool StabilizerLeftValid () const override
bool StabilizerRightValid () const override
bool ElevatorValid () const override
bool RudderLeftValid () const override
bool RudderValid () const override
bool RudderRightValid () const override
bool SpeedBrakeValid () const override
bool LandingGearValid () const override
bool LandingGearNoseValid () const override
bool LandingGearMainLeftValid () const override
bool LandingGearMainRightValid () const override
bool ThrottleValid () const override
const char * GetScriptClassName () const override
void ApplyExternalForce (double aForceMagnitude_lbs, double aAngle_deg)
void RemoveExternalForce ()
void EnableDirectBraking ()
void SetParkingBrake ()
void ApplyLeftGearBrake (double aValue)
void ApplyRightGearBrake (double aValue)
void ReleaseWheelBrakes ()
void ReleaseDirectBraking ()
void RetractLandingGear ()
void LowerLandingGear ()
void SetFlapsPosition (double aPosition) override
void SetSpoilersPosition (double aPosition) override
void SetThrustReverserPosition (double aPosition)
void SetEnableNWS (bool aNWS_Enabled)
bool GetWeightOnWheels () const override
bool GetWeightOnNoseWheel () const
double GetTaxiSpeedMax ()
double GetTaxiYawRateMax ()
void SetTaxiSpeedMax (double aSpeedMax)
void SetTaxiYawRateMax (double aSpeedMax)
void SetTaxiMode (bool aTaxiModeEnabled)
void SetTaxiRadius (double aTaxiRadius_ft)
RigidBodyMoverTestObjectGetRigidBodyTestSupportObject () const
MoverTestObjectGetTestSupportObject () const override
void DeriveFrom (const RigidBodyMover &aSrc)
void CalculateCurrentMassProperties () override
void SetCurrentWeight_lbs (double aWeight_lbs)
void ShiftCurrentCg_ft (UtVec3dX aDeltaCg_ft)
const IntegratorGetIntegrator () const override
void SetLastSimTime (double aSimTime_sec, bool aIncludeSubobjects=false) override
void CalculateAeroBodyForceAndMoments (UtVec3dX &aLiftBodyVector_lbs, UtVec3dX &aDragBodyVector_lbs, UtVec3dX &aSideForceBodyVector_lbs, UtVec3dX &aMoment_ftlbs, UtVec3dX &aReferencePt_ft) override
void CalculateAeroBodyForceAndRotation (UtVec3dX &aLiftBodyVector_lbs, UtVec3dX &aDragBodyVector_lbs, UtVec3dX &aSideForceBodyVector_lbs, UtVec3dX &aRotationAccelerationLimits_rps2, UtVec3dX &aStabilizingFrequency_rps) override
void CalculateAlphaAtSpecifiedGLoad_deg (double aGLoad, double &aAlpha_deg) const override
void CalculateStickBackForZeroMoment (double aAlpha_deg, double &aStickBack)
void CalculateStickBackForZeroMoment (double aAlpha_deg, double aMach, double &aStickBack)
void CalculateBetaAtSpecifiedGLoad_deg (double aGLoad, double &aBeta_deg) const override
void CalculateControlsAeroCoefficientVectors (double aMach, double aAlpha_rad, double aStickBack, double &aCLArea, double &aCdArea, double &aCmArea)
double CalculateControlsCLArea (double aMach, double aAlpha_rad, double aStickBack)
double CalculateControlsCdArea (double aMach, double aAlpha_rad, double aStickBack)
void CalculateCmAreaForCoreAndControls (double aMach, double aAlpha_rad, double aStickBack, bool aPowerOn, double &aThrustProduced_lbs, double &aCoreCm, double &aControlsCm)
void CalculateCLAreaForCoreAndControls (double aMach, double aAlpha_rad, double aStickBack, double &aCoreCL, double &aControlsCL)
void CalculateCdAreaForCoreAndControls (double aMach, double aAlpha_rad, double aStickBack, double &aCoreCd, double &aControlsCd)
void CalculateTotalCmAndCL (double aMach, double aAlpha_rad, double aStickBack, double &aTotalCm, double &aTotalCL)
void SetActiveAeroObject (RigidBodyAeroCoreObject *aObject)
void SetActiveAeroObject (const std::string &aName) override
RigidBodyAeroCoreObjectGetActiveAeroObject () const
std::string GetActiveAeroObjectName () const
double GetWingArea_sqft () const
double GetRefArea_sqft () const
UtVec3dX GetCenterOfGravity_ft () const override
double MaxPotentialManeuverGLoad () const override
AeroCoreObjectGetAeroCoreObject () const override
void CalculatePropulsionFM (int64_t aSimTime_nanosec, double aDeltaT_sec, const KinematicState &aState, UtVec3dX &aInertialPropulsionVector_lbs, UtVec3dX &aPropulsionMoment_ftlbs)
PropulsionSystemGetPropulsionSystem () const override
RigidBodyPropulsionSystemGetRigidBodyPropulsionSystem ()
double GetMaximumPotentialThrust_lbs () const override
double GetMinimumPotentialThrust_lbs () const override
double GetCurrentThrust_lbs () override
double GetCurrentForwardThrust_lbs () override
double GetTotalVehicleFuelFlow_pph () const override
double GetTotalFuelFlow_pph () const override
PilotManagerGetPilotManager () const override
RigidBodyPilotManagerGetRigidBodyPilotManager () const
RigidBodyFlightControlSystemGetFlightControls () const
bool HasFlaps () const
size_t GetInputHandle (const std::string &aInputName) const override
bool GetBooleanInput (size_t aHandle) const override
bool GetLastBooleanInput (size_t aHandle) const override
void RestoreControlSurfaceAngles (std::vector< RigidBodyFlightControlSystem::ControlSurfaceElement * > &aControlsList, std::vector< double > &aAngleList)
bool UseSimpleYawDamper () const
double GetStickRightInput () const override
double GetStickBackInput () const override
double GetRudderRightInput () const override
double GetThrottleInput () const override
double GetSpeedBrakeInput () const override
double GetSpoilerInput () const override
double GetLandingGearInput () const override
void CalculateLandingGearFM (int64_t aSimTime_nanosec, const UtVec3dX &aNonLandingGearTotalForceVecInertial_lbs, UtVec3dX &aInertialTotalGearVector_lbs, UtVec3dX &aTotalGearMoment_ftlbs)
void SetLandingGearPositionAtStart (double aPosition)
void ForceLandingGearPositionInstantly (std::string aLandingGearControlSurfaceHandleName, double aPosition)
void ForceLandingGearUpInstantly (const std::string &aLandingGearControlSurfaceHandleName)
void ForceLandingGearDownInstantly (const std::string &aLandingGearControlSurfaceHandleName)
bool HasLandingGear () const
RigidBodyLandingGearGetLandingGear () const
void ZeroKinematicsDuringTesting () override
Public Member Functions inherited from wsf::six_dof::Mover
 Mover (const WsfScenario &aScenario)
 Constructor.
virtual ~Mover ()
WsfSpatialDomain GetSpatialDomain () const override
bool ProcessVehicleInput (UtInput &aInput)
void UpdateEventPipeData (double aSimTime)
void SetHeading (double aHeading) override
void SetPitch (double aPitch) override
void SetRoll (double aRoll) override
void SetOrientationNED (double aHeading, double aPitch, double aRoll) override
void GetStateData (double &aSimTime_sec, double &aLat, double &aLon, double &aAlt_m, double &aLocalHeading_deg, double &aLocalPitch_deg, double &aLocalRoll_deg, double &aAlpha_deg, double &aBeta_deg, double &aSpeed_kts, double &aVertSpeed_fpm, double &aYawRate_dps, double &aPitchRate_dps, double &aRollRate_dps) const
size_t GetPlannedRouteIndex () const
size_t GetTempRouteIndex () const
double GetAlt_m () const
double GetVerticalSpeed ()
double GetFlightPathAngle ()
double GetGLoad ()
double GetHeading () const
double GetPitch () const
double GetRoll () const
double GetYawRate ()
double GetPitchRate ()
double GetRollRate ()
double GetLift_nt () const
double GetDrag_nt () const
double GetSideForce_nt () const
double GetThrustMagnitude_nt () const
double GetSpeed_KIAS () const
double GetSpeed_KCAS () const
double GetSpeed_KTAS () const
double GetSpeed_Mach () const
double GetCurrentWeight_kg () const
double GetEmptyWeight_kg () const
double GetTotalWeight_lbs () const
double GetTotalWeight_kg () const
bool IsProducingThrust () const
double GetTotalThrust ()
double GetTotalForwardThrust ()
bool GetAfterburnerOn () const
double GetEngineThrust (const std::string &aEngineName) const
double GetEngineFuelFlowRate (const std::string &aEngineName) const
bool GetEngineAfterburnerOn (const std::string &aEngineName) const
double GetTotalFuelFlowRate () const
bool AddFuelTransfer (std::string aFuelTransferName, std::string aSourceTankName, std::string aTargetTankName)
bool RemoveFuelTransfer (std::string aFuelTransferName)
void EnableThrustVectoring (bool aEnableThrustVectoring)
void SetAutopilotPitchAngle (double aPitchAngle_deg)
void SetAutopilotFlightPathAngle (double aFlightPathAngle_deg)
void SetAutopilotVerticalSpeed (double aVerticalSpeed_fpm)
void SetAutopilotAltitude (double aAltitude_ft)
void SetAutopilotRollAngle (double aRollAngle_deg)
void SetAutopilotRollRate (double aRollRate_dps)
void SetPitchGLoad (double aGLoad)
void SetAutopilotPitchRate (double aPitchRate_dps)
void SetAutopilotDeltaPitch (double DeltaPitchAngle_deg)
void SetAutopilotDeltaRoll (double DeltaRollAngle_deg)
void SetAutopilotSpeedKTAS (double aSpeed_KTAS)
void SetAutopilotSpeedKCAS (double aSpeed_KCAS)
void SetAutopilotSpeedMach (double aSpeed_Mach)
void SetAutopilotThrottle (double aThrottle)
void SetAutopilotLateralWaypointMode ()
void SetAutopilotVerticalWaypointMode ()
void SetAutopilotSpeedWaypointMode ()
void SetAutopilotWaypointMode ()
void SetAutopilotNoControl ()
void EnableDirectThrottleInput ()
void ReleaseDirectThrottleInput ()
void MoveThrottleToIdle ()
void MoveThrottleToFull ()
void MoveThrottleToAfterburner ()
void EnableDirectSpeedBrakeInput ()
void ReleaseDirectSpeedBrakeInput ()
void OpenSpeedBrake ()
void CloseSpeedBrake ()
double GetPotentialManeuverGLoadMax ()
void TakeDirectControlInput ()
void ReleaseDirectControlInput ()
void SetDirectControlInputs (double aStickX, double aStickY, double aRudder, double aThrottleLeverPosition)
void EnableDirectStickRightInput ()
void EnableDirectStickBackInput ()
void EnableDirectRudderRightInput ()
void ReleaseDirectStickRightInput ()
void ReleaseDirectStickBackInput ()
void ReleaseDirectRudderRightInput ()
void SetDirectStickRightInput (double aStickX)
void SetDirectStickBackInput (double aStickY)
void SetDirectRudderRightInput (double aRudderValue)
void SetDirectThrottleInput (double aThrottleLeverPosition)
bool StallWarningAlert () const
bool GoToLocation (double aSimTime, double aLatitude, double aLongitude, double aAltitude) override
bool TurnToHeading (double aSimTime, double aHeading_rad, double aRadialAccel_mps2, WsfPath::TurnDirection aTurnDirection) override
bool GoToSpeed (double aSimTime, double aSpeed_mps, double aLinearAccel_mps2, bool aKeepRoute) override
bool GoToAltitude (double aSimTime, double aAltitude_m, double aClimbDiveRate_mps, bool aKeepRoute) override
bool TurnToRelativeHeading (double aSimTime, double aHeadingChange_rad, double aRadialAccel_mps2, WsfPath::TurnDirection aTurnDirection) override
bool ReturnToRoute (double aSimTime) override
bool UpdateRoute (double aSimTime, const WsfRoute &aRoute) override
bool GoToWaypoint (double, unsigned int aDestination) override
bool SetDefaultRoute (const WsfRoute &aRoute)
bool SetTempRoute (const WsfRoute &aRoute)
bool SetRoute (double aSimTime, const WsfRoute &aRoute) override
const WsfRouteGetRoute () const override
const WsfRouteGetDefaultRoute () const override
int RoutePointIndex () const override
bool FlyRates (const UtVec3d &aAngularRates, const UtVec3d &aLongitudinalAccel) override
bool FlyHeadingSpeedAltitude (double aHeading, double aSpeed, double aAltitude, double aMaxGees, double aMaxClimb) override
bool TurnInPlaneWithSpeed (const UtVec3d &aPlane, double aGees, double aSpeed) override
bool TurnInPlaneWithThrottle (const UtVec3d &aPlane, double aGees, double aThrottle) override
bool FlyVectorWithSpeed (const UtVec3d &aVelocityVector, double aMaxGees, double aSpeed) override
bool FlyVectorWithThrottle (const UtVec3d &aVelocityVector, double aMaxGees, double aThrottle) override
void CommandSlice (double aTargetHeading_deg, double aTargetAltitude_m, double aTargetMach=0.0)
void CommandLevelTurn (double aTargetHeading_deg, double aTargetMach, double aTargetGees=0.0)
void EnableAutopilot (bool aState)
void ActivateSimpleManualPilot ()
void ActivateAugmentedManualPilot ()
void ActivateSyntheticPilot ()
void RevertLimitsToDefaults ()
double GetPitchGLoadMin ()
double GetPitchGLoadMax ()
double GetAlphaMin ()
double GetAlphaMax ()
double GetPitchRateMin ()
double GetPitchRateMax ()
double GetVerticalSpeedMin ()
double GetVerticalSpeedMax ()
double GetYawGLoadMax ()
double GetBetaMax ()
double GetYawRateMax ()
double GetRollRateMax ()
double GetBankAngleMax ()
double GetForwardAccelMin ()
double GetForwardAccelMax ()
void SetPitchGLoadMin (double aGees)
void SetPitchGLoadMax (double aGees)
void SetAlphaMin (double aAlpha)
void SetAlphaMax (double aAlpha)
void SetPitchRateMin (double aPitchRate)
void SetPitchRateMax (double aPitchRate)
void SetVerticalSpeedMin (double aVertSpeed)
void SetVerticalSpeedMax (double aVertSpeed)
void SetYawGLoadMax (double aYawGLoad)
void SetBetaMax (double aBeta)
void SetYawRateMax (double aYawRate)
void SetRollRateMax (double aRollRate)
void SetBankAngleMax (double aBankAngle)
void SetForwardAccelMin (double aForwardAccel)
void SetForwardAccelMax (double aForwardAccel)
void SetTurnRollInMultiplier (double aValue)
void SetRouteAllowableAngleError (double aValue_rad)
double GetCurrentTurnRollInMultiplier ()
double GetDefaultTurnRollInMultiplier ()
double GetCurrentRouteAllowableAngleError ()
double GetDefaultRouteAllowableAngleError ()
virtual double GetCLMaxAtMach (double aMach) const
virtual double GetAlphaAtCLMaxAtMach_deg (double aMach) const
double GetDesignWeightForMaxG_lbs () const
wsf::six_dof::Maneuver * GetCurrentManeuver () const
wsf::six_dof::ManeuverSequence * GetManeuverSequence () const
void ExecuteManeuver (double aSimTime, std::unique_ptr< wsf::six_dof::Maneuver > &&aManeuverPtr)
void ExecuteManeuverSequence (double aSimTime, std::unique_ptr< wsf::six_dof::ManeuverSequence > &&aSequencePtr)
void CancelManeuvers ()
void GetInitialState (double aLocWCS[3], double aVelWCS[3], double aOrientationNED[3]) const
void SetInitialLatLon (double aLat, double aLon)
void SetInitialAlt (double aAlt_m)
void SetInitialNEDHeading (double aHeading_rad)
void SetInitialNEDPitch (double aPitch_rad)
void SetInitialNEDRoll (double aRoll_rad)
void SetInitialNEDVelocity (double aVelNorth_mps, double aVelEast_mps, double aVelDown_mps)
void Update (double aSimTime) override
void UpdateAppearance (double aSimTime)
void UpdatePlatformFromVehicle (Mover *aVehicle, WsfPlatform *aPlatform)
std::string GetActivePilot () const
Lateral::Mode GetAutopilotLateralModeEnum () const
std::string GetAutopilotLateralMode () const
std::string LateralModeToString (Lateral::Mode aMode) const
float GetAutopilotLateralModeValue () const
Vertical::Mode GetAutopilotVerticalModeEnum () const
std::string GetAutopilotVerticalMode () const
std::string VerticalModeToString (Vertical::Mode aMode) const
float GetAutopilotVerticalModeValue () const
Speed::Mode GetAutopilotSpeedModeEnum () const
std::string GetAutopilotSpeedMode () const
std::string SpeedModeToString (Speed::Mode aMode) const
float GetAutopilotSpeedModeValue () const
double GetStickBackPosition () const
double GetStickRightPosition () const
double GetRudderRightPosition () const
double GetThrottleMilitaryPosition () const
double GetThrottleAfterburnerPosition () const
double GetThrustReverserControlPosition () const
double GetSpeedBrakeControlPosition () const
double GetLandingGearLeverPosition () const
double GetFlapsLeverPosition () const
double GetSpoilersLeverPosition () const
void AddFuel (double aFuelMass_kg)
double GetTotalFuelCapacity () const
double GetInternalFuelCapacity () const
double GetExternalFuelCapacity () const
double GetTotalFuelRemaining () const
double GetInternalFuelRemaining () const
double GetExternalFuelRemaining () const
double GetFuelTankCapacity (const std::string &aTankName) const
double GetFuelInTank (const std::string &aTankName) const
void SetFuelInTank (const std::string &aTankName, double aFuel_kg)
double GetTotalFuelFlow () const
bool IsExternalFuelTank ()
void EmptyAllInternalandExternalTanks ()
void EmptyAllInternalTanks ()
void EmptyAllExternalTanks ()
void StartupEngines (double aSimTime_sec)
void ShutdownEngines (double aSimTime_sec)
void SetJokerFuelState (double aJokerFuel_kg)
void SetBingoFuelState (double aBingoFuel_kg)
double GetJokerFuelState ()
double GetBingoFuelState ()
bool JokerFuelReached ()
bool BingoFuelReached ()
void CheckForFrequencyUnits (double &value, UtInput &aInput)
 Check an input for frequency units (hz) and convert to seconds if so.
void SetGuidance (WsfMoverGuidance *aGuidancePtr)
 Set the pointer to the mover guidance object. Ownership is retained by the caller.
WsfMoverGuidanceGetGuidance () const
 Get the pointer to the mover guidance object.
void SetYandZGLoads (double aYGLoad, double aZGLoad)
void SetCommandedYawRate (double aRate)
void SetCommandedPitchRate (double aRate)
void SetCommandedRollRate (double aRate)
void SetCommandedSpeed (double aCommandedSpeed)
void WriteKinematicStatus (ut::log::MessageStream &aStream)
void SetMinimumHeightAboveTerrain (double aMinimum)
int CurrentStage () const
void SetDamageFactor (double aDamageFactor)
void OnPlatformBrokenEvent (double aSimTime) override
 Owning platform has issued a broken event.
void ResetPosition (double aSimTime) override
 Informs the mover to use the current platform state.
bool GetEngineIsOperating () const
bool GetEngineIsSmoking () const
bool GetEngineAfterburnerIsOn () const
void MakeEnginesSmoke (bool aEngineSmoking)
bool GetContrailTrailingEffect () const
bool GetRocketSmokeTrailingEffect () const
bool GetDamageSmokeTrailingEffect () const
void SetDamageSmokeTrailingEffect (bool aEffectActive)
bool GetRisingSmokePlumeIsPresent () const
void SetRisingSmokePlumeIsPresent (bool aSmoking)
bool GetLaunchFlashSmokeIsPresent () const
void SetLaunchFlashSmokeIsPresent (bool aLaunchFlashSmoke)
bool GetFlamesArePresent () const
void SetFlamesArePresent (bool aFlaming)
bool GetIsLightlyDamaged () const
void SetIsLightlyDamaged ()
bool GetIsHeavilyDamaged () const
void SetIsHeavilyDamaged ()
WsfPlatformDirectJettisonSubobjectPlatform (Mover *aJettisonedObject, double aSimTime_sec)
MoverGetParentVehicle () const
void SetParentVehicle (Mover *aParentVehicle)
void DeriveFrom (const Mover &aSrc)
bool Initialize (double aSimTime_sec, const std::string &aPrefixName)
bool InitializeConditions (double aSimTime_sec)
bool InitializeSequencers (double aSimTime_sec)
bool InitializeSubobjects (double aSimTime_sec)
void SetWashInInitConditions (bool aUseWashInInitConditions)
void Update (int64_t aSimTime_nanosec)
virtual void UpdateObject (int64_t aSimTime_nanosec)
PilotObjectGetActivePilotObject () const
virtual bool HasLandingGear ()
bool Crashed () const
void SetSizeFactorEnabled (bool aSetting)
void SetPrepositionAlt_m (double aAltitude_m)
KinematicStateGetKinematicState ()
FreezeFlagsGetFreezeFlags ()
const EnvironmentGetEnvironment () const
void GetStartingLatLon (double &aStartingLat, double &aStartingLon) const
double GetNx_g () const
double GetNy_g () const
double GetNz_g () const
double GetLift_lbs () const
double GetDrag_lbs () const
double GetSideForce_lbs () const
double GetThrustMagnitude_lbs () const
UtVec3dX GetAccelNED_mps2 () const
double GetVertSpeed_fpm () const
double GetFlightPathAngle_rad () const
double GetFlightPathAngle_deg () const
void GetOrientationWCS_rad (double &aWcsYaw_rad, double &aWcsPitch_rad, double &aWcsRoll_rad) const
void GetAttitudeNED_rad (double &aHeading, double &aPitch, double &aRoll)
double GetHeading_rad () const
double GetHeading_deg () const
double GetPitch_rad () const
double GetPitch_deg () const
double GetRoll_rad () const
double GetRoll_deg () const
double GetAltitudeMSL_m () const
double GetAltitudeMSL_ft () const
double GetApogee_km () const
double GetRangeSinceStart_km () const
void GetLocationLLA (double &aLat, double &aLon, double &aAlt_m)
void GetLocationWCS_m (double &aWcsPosX_m, double &aWcsPosY_m, double &aWcsPosZ_m) const
UtVec3dX GetLocationWCS_m () const
double GetLatitude_deg () const
double GetLongitude_deg () const
void GetVelocityWCS_mps (double &aWcsVelX_mps, double &aWcsVelY_mps, double &aWcsVelZ_mps) const
UtVec3dX GetVelocityWCS_mps () const
UtVec3dX GetVelocityNED_mps () const
double GetKIAS () const
double GetKCAS () const
double GetKTAS () const
double GetMach () const
double GetSpeed_fps () const
double GetSpeed_mps () const
void GetBodyRates_rps (double &xAxis_rps, double &yAxis_rps, double &zAxis_rps) const
double GetYawRate_rps () const
double GetYawRate_dps () const
double GetPitchRate_rps () const
double GetPitchRate_dps () const
double GetRollRate_rps () const
double GetRollRate_dps () const
double GetAlpha_rad () const
double GetAlpha_deg () const
double GetAlphaDot_rps () const
double GetAlphaDot_dps () const
double GetBeta_rad () const
double GetBeta_deg () const
double GetBetaDot_rps () const
double GetBetaDot_dps () const
void GetBodyAngularAccel_rps2 (double &xAxis_rps2, double &yAxis_rps2, double &zAxis_rps2) const
double GetDynamicPressure_psf () const
double GetStaticPressure_psf () const
double GetLastNx_g () const
double GetLastNy_g () const
double GetLastNz_g () const
double GetLastDynamicPressure_psf () const
double GetLastStaticPressure_psf () const
double GetLastAltitudeMSL_ft () const
bool GetLastIsCaptive () const
void SetLocationLLA (double aLat, double aLon, double aAlt_m)
void SetLocationWCS_m (double aWcsPosX_m, double aWcsPosY_m, double aWcsPosZ_m)
void SetVelocityWCS_mps (double aWcsVelX_mps, double aWcsVelY_mps, double aWcsVelZ_mps)
void SetVelocityNED_mps (double aVelNorth_mps, double aVelEast_mps, double aVelDown_mps)
void SetOrientationWCS_rad (double aWcsYaw_rad, double aWcsPitch_rad, double aWcsRoll_rad)
void SetAttitudeNED_rad (double aHeading_rad, double aPitch_rad, double aRoll_rad)
void ZeroBodyRates ()
const MassPropertiesGetMassProperties () const
double GetEmptyWeight_lbs () const
double GetCurrentWeight_lbs () const
virtual void CalcStallAngle ()
void UpdateFuelBurn (int64_t aSimTime_nanosec, double aDeltaT_sec, const KinematicState &aState)
bool IsCaptive () const
void SetCaptiveState (bool aIsCaptive)
void SetLastCaptiveState (bool aLastIsCaptive)
void SetAngRelToParentYPR_rad (const UtVec3dX &aAngRelToParentYPR_rad)
void GetPositionRelativeToParent (UtVec3dX &aPosRelToParent_m, UtVec3dX &aAngRelToParentYPR_rad)
void SetYawRelToParent_rad (double aYawAngle_rad)
void SetPitchRelToParent_rad (double aYawAngle_rad)
void SetRollRelToParent_rad (double aYawAngle_rad)
void AdjustForParentInducedEffects ()
void ImpartSeparationEffects ()
size_t GetNumSubobjects () const
bool JettisonSubobject (const std::string &aSubobjectName, int64_t aSimTime_nanosec)
bool JettisonSubobject (Mover *aSubobject, int64_t aSimTime_nanosec)
std::unique_ptr< MoverDirectJettisonOfSubobject (Mover *aSubobject, double aSimTime_sec)
void AddSubObject (std::unique_ptr< Mover > aSubObject)
const std::list< std::unique_ptr< Mover > > & GetSubobjectList () const
MoverGetSubobjectByName (const std::string &aSubobjectName) const
MoverGetSubobjectByBaseName (const std::string &aSubobjectName) const
virtual ThrustProducerObjectGetThrustProducerObjectByName (const std::string &aName) const
virtual ThrustProducerObjectGetThrustProducerObjectByName (const std::string &aName, const Mover *aCallingObject, int aCallingLevel=0) const
bool HasAfterburner () const
FuelTankGetFuelTankByName (const std::string &aName) const
FuelTankGetFuelTankByName (const std::string &aName, const Mover *aCallingObject, int aCallingLevel=0) const
bool SetFuelFeed (std::string aEngineName, std::string aFuelTankName)
bool SetFuelFeed (std::string aFuelTankName)
double GetTotalFuelTankCapacity_lbs () const
double GetCurrentTotalFuelTankQuantity_lbs () const
double GetInternalFuelTankCapacity_lbs () const
double GetCurrentInternalFuelTankQuantity_lbs () const
double GetExternalFuelTankCapacity_lbs () const
double GetCurrentExternalFuelTankQuantity_lbs () const
double GetRemainingFuelPercent () const
void AddFuelQuantity_lbs (double aFuelToAdd_lbs)
void SetFuelInTank_lbs (const std::string &aTankName, double aFuel_lbs)
int GetNumberOfExternalTanks () const
void IgniteObject (int64_t aIgniteTimeInFrame_nanosec)
void ShutdownObject (int64_t aTerminateTime_nanosec=0)
void TerminateThrust (int64_t aTerminateTime_nanosec=0)
void EnableControls (bool aEnabled)
bool ControlsEnabled () const
bool AutopilotAvailable () const
double GetNormalizedMilitaryThrust () const
double GetNormalizedAfterburnerThrust () const
double GetNormalizedTotalThrust () const
SequencerGetSequencerByName (const std::string &aName) const
bool PendingEventTimes_nanosec (int64_t aSimTime_nanosec, std::set< int64_t > &aEventTime_nanosec)
bool PendingSequencerEventTimes_nanosec (int64_t aSimTime_nanosec, std::set< int64_t > &aEventTime_nanosec)
bool PendingGuidanceControlEventTimes_nanosec (int64_t aSimTime_nanosec, std::set< int64_t > &aEventTime_nanosec)
bool ActivateSequencer (const std::string &aSequencerName)
bool ActivateSequencer (const std::string &aSubobjectName, const std::string &aSequencerName)
double GetStepSize_sec () const
double GetLastUpdateTime_sec () const
double GetLifeTime_sec () const
double GetTimeOfFlight_sec () const
int64_t GetLifeTime_nanosec () const
int64_t GetTimeOfFlight_nanosec () const
const std::string & GetName () const
std::string GetBaseName () const
std::string GetDerivedFromName () const
void SetNamePrefix (const std::string &aPrefixName)
void SetBaseName (const std::string &aName)
void SetName (const std::string &aName)
virtual void TestingUpdate (double aAltitude_ft, double aSpeed_fps, double aPitchAngle_deg, double aStickBack, double aThrottleForward, double aFlapsDown)
double GetNominalEstimateMaxMach () const
double GetNominalEstimateMaxAlpha_deg () const
double GetNominalEstimateMinAlpha_deg () const
double GetNominalEstimateMaxBeta_deg () const
void SetDestroyed ()
bool GetIsDestroyed () const
virtual void UpdateAppearance ()
bool AnEngineIsOperating () const
bool AnEngineIsSmoking () const
bool AnEngineHasAfterburnerOn () const
bool ContrailTrailingEffectPresent () const
bool RocketSmokeTrailingEffectPresent () const
bool DamageSmokeTrailingEffectPresent () const
bool FlamesArePresent () const
void MakeEnginesSmoke ()
void ActivateDamageSmokeTrailingEffect (bool aEffectActive)
void ActivateFlamesEffect (bool aFlamesPresent)
bool WithinContrailAltitudeBand (double aAltitude_ft) const
bool UsingSphericalEarth () const
void SetTestingIgnoreAllCrashes (bool aValue)
bool GetTestingIgnoreAllCrashes () const
void SetTestingClampToSeaLevelMinAlt (bool aValue)
bool GetTestingClampToSeaLevelMinAlt () const
Public Member Functions inherited from WsfMover
 WsfMover ()=delete
 WsfMover (const WsfScenario &aScenario)
 WsfMover (const WsfMover &aSrc)
WsfMoveroperator= (const WsfMover &)=delete
 ~WsfMover () override
virtual double TurnRadius (double atSpeed)
WsfModeListGetModeList () const
virtual void TriggerExtrapolation ()
virtual KinematicModelCreateKinematicModel (double aSimTime, WsfStringId aPlatformTypeId, const double aLocationWCS[3], const double aVelocityWCS[3], WsfMover *aMoverPtr, WsfDraw *aDrawPtr) const
WsfComponentCloneComponent () const override
int GetComponentInitializationOrder () const override
const int * GetComponentRoles () const override
void * QueryInterface (int aRole) override
const char * GetScriptClassName () const override
virtual void SwapMoverInitiated (double aSimTime, WsfMover *aOldMoverPtr)
bool Initialize (double aSimTime) override
bool ProcessInput (UtInput &aInput) override
void Update (double aSimTime) override
bool Initialize2 (double aSimTime) override
void TurnOff (double aSimTime) override
void TurnOn (double aSimTime) override
void SetNonOperational (double aSimTime) override
void SetOperational (double aSimTime) override
void PartBroken (double aSimTime) override
void Restore (double aSimTime) override
virtual bool IsStopped () const
 Return whether the mover (and its attached platform) is stopped.
virtual bool IsPaused () const
virtual bool IsExtrapolating () const
double GetLastUpdateTime () const
double GetUpdateInterval () const override
double GetUpdateTimeTolerance () const
void SetUpdateInterval (double aUpdateInterval) override
void SetLastUpdateTime (double aLastUpdateTime)
virtual bool UpdateAllowed () const
bool UpdateWhenBroken () const
void SetUpdateWhenBroken ()
void SetNoUpdateWhenBroken ()
virtual bool GoToClosestPoint (double aSimTime)
virtual bool GoToLabel (double aSimTime, WsfStringId aLabelId)
virtual bool UpdateDefaultRoute ()
virtual bool FindAndSetPath (double aSimTime, WsfGeoPoint *aStartPtr, WsfGeoPoint *aEndPtr)
virtual bool GetFutureLocationWCS (double aSimTime, double aLocationWCS[3])
WsfStringId GetModeId () const
virtual void SetMode (WsfStringId aModeName)
bool ThreadSafe () const
 Returns true if the mover update is thread safe.
void SetThreadSafe ()
void SetNotThreadSafe ()
virtual void InitializeProperties ()
 Add any input properties and its default value common properties list.
virtual bool PropertyExists (const std::string &aPropertyName)
 Return true if the given property exists in the set of properties.
virtual void RegisterProperty (const std::string &aPropertyName, const int &aProperty)
 Add an integer property to the common set of properties.
virtual void RegisterProperty (const std::string &aPropertyName, const double &aProperty)
 Add an floating point property to the common set of properties.
virtual void RegisterProperty (const std::string &aPropertyName, const std::string &aProperty)
 Add an string property to the set of common properties.
virtual bool GetPropertyInt (const std::string &aPropertyName, int &aProperty)
virtual bool GetPropertyDouble (const std::string &aPropertyName, double &aProperty)
virtual bool GetPropertyString (const std::string &aPropertyName, std::string &aProperty)
virtual double GetThrottlePosition ()
Public Member Functions inherited from WsfPlatformPart
 WsfPlatformPart (const WsfScenario &aScenario, int aPartType)
WsfPlatformPartoperator= (const WsfPlatformPart &aRhs)=delete
 ~WsfPlatformPart () override
const int * GetComponentRoles () const override
void * QueryInterface (int aRole) override
bool DebugEnabled () const
 Returns 'true' if debugging is enabled for this instance.
void SetDebugEnabled (bool aDebugEnabled)
unsigned int GetDebugMask ()
bool IsExternallyControlled () const
virtual void SetExternallyControlled (double aSimTime, bool aIsExternallyControlled)
int GetPartType () const
const char * GetScriptClassName () const override
WsfSimulationGetSimulation () const
const WsfScenarioGetScenario () const
WsfStringId GetComponentName () const override
void ComponentParentChanged (WsfPlatform *aPlatformPtr) override
bool Initialize (double aSimTime) override
bool Initialize2 (double aSimTime) override
bool ProcessInput (UtInput &aInput) override
WsfPlatformGetPlatform () const
virtual void SetPlatform (WsfPlatform *aPlatformPtr)
virtual void PlatformAdded (double aSimTime, WsfPlatform *aPlatformPtr)
virtual void PlatformDeleted (WsfPlatform *aPlatformPtr)
double GetLastStatusChangeTime () const
void SetLastStatusChangeTime (double aSimTime)
 Allows a system to set the time at which the device was initialized.
bool CanBeMadeOperational () const
 Returns an indication that this system can be made operational.
bool CanBeMadeNonOperational () const
 Returns an indication that this system can be made non-operational.
bool CanBeTurnedOn () const
 Returns an indication that this system can be turned on.
bool CanBeTurnedOff () const
 Returns an indication that this system can be turned off.
bool IsTurnedOn () const
bool InitiallyTurnedOn () const
 Is the system to be turned 'on' when added to the simulation?
void SetInitiallyTurnedOn (bool aInitiallyTurnedOn)
 Sets if the system is turned on when added to the simulation.
bool IsOperational () const
bool SetOperational (double aSimTime, bool aMakeOperational)
double GetDamageFactor () const
bool SetDamageFactor (double aSimTime, double aDamageFactor)
bool IsCritical () const
void SetCritical (bool aValue)
bool IsBroken () const
WsfInternalLinksGetInternalLinks ()
 Return the internal links for this part.
virtual bool HasInternalLinks () const
 Does this platform part have a communication link to other platform parts?
virtual bool ProcessMessage (double aSimTime, const WsfMessage &aMessage)
virtual bool ReceiveMessage (double aSimTime, const WsfMessage &aMessage)
virtual void SendMessage (double aSimTime, const WsfMessage &aMessage)
virtual void SendMessageTo (double aSimTime, const WsfMessage &aMessage, WsfStringId aRecipientId)
void SendMessageToProcessor (double aSimTime, const WsfMessage &aMessage, WsfStringId aRecipientId)
virtual void SendQueuedMessages (double aSimTime)
const WsfCategoryListGetCategories () const
 Get the categories to which this part belongs.
void AddCategory (WsfStringId aCategoryId)
 Adds the provided category to the platform part's category list.
bool IsCategoryMember (WsfStringId aCategoryId) const
const WsfGroupListGetGroups () const
 Get the groups to which this platform part belongs.
void JoinGroup (WsfGroup *aGroupPtr)
 Join the given group.
void LeaveGroup (WsfGroup *aGroupPtr)
 Leave the given group.
bool IsGroupMember (WsfStringId aGroupId)
unsigned int GetUpdateEventEpoch () const
void IncrementUpdateEventEpoch ()
bool UpdateEventActive () const
 Is an 'Update' event active?
void SetUpdateEventActive (bool aUpdateEventActive)
 Indicate if the 'Update' event is active.
Public Member Functions inherited from WsfObject
 WsfObject ()
 This is the constructor for the WsfObject class.
 ~WsfObject () override
 This is the destructor for the WsfObject class.
const char * GetScriptClassName () const override
const std::string & GetType () const
WsfStringId GetTypeId () const
 Get the string ID of the 'type' of the object.
void SetType (WsfStringId aType)
const std::string & GetBaseType () const
WsfStringId GetBaseTypeId () const
const TypeListGetTypeList () const
bool IsA_TypeOf (WsfStringId aType) const
WsfObjectoperator= (const WsfObject &aRhs)
 Assignment operator.
template<typename T>
void Serialize (T &aBuff)
 For XIO (de)serialization.
const std::string & GetName () const
WsfStringId GetNameId () const
void SetName (WsfStringId aName)
Public Member Functions inherited from WsfComponentT< WsfPlatform >
 WsfComponentT ()
 WsfComponentT (const WsfComponentT &) noexcept
WsfComponentToperator= (const WsfComponentT &) noexcept
 ~WsfComponentT () override=default
ParentTypeGetComponentParent () const
void SetComponentParent (ParentType *aParentPtr)
Public Member Functions inherited from WsfComponent
virtual ~WsfComponent ()=default
template<typename T>
bool QueryInterfaceT (T *&aRolePtr)
bool ComponentHasRole (int aRole)
 Returns true if the component has the specified role.
virtual bool PreInitialize (double aSimTime)
virtual void PreInput ()
Public Member Functions inherited from WsfUniqueId
 WsfUniqueId ()
 Construtor initializes the unique identifier to 0.
 WsfUniqueId (const WsfUniqueId &)
 Copy constructor initializes the unique identifier to 0.
WsfUniqueIdoperator= (const WsfUniqueId &)
unsigned int GetUniqueId () const
 Get the unique identifier assigned to this object.
template<typename T>
void Serialize (T &aBuff)
 For XIO (de)serialization.
Public Member Functions inherited from WsfAuxDataEnabled
 WsfAuxDataEnabled ()=default
 WsfAuxDataEnabled (const WsfAuxDataEnabled &aSrc)=default
WsfAuxDataEnabledoperator= (const WsfAuxDataEnabled &aRhs)
 WsfAuxDataEnabled (WsfAuxDataEnabled &&)=default
WsfAuxDataEnabledoperator= (WsfAuxDataEnabled &&)=default
virtual ~WsfAuxDataEnabled () noexcept
void SetAuxData (const WsfAttributeContainer &aAuxData)
void DeleteAuxData ()
 Delete the aux data container from the object.
void MergeAuxData (const WsfAuxDataEnabled &aSrc)
 Merge the object's aux data with aux data from an existing object.
void UpdateAuxData (const WsfAuxDataEnabled &aSrc)
 Update the object's aux data with aux data from an existing object.
bool HasAuxData () const
 Returns true if this object has aux data.
bool ProcessInput (UtInput &aInput)
template<typename T>
void Serialize (T &aBuff)
 (De)serialization for XIO
WsfAttributeContainerGetAuxData ()
const WsfAttributeContainerGetAuxData () const noexcept
const WsfAttributeContainerGetAuxDataConst () const noexcept

Static Public Member Functions

static int GetTypeId ()

Protected Member Functions

 RigidBodyMover (const RigidBodyMover &aSrc)
bool InitializeDetails (double aSimTime_sec) override
void UpdateFlightControls (int64_t aSimTime_nanosec) override
double CalculatePitchMomentAlphaStickBack_ftlbs (double aAlpha_deg, double aDesiredStickBack)
void CalculateMovableAero (double aDynPress_lbsqft, double aMach, double aSpeed_fps, double aAlpha_rad, double aBeta_rad, const UtVec3dX &aAngularRates_rps, UtVec3dX &aAeroMoment, double &aLift, double &aDrag, double &aSide, double &aLiftFactor)
void CalculateThrustVectorAndMomentUpdatePropulsion (double aSimTime_sec, double aDeltaTime_sec, const KinematicState &aState, ForceAndMomentsObject &aForceAndMoment)
void UpdatePropulsionFuelBurn (double aSimTime_sec, double aDeltaTime_sec, const KinematicState &aState) override
void CalculateObjectPropulsion (double aSimTime_sec, double aDeltaT_sec, double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad, ForceAndMomentsObject &aForceAndMoment, double &aFuelBurnRate_pps, double &aFuelBurned_lbs) override
void CalculateObjectPropulsion (double aSimTime_sec, double aDeltaT_sec, double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad, ForceAndRotationObject &aForceAndRotation, double &aFuelBurnRate_pps, double &aFuelBurned_lbs) override
void UpdateObjectPropulsion (double aSimTime_sec, double aDeltaT_sec, double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad, ForceAndMomentsObject &aForceAndMoment, double &aFuelBurnRate_pps, double &aFuelBurned_lbs)
void ObjectPropulsionCalculations (double aSimTime_sec, double aDeltaT_sec, double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad, ForceAndMomentsObject &aForceAndMoment, double &aFuelBurnRate_pps, double &aFuelBurned_lbs, bool aUpdateData)
void CalcTotalFuelFlowAndQuantity (double &aCurrentTotalFuelFlow_pph, double &aCurrentTotalFuel_lbs, double &aMaxTotalFuel_lbs) override
double GetAngleSurface (size_t aHandle) const
double GetNormalizedSurfaceAngle (size_t aHandle) const
void FindParts ()
 Mover (const Mover &aSrc)
bool ExecuteTriggersCB (unsigned int aPointIndex)
bool ExecuteTriggers (double aSimTime, unsigned int aPointIndex) override
 Executes any actions tied to the waypoint at aPointIndex.
void CrashIntoGroundCB (double aSimTime)
void CheckForNewlyJettisonedPlatforms (double aSimTime)
void HandleSubobjectJettison (std::unique_ptr< Mover > &aJettisonedObject)
WsfPlatformCommonSubobjectJettisonTasks (std::unique_ptr< Mover > aJettisonedObject)
RouteConvertWsfRouteToSixDOF_Route (const WsfRoute *aWsfRoute)
void InitializeSubobject (double aSimTime, std::string &aRootName, Mover *aObject, const UtQuaternion &aRotation, const UtVec3dX &aOffset)
virtual void CopyDataFromParent ()
virtual void CalculateWashIn (double aSimTime_sec)
bool RemoveSequencer (const std::string &aName)
std::unique_ptr< MoverSeparateSubObject (Mover *aSubObject)
void SetSphericalEarthFlagOnSubobjects (bool aSetting)
void CalculateSizeFactor (double dT_sec)
void SetupStartingLatLon ()
void SetTheLastValues ()
virtual void HandleGroundContact (int64_t aSimTime_nanosec)
virtual void PerformCrash (int64_t aSimTime_nanosec)
void ClampToSeaLevelMinAlt ()
void ComputeWashInConditions (double aSimTime_sec)
void SetModeList (WsfModeList *aModeListPtr)
void SetUpdateTimeTolerance (double aDt)
 Revise the internal time tolerance allowed for Update() sequencing logic.
 WsfPlatformPart (const WsfPlatformPart &aSrc)
 Copy constructor (for Clone()).
 WsfObject (const WsfObject &aSrc)
 Copy constructor (for Clone()).
Protected Member Functions inherited from WsfUniqueId
void AssignUniqueId (WsfSimulation *aSimulationPtr)

Protected Attributes

std::unique_ptr< RigidBodyMoverTestObjectmTestSupportObjectPtr {nullptr}
ut::CloneablePtr< RigidBodyAeroCoreObjectmAeroCoreObjPtr {nullptr}
std::list< ut::CloneablePtr< RigidBodyAeroMovableObject > > mAeroPartList
RigidBodyAeroCoreObjectmActiveAeroObjPtr = nullptr
ut::CloneablePtr< RigidBodyPropulsionSystemmPropulsionObjPtr {nullptr}
ut::CloneablePtr< RigidBodyIntegratormIntegratorPtr {nullptr}
ut::CloneablePtr< RigidBodyFlightControlSystemmFlightControlsPtr {nullptr}
ut::CloneablePtr< RigidBodyPilotManagermPilotManagerPtr {nullptr}
ut::CloneablePtr< RigidBodyLandingGearmLandingGearPtr {nullptr}
bool mLandingGearDownAtStart = false
bool mParkingBrakeOnAtStart = false
bool mTaxiModeEnabledAtStart = false
bool mNWSEnabledAtStart = false
double mLastLandingGearLeverPosition = 0.0
double mLastThrustReverserLeverPosition = 0.0
double mLastThrustVectorYawRightPosition = 0.0
double mLastThrustVectorPitchUpPosition = 0.0
double mLastThrustVectorRollRightPosition = 0.0
double mLastNoseWheelSteeringRightPosition = 0.0
double mLastWheelBrakeLeftPosition = 0.0
double mLastWheelBrakeRightPosition = 0.0
bool mLastNWS_Enabled = false
size_t mHandleAileronLeft = 0
size_t mHandleAileronRight = 0
size_t mHandleFlapLeft = 0
size_t mHandleFlapRight = 0
size_t mHandleSpoilerLeft = 0
size_t mHandleSpoilerRight = 0
size_t mHandleStabilizerLeft = 0
size_t mHandleStabilizerRight = 0
size_t mHandleElevator = 0
size_t mHandleRudderLeft = 0
size_t mHandleRudder = 0
size_t mHandleRudderRight = 0
size_t mHandleSpeedBrake = 0
size_t mHandleLandingGear = 0
size_t mHandleLandingGearNose = 0
size_t mHandleLandingGearMainLeft = 0
size_t mHandleLandingGearMainRight = 0
const double cUNDEFINED_DOUBLE = 1.0E+30
MovermParentVehicle = nullptr
bool mEnginesOffAtStart = false
bool mThrottleIdleAtStart = false
bool mThrottleFullAtStart = false
bool mThrottleAfterburnerAtStart = false
bool mAutopilotNoControlAtStart = false
bool mEnableThrustVectoringAtStart = true
bool mEnableControlsAtStart = true
double mMaxGees = 0.0
double mSpeed = 0.0
UtVec3d mManeuverPlane
WsfMoverGuidancemGuidancePtr = nullptr
double mYGLoad = 0.0
double mZGLoad = 0.0
double mCommandedYawRate = 0.0
double mCommandedPitchRate = 0.0
double mCommandedRollRate = 0.0
double mCommandedSpeed = -1.0
double mCommandedEngineStopTime = cUNDEFINED_DOUBLE
double mMinimumHeightAboveTerrain = 0.0
 The minimum height above terrain required for terrain following.
double mFMM_Time = -1.0
 Information captured at time of 'first missile motion' (needed by trajectory output).
double mFMM_Heading = 0.0
double mFMM_LocWCS [3] {0.0, 0.0, 0.0}
double mLastStickX = 0.0
double mLastStickY = 0.0
double mLastRudder = 0.0
double mLastThrottle = 0.0
double mLastSpdBrakeLeverPosition = 0.0
double mLastSpoilerLeverPosition = 0.0
double mLastFlapsLeverPosition = 0.0
double mInitialPosition_Latitude = 0.0
double mInitialPosition_Longitude = 0.0
double mInitialAltitude_m = 0.0
double mInitialNEDHeading = 0.0
double mInitialNEDPitch = 0.0
double mInitialNEDRoll = 0.0
double mInitialSpeed_NED_X_fps = 0.0
double mInitialSpeed_NED_Y_fps = 0.0
double mInitialSpeed_NED_Z_fps = 0.0
bool mValidInitialPosition = false
bool mValidInitialAltitude_ft = false
bool mValidInitialNEDHeading = false
bool mValidInitialNEDPitch = false
bool mValidInitialNEDRoll = false
bool mValidInitialSpeed_NED = false
UtCloneablePtr< wsf::six_dof::ManeuverSequence > mManeuverPtr {nullptr}
unsigned int mStageIndex = 0
 The index of the current stage.
std::queue< WsfPlatform * > mNewlyJettisonedPlatforms
UtCloneablePtr< WsfRoutemWsfRoutePtr {nullptr}
UtCloneablePtr< WsfRoutemDefaultWsfRoutePtr {nullptr}
bool mFollowVerticalTrack = false
double mJokerFuel_lbs = 0.0
double mBingoFuel_lbs = 0.0
std::map< std::string, std::pair< double, int > > mEventPipeManager
std::map< std::string, std::vector< WsfVisualPart * > > mVisualPartManager
UtCallbackHolder mCallbacks
bool mIsInitialized = false
std::string mTypeName
std::string mBaseName
std::string mDerivedFromName
std::string mIntegratorTypeName
int64_t mLastSimTime_nanosec = 0
int64_t mStepSize_nanosec = 0
int64_t mLifeTime_nanosec = 0
int64_t mTimeOfFlight_nanosec = 0
bool mIsCaptive = false
bool mLastIsCaptive = true
UtVec3dX mPosRelToParent_m
UtVec3dX mAngRelToParentYPR_rad
UtVec3dX mSeparationVel_fps
UtVec3dX mSeparationOmega_rps
std::list< std::unique_ptr< Mover > > mSubObjectList
std::vector< ut::CloneablePtr< Sequencer > > mSequencerList
const EnvironmentmEnvironment
MassProperties mMassProperties
KinematicState mKinematicState
FreezeFlags mFreezeFlags
SizeFactor mSizeFactor
double mStallAngle = 0.0
double mStallDetectionDeltaAngle = 0.0
double mMaxMach = 100.0
double mMaxAlpha_deg = 180.0
double mMinAlpha_deg = -180.0
double mMaxBeta_deg = 90.0
bool mFixedObject = false
double mPrepositionLat = 0.0
double mPrepositionLon = 0.0
double mInitialLat = 0.0
double mInitialLon = 0.0
double mInitialAlt_m = 0.0
double mDownRangeDist_m = 0.0
double mThrustTerminationTime_sec = 0.0
bool mThrustTerminationTimeValid = false
bool mCrashed = false
bool mEngineOn = false
bool mAfterburnerOn = false
bool mSmoking = false
bool mOnFire = false
bool mDamageSmokeTrailingEffect = false
bool mFlamesPresent = false
bool mIsDestroyed = false
bool mProducesLaunchSmoke = false
double mLaunchSmokeTime_sec = 0.0
bool mRisingSmokePlume = false
bool mLaunchFlashSmoke = false
bool mLightDamage = false
bool mHeavyDamage = false
bool mInitSetupMode = false
bool mUseWashInInitConditions = false
bool mTestingIgnoreAllCrashes = false
bool mTestingClampToSeaLevelMinAlt = false
int64_t mTestingSimTime_nanosec = 0
double mLastUpdateTime
 The simulation time when Update was last called.
WsfVariable< double > mUpdateTimeTolerance
bool mThreadSafe
std::vector< WsfMoverMode * > mMoverModeList
 The generic list of modes (not valid until Initialize is called).
WsfStringId mModeId

Additional Inherited Members

Public Types inherited from WsfPlatformPart
enum  { cLEVEL_ONE_DEBUG = 0x00000001 , cLEVEL_TWO_DEBUG = 0x00000002 }
using InternalMessageQueue = std::queue<WsfMessage*>
using RecipientMessageQueue = std::queue<std::pair<WsfPlatformPart*, WsfMessage*>>
Public Types inherited from WsfObject
typedef std::vector< WsfStringIdTypeList
 The list of types returned by GetTypeList.
Public Types inherited from WsfComponentT< WsfPlatform >
typedef WsfPlatform ParentType
 This is needed to support the WsfComponentList template.
Public Attributes inherited from wsf::six_dof::Mover
UtCallbackListN< void(double)> CrashedIntoGround
UtCallbackListN< void(std::unique_ptr< Mover > &)> SubobjectJettisoned
UtCallbackListN< void(double)> RouteChanged
UtCallbackListN< void(double, double)> StageIgnition
UtCallbackListN< void(double, double)> StageBurnout
UtCallbackListN< void(double, double)> StageSeparation
Static Public Attributes inherited from WsfMover
static const char * cTYPE_KIND = "mover"
Static Public Attributes inherited from WsfAuxDataEnabled
static UtCallbackListN< void(const WsfAuxDataEnabled *)> AuxDataAccessed
static UtCallbackListN< void(const WsfAuxDataEnabled *)> AuxDataDestroyed

Detailed Description

This is an evolution of the P6DOF mover. It includes 6 degrees-of-freedom, but uses only the diagonal elements of the moment-of-inertia tensor.

Constructor & Destructor Documentation

◆ RigidBodyMover() [1/2]

◆ RigidBodyMover() [2/2]

Member Function Documentation

◆ AileronLeftValid()

bool wsf::six_dof::RigidBodyMover::AileronLeftValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleAileronLeft.

◆ AileronRightValid()

bool wsf::six_dof::RigidBodyMover::AileronRightValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleAileronRight.

◆ ApplyExternalForce()

void wsf::six_dof::RigidBodyMover::ApplyExternalForce ( double aForceMagnitude_lbs,
double aAngle_deg )

◆ ApplyLeftGearBrake()

void wsf::six_dof::RigidBodyMover::ApplyLeftGearBrake ( double aValue)

◆ ApplyRightGearBrake()

void wsf::six_dof::RigidBodyMover::ApplyRightGearBrake ( double aValue)

◆ CalcTotalFuelFlowAndQuantity()

void wsf::six_dof::RigidBodyMover::CalcTotalFuelFlowAndQuantity ( double & aCurrentTotalFuelFlow_pph,
double & aCurrentTotalFuel_lbs,
double & aMaxTotalFuel_lbs )
overrideprotectedvirtual

◆ CalculateAeroBodyForceAndMoments()

◆ CalculateAeroBodyForceAndRotation()

void wsf::six_dof::RigidBodyMover::CalculateAeroBodyForceAndRotation ( UtVec3dX & aLiftBodyVector_lbs,
UtVec3dX & aDragBodyVector_lbs,
UtVec3dX & aSideForceBodyVector_lbs,
UtVec3dX & aRotationAccelerationLimits_rps2,
UtVec3dX & aStabilizingFrequency_rps )
overridevirtual

◆ CalculateAlphaAtSpecifiedGLoad_deg()

void wsf::six_dof::RigidBodyMover::CalculateAlphaAtSpecifiedGLoad_deg ( double aGLoad,
double & aAlpha_deg ) const
overridevirtual

◆ CalculateBetaAtSpecifiedGLoad_deg()

void wsf::six_dof::RigidBodyMover::CalculateBetaAtSpecifiedGLoad_deg ( double aGLoad,
double & aBeta_deg ) const
overridevirtual

◆ CalculateCdAreaForCoreAndControls()

void wsf::six_dof::RigidBodyMover::CalculateCdAreaForCoreAndControls ( double aMach,
double aAlpha_rad,
double aStickBack,
double & aCoreCd,
double & aControlsCd )

◆ CalculateCLAreaForCoreAndControls()

void wsf::six_dof::RigidBodyMover::CalculateCLAreaForCoreAndControls ( double aMach,
double aAlpha_rad,
double aStickBack,
double & aCoreCL,
double & aControlsCL )

◆ CalculateCmAreaForCoreAndControls()

◆ CalculateControlsAeroCoefficientVectors()

void wsf::six_dof::RigidBodyMover::CalculateControlsAeroCoefficientVectors ( double aMach,
double aAlpha_rad,
double aStickBack,
double & aCLArea,
double & aCdArea,
double & aCmArea )

◆ CalculateControlsCdArea()

◆ CalculateControlsCLArea()

◆ CalculateCurrentMassProperties()

void wsf::six_dof::RigidBodyMover::CalculateCurrentMassProperties ( )
overridevirtual

◆ CalculateLandingGearFM()

void wsf::six_dof::RigidBodyMover::CalculateLandingGearFM ( int64_t aSimTime_nanosec,
const UtVec3dX & aNonLandingGearTotalForceVecInertial_lbs,
UtVec3dX & aInertialTotalGearVector_lbs,
UtVec3dX & aTotalGearMoment_ftlbs )

◆ CalculateMovableAero()

void wsf::six_dof::RigidBodyMover::CalculateMovableAero ( double aDynPress_lbsqft,
double aMach,
double aSpeed_fps,
double aAlpha_rad,
double aBeta_rad,
const UtVec3dX & aAngularRates_rps,
UtVec3dX & aAeroMoment,
double & aLift,
double & aDrag,
double & aSide,
double & aLiftFactor )
protected

◆ CalculateObjectPropulsion() [1/2]

void wsf::six_dof::RigidBodyMover::CalculateObjectPropulsion ( double aSimTime_sec,
double aDeltaT_sec,
double aAlt_ft,
double aDynPress_lbsqft,
double aStatPress_lbssqft,
double aSpeed_fps,
double aMach,
double aAlpha_rad,
double aBeta_rad,
ForceAndMomentsObject & aForceAndMoment,
double & aFuelBurnRate_pps,
double & aFuelBurned_lbs )
overrideprotectedvirtual

◆ CalculateObjectPropulsion() [2/2]

void wsf::six_dof::RigidBodyMover::CalculateObjectPropulsion ( double aSimTime_sec,
double aDeltaT_sec,
double aAlt_ft,
double aDynPress_lbsqft,
double aStatPress_lbssqft,
double aSpeed_fps,
double aMach,
double aAlpha_rad,
double aBeta_rad,
ForceAndRotationObject & aForceAndRotation,
double & aFuelBurnRate_pps,
double & aFuelBurned_lbs )
overrideprotectedvirtual

◆ CalculatePitchMomentAlphaStickBack_ftlbs()

double wsf::six_dof::RigidBodyMover::CalculatePitchMomentAlphaStickBack_ftlbs ( double aAlpha_deg,
double aDesiredStickBack )
protected

◆ CalculatePropulsionFM()

void wsf::six_dof::RigidBodyMover::CalculatePropulsionFM ( int64_t aSimTime_nanosec,
double aDeltaT_sec,
const KinematicState & aState,
UtVec3dX & aInertialPropulsionVector_lbs,
UtVec3dX & aPropulsionMoment_ftlbs )

◆ CalculateStickBackForZeroMoment() [1/2]

void wsf::six_dof::RigidBodyMover::CalculateStickBackForZeroMoment ( double aAlpha_deg,
double & aStickBack )

◆ CalculateStickBackForZeroMoment() [2/2]

◆ CalculateThrustVectorAndMomentUpdatePropulsion()

◆ CalculateTotalCmAndCL()

void wsf::six_dof::RigidBodyMover::CalculateTotalCmAndCL ( double aMach,
double aAlpha_rad,
double aStickBack,
double & aTotalCm,
double & aTotalCL )

◆ Clone()

WsfMover * wsf::six_dof::RigidBodyMover::Clone ( ) const
overridevirtual

Clone this object.

Returns
a pointer to the new object.

Implements WsfMover.

References RigidBodyMover(), and WsfMover::WsfMover().

Referenced by operator=().

◆ DeriveFrom()

◆ ElevatorValid()

bool wsf::six_dof::RigidBodyMover::ElevatorValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleElevator.

◆ EnableDirectBraking()

void wsf::six_dof::RigidBodyMover::EnableDirectBraking ( )

◆ FindParts()

◆ FlapLeftValid()

bool wsf::six_dof::RigidBodyMover::FlapLeftValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleFlapLeft.

◆ FlapRightValid()

bool wsf::six_dof::RigidBodyMover::FlapRightValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleFlapRight.

◆ ForceLandingGearDownInstantly()

void wsf::six_dof::RigidBodyMover::ForceLandingGearDownInstantly ( const std::string & aLandingGearControlSurfaceHandleName)

◆ ForceLandingGearPositionInstantly()

◆ ForceLandingGearUpInstantly()

void wsf::six_dof::RigidBodyMover::ForceLandingGearUpInstantly ( const std::string & aLandingGearControlSurfaceHandleName)

◆ GetActiveAeroObject()

RigidBodyAeroCoreObject * wsf::six_dof::RigidBodyMover::GetActiveAeroObject ( ) const
inline

◆ GetActiveAeroObjectName()

std::string wsf::six_dof::RigidBodyMover::GetActiveAeroObjectName ( ) const
inline

References GetActiveAeroObject().

◆ GetAeroCoreObject()

AeroCoreObject * wsf::six_dof::RigidBodyMover::GetAeroCoreObject ( ) const
inlineoverridevirtual

Implements wsf::six_dof::Mover.

References mAeroCoreObjPtr.

◆ GetAileronsBothPosition()

double wsf::six_dof::RigidBodyMover::GetAileronsBothPosition ( ) const

◆ GetAngleAileronLeft()

double wsf::six_dof::RigidBodyMover::GetAngleAileronLeft ( ) const

◆ GetAngleAileronRight()

double wsf::six_dof::RigidBodyMover::GetAngleAileronRight ( ) const

◆ GetAngleElevator()

double wsf::six_dof::RigidBodyMover::GetAngleElevator ( ) const

◆ GetAngleFlapLeft()

double wsf::six_dof::RigidBodyMover::GetAngleFlapLeft ( ) const

References GetAngleSurface(), and mHandleFlapLeft.

Referenced by GetFlapsPosition().

◆ GetAngleFlapRight()

double wsf::six_dof::RigidBodyMover::GetAngleFlapRight ( ) const

◆ GetAngleLandingGear()

double wsf::six_dof::RigidBodyMover::GetAngleLandingGear ( ) const

◆ GetAngleLandingGearMainLeft()

double wsf::six_dof::RigidBodyMover::GetAngleLandingGearMainLeft ( ) const

◆ GetAngleLandingGearMainRight()

double wsf::six_dof::RigidBodyMover::GetAngleLandingGearMainRight ( ) const

◆ GetAngleLandingGearNose()

double wsf::six_dof::RigidBodyMover::GetAngleLandingGearNose ( ) const

◆ GetAngleOfControlSurface() [1/2]

double wsf::six_dof::RigidBodyMover::GetAngleOfControlSurface ( size_t aHandle) const

◆ GetAngleOfControlSurface() [2/2]

double wsf::six_dof::RigidBodyMover::GetAngleOfControlSurface ( std::string aControlSurfaceName) const

◆ GetAngleRudder()

double wsf::six_dof::RigidBodyMover::GetAngleRudder ( ) const

References GetAngleSurface(), and mHandleRudder.

Referenced by GetRudderPosition().

◆ GetAngleRudderLeft()

double wsf::six_dof::RigidBodyMover::GetAngleRudderLeft ( ) const

◆ GetAngleRudderRight()

double wsf::six_dof::RigidBodyMover::GetAngleRudderRight ( ) const

◆ GetAngleSpeedBrake()

double wsf::six_dof::RigidBodyMover::GetAngleSpeedBrake ( ) const

◆ GetAngleSpoilerLeft()

double wsf::six_dof::RigidBodyMover::GetAngleSpoilerLeft ( ) const

◆ GetAngleSpoilerRight()

double wsf::six_dof::RigidBodyMover::GetAngleSpoilerRight ( ) const

◆ GetAngleStabilizerLeft()

double wsf::six_dof::RigidBodyMover::GetAngleStabilizerLeft ( ) const

◆ GetAngleStabilizerRight()

double wsf::six_dof::RigidBodyMover::GetAngleStabilizerRight ( ) const

◆ GetAngleSurface()

◆ GetBooleanInput()

bool wsf::six_dof::RigidBodyMover::GetBooleanInput ( size_t aHandle) const
overridevirtual

Implements wsf::six_dof::Mover.

References mFlightControlsPtr.

◆ GetCenterOfGravity_ft()

UtVec3dX wsf::six_dof::RigidBodyMover::GetCenterOfGravity_ft ( ) const
inlineoverridevirtual

◆ GetControlSurfaceHandle()

size_t wsf::six_dof::RigidBodyMover::GetControlSurfaceHandle ( const std::string & aControlSurfaceName) const

◆ GetControlSurfaceHandleContainingString()

size_t wsf::six_dof::RigidBodyMover::GetControlSurfaceHandleContainingString ( const std::string & aString) const

◆ GetControlSurfaceHandleContainingTwoStrings()

size_t wsf::six_dof::RigidBodyMover::GetControlSurfaceHandleContainingTwoStrings ( const std::string & aString1,
const std::string & aString2 ) const

◆ GetCurrentForwardThrust_lbs()

◆ GetCurrentThrust_lbs()

◆ GetFlapsPosition()

double wsf::six_dof::RigidBodyMover::GetFlapsPosition ( ) const
overridevirtual

Implements wsf::six_dof::Mover.

References GetAngleFlapLeft().

◆ GetFlightControls()

◆ GetInputHandle()

size_t wsf::six_dof::RigidBodyMover::GetInputHandle ( const std::string & aInputName) const
overridevirtual

Implements wsf::six_dof::Mover.

References mFlightControlsPtr.

◆ GetIntegrator()

const wsf::six_dof::Integrator * wsf::six_dof::RigidBodyMover::GetIntegrator ( ) const
overridevirtual

Implements wsf::six_dof::Mover.

References mIntegratorPtr.

◆ GetLandingGear()

RigidBodyLandingGear * wsf::six_dof::RigidBodyMover::GetLandingGear ( ) const
inline

◆ GetLandingGearInput()

◆ GetLandingGearPosition()

double wsf::six_dof::RigidBodyMover::GetLandingGearPosition ( ) const

References GetAngleLandingGear().

◆ GetLastBooleanInput()

bool wsf::six_dof::RigidBodyMover::GetLastBooleanInput ( size_t aHandle) const
overridevirtual

Implements wsf::six_dof::Mover.

References mFlightControlsPtr.

◆ GetListOfControlSurfaceNames()

std::vector< std::string > wsf::six_dof::RigidBodyMover::GetListOfControlSurfaceNames ( ) const

◆ GetMaximumPotentialThrust_lbs()

double wsf::six_dof::RigidBodyMover::GetMaximumPotentialThrust_lbs ( ) const
overridevirtual

◆ GetMinimumPotentialThrust_lbs()

double wsf::six_dof::RigidBodyMover::GetMinimumPotentialThrust_lbs ( ) const
overridevirtual

◆ GetNormalizedAileronLeft()

double wsf::six_dof::RigidBodyMover::GetNormalizedAileronLeft ( ) const
overridevirtual

◆ GetNormalizedAileronRight()

double wsf::six_dof::RigidBodyMover::GetNormalizedAileronRight ( ) const
overridevirtual

◆ GetNormalizedAngleOfControlSurface()

double wsf::six_dof::RigidBodyMover::GetNormalizedAngleOfControlSurface ( size_t aHandle) const

◆ GetNormalizedElevator()

double wsf::six_dof::RigidBodyMover::GetNormalizedElevator ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References GetNormalizedSurfaceAngle(), and mHandleElevator.

◆ GetNormalizedFlapLeft()

double wsf::six_dof::RigidBodyMover::GetNormalizedFlapLeft ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References GetNormalizedSurfaceAngle(), and mHandleFlapLeft.

◆ GetNormalizedFlapRight()

double wsf::six_dof::RigidBodyMover::GetNormalizedFlapRight ( ) const
overridevirtual

◆ GetNormalizedLandingGear()

double wsf::six_dof::RigidBodyMover::GetNormalizedLandingGear ( ) const
overridevirtual

◆ GetNormalizedLandingGearMainLeft()

double wsf::six_dof::RigidBodyMover::GetNormalizedLandingGearMainLeft ( ) const
overridevirtual

◆ GetNormalizedLandingGearMainRight()

double wsf::six_dof::RigidBodyMover::GetNormalizedLandingGearMainRight ( ) const
overridevirtual

◆ GetNormalizedLandingGearNose()

double wsf::six_dof::RigidBodyMover::GetNormalizedLandingGearNose ( ) const
overridevirtual

◆ GetNormalizedRudder()

double wsf::six_dof::RigidBodyMover::GetNormalizedRudder ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References GetNormalizedSurfaceAngle(), and mHandleRudder.

◆ GetNormalizedRudderLeft()

double wsf::six_dof::RigidBodyMover::GetNormalizedRudderLeft ( ) const
overridevirtual

◆ GetNormalizedRudderRight()

double wsf::six_dof::RigidBodyMover::GetNormalizedRudderRight ( ) const
overridevirtual

◆ GetNormalizedSpeedBrake()

double wsf::six_dof::RigidBodyMover::GetNormalizedSpeedBrake ( ) const
overridevirtual

◆ GetNormalizedSpoilerLeft()

double wsf::six_dof::RigidBodyMover::GetNormalizedSpoilerLeft ( ) const
overridevirtual

◆ GetNormalizedSpoilerRight()

double wsf::six_dof::RigidBodyMover::GetNormalizedSpoilerRight ( ) const
overridevirtual

◆ GetNormalizedStabilizerLeft()

double wsf::six_dof::RigidBodyMover::GetNormalizedStabilizerLeft ( ) const
overridevirtual

◆ GetNormalizedStabilizerRight()

double wsf::six_dof::RigidBodyMover::GetNormalizedStabilizerRight ( ) const
overridevirtual

◆ GetNormalizedSurfaceAngle()

◆ GetNoseWheelAngle()

double wsf::six_dof::RigidBodyMover::GetNoseWheelAngle ( ) const

◆ GetPilotManager()

PilotManager * wsf::six_dof::RigidBodyMover::GetPilotManager ( ) const
inlineoverridevirtual

◆ GetPitchMoment_ftlbs()

double wsf::six_dof::RigidBodyMover::GetPitchMoment_ftlbs ( ) const

◆ GetPitchMoment_nm()

double wsf::six_dof::RigidBodyMover::GetPitchMoment_nm ( ) const

◆ GetPropulsionSystem()

PropulsionSystem * wsf::six_dof::RigidBodyMover::GetPropulsionSystem ( ) const
inlineoverridevirtual

Implements wsf::six_dof::Mover.

References mPropulsionObjPtr.

◆ GetRefArea_sqft()

double wsf::six_dof::RigidBodyMover::GetRefArea_sqft ( ) const

References mActiveAeroObjPtr.

◆ GetRigidBodyPilotManager()

◆ GetRigidBodyPropulsionSystem()

RigidBodyPropulsionSystem * wsf::six_dof::RigidBodyMover::GetRigidBodyPropulsionSystem ( )
inline

◆ GetRigidBodyTestSupportObject()

RigidBodyMoverTestObject * wsf::six_dof::RigidBodyMover::GetRigidBodyTestSupportObject ( ) const
inline

References mTestSupportObjectPtr.

◆ GetRollMoment_ftlbs()

double wsf::six_dof::RigidBodyMover::GetRollMoment_ftlbs ( ) const

◆ GetRollMoment_nm()

double wsf::six_dof::RigidBodyMover::GetRollMoment_nm ( ) const

References GetRollMoment_ftlbs().

◆ GetRudderPosition()

double wsf::six_dof::RigidBodyMover::GetRudderPosition ( ) const

References GetAngleRudder().

◆ GetRudderRightInput()

◆ GetScriptClassName()

const char * wsf::six_dof::RigidBodyMover::GetScriptClassName ( ) const
inlineoverride

◆ GetSpeedBrakeInput()

◆ GetSpeedBrakePosition()

double wsf::six_dof::RigidBodyMover::GetSpeedBrakePosition ( ) const
overridevirtual

◆ GetSpeedBrakePosition_rad()

double wsf::six_dof::RigidBodyMover::GetSpeedBrakePosition_rad ( ) const

◆ GetSpoilerInput()

◆ GetSpoilersPosition()

double wsf::six_dof::RigidBodyMover::GetSpoilersPosition ( ) const
overridevirtual

Implements wsf::six_dof::Mover.

References GetAngleSpoilerLeft().

◆ GetStabilatorLeftPosition()

double wsf::six_dof::RigidBodyMover::GetStabilatorLeftPosition ( ) const

◆ GetStabilatorRightPosition()

double wsf::six_dof::RigidBodyMover::GetStabilatorRightPosition ( ) const

◆ GetStickBackInput()

◆ GetStickRightInput()

◆ GetTaxiSpeedMax()

◆ GetTaxiYawRateMax()

◆ GetTestSupportObject()

MoverTestObject * wsf::six_dof::RigidBodyMover::GetTestSupportObject ( ) const
inlineoverridevirtual

Implements wsf::six_dof::Mover.

References mTestSupportObjectPtr.

◆ GetThrottleInput()

◆ GetTotalFuelFlow_pph()

double wsf::six_dof::RigidBodyMover::GetTotalFuelFlow_pph ( ) const
overridevirtual

Implements wsf::six_dof::Mover.

References mPropulsionObjPtr.

◆ GetTotalVehicleFuelFlow_pph()

double wsf::six_dof::RigidBodyMover::GetTotalVehicleFuelFlow_pph ( ) const
overridevirtual

◆ GetTypeId()

int wsf::six_dof::RigidBodyMover::GetTypeId ( )
inlinestatic

◆ GetWeightOnNoseWheel()

bool wsf::six_dof::RigidBodyMover::GetWeightOnNoseWheel ( ) const

◆ GetWeightOnWheels()

bool wsf::six_dof::RigidBodyMover::GetWeightOnWheels ( ) const
overridevirtual

◆ GetWingArea_sqft()

double wsf::six_dof::RigidBodyMover::GetWingArea_sqft ( ) const

References mActiveAeroObjPtr.

◆ GetYawMoment_ftlbs()

double wsf::six_dof::RigidBodyMover::GetYawMoment_ftlbs ( ) const

◆ GetYawMoment_nm()

double wsf::six_dof::RigidBodyMover::GetYawMoment_nm ( ) const

References GetYawMoment_ftlbs().

◆ HasFlaps()

bool wsf::six_dof::RigidBodyMover::HasFlaps ( ) const

References mAeroPartList.

◆ HasLandingGear()

bool wsf::six_dof::RigidBodyMover::HasLandingGear ( ) const
inline

◆ Initialize()

bool wsf::six_dof::RigidBodyMover::Initialize ( double aSimTime)
overridevirtual

Perform phase 1 initialization. This is called by WsfPlatform::Initialize() during phase 1 initialization of the platform. The component should complete validation of input data that could not be done by ProcessInput, as well as any other functions to prepare for simulation use (subject to the next paragraph).

The order in which components are initialized is defined by GetComponentInitializationOrder. In general a component implementation of this method should not be dependent on the state of another component, i.e.: it should not assume that the other components Initialize() method has been called. If such a dependency exists one should use Initialize2() if possible, or specify a value GetComponentInitializationOrder to force things to initialize in a particular order.

Parameters
aSimTimeThe current simulation time.
Returns
true if successful or false if unsuccessful (bad input data, etc.)
Note
This method should NOT add any other components to the platform. This MUST be done in PreInitialize().

Reimplemented from wsf::six_dof::Mover.

References EnableDirectBraking(), wsf::six_dof::Mover::Initialize(), mLandingGearDownAtStart, mNWSEnabledAtStart, mParkingBrakeOnAtStart, mTaxiModeEnabledAtStart, SetEnableNWS(), SetLandingGearPositionAtStart(), SetParkingBrake(), and SetTaxiMode().

Referenced by operator=().

◆ InitializeDetails()

◆ LandingGearMainLeftValid()

bool wsf::six_dof::RigidBodyMover::LandingGearMainLeftValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleLandingGearMainLeft.

◆ LandingGearMainRightValid()

bool wsf::six_dof::RigidBodyMover::LandingGearMainRightValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleLandingGearMainRight.

◆ LandingGearNoseValid()

bool wsf::six_dof::RigidBodyMover::LandingGearNoseValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleLandingGearNose.

◆ LandingGearValid()

bool wsf::six_dof::RigidBodyMover::LandingGearValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleLandingGear.

◆ LowerLandingGear()

void wsf::six_dof::RigidBodyMover::LowerLandingGear ( )

◆ MaxPotentialManeuverGLoad()

double wsf::six_dof::RigidBodyMover::MaxPotentialManeuverGLoad ( ) const
overridevirtual

◆ ObjectPropulsionCalculations()

void wsf::six_dof::RigidBodyMover::ObjectPropulsionCalculations ( double aSimTime_sec,
double aDeltaT_sec,
double aAlt_ft,
double aDynPress_lbsqft,
double aStatPress_lbssqft,
double aSpeed_fps,
double aMach,
double aAlpha_rad,
double aBeta_rad,
ForceAndMomentsObject & aForceAndMoment,
double & aFuelBurnRate_pps,
double & aFuelBurned_lbs,
bool aUpdateData )
protected

◆ operator=()

RigidBodyMover & wsf::six_dof::RigidBodyMover::operator= ( const RigidBodyMover & other)
delete

◆ ProcessInput()

bool wsf::six_dof::RigidBodyMover::ProcessInput ( UtInput & aInput)
overridevirtual

Process input from a generic source.

Examine the current input command. If it is NOT one of the commands recognized by this class then it simply returns 'false'. If it is one of the commands recognized by this class then it processes the command and returns 'true'.

Parameters
aInputa reference to a UtInput object.
Returns
'true' if the command was one recognized by the class or 'false' if not.
Exceptions
UtInput::ExceptionBase(or an object derived from it) if the command was recognized but contains some sort of error.
Note
If a derived class does not recognize the command (i.e.: the return value is false) then it should call the base class ProcessInput method. This chain should continue until either the command is recognized or the top-level base class is encountered.

Reimplemented from wsf::six_dof::Mover.

References wsf::six_dof::Mover::CheckForFrequencyUnits(), wsf::six_dof::Mover::ConvertWsfRouteToSixDOF_Route(), DeriveFrom(), WsfScenario::FromInput(), WsfRouteTypes::Get(), wsf::six_dof::Mover::GetActivePilotObject(), WsfPlatformPart::GetScenario(), mAeroCoreObjPtr, mAeroPartList, wsf::six_dof::Mover::mDerivedFromName, wsf::six_dof::Mover::mEventPipeManager, mFlightControlsPtr, mLandingGearDownAtStart, mLandingGearPtr, mNWSEnabledAtStart, wsf::six_dof::Mover::Mover(), mParkingBrakeOnAtStart, mPilotManagerPtr, mPropulsionObjPtr, mTaxiModeEnabledAtStart, wsf::six_dof::Mover::mWsfRoutePtr, wsf::six_dof::Mover::ProcessInput(), wsf::six_dof::Mover::ProcessVehicleInput(), RigidBodyMover(), wsf::six_dof::Mover::SetName(), wsf::six_dof::PilotObject::SetPlannedRoute(), and wsf::six_dof::Mover::TypeManager.

Referenced by operator=().

◆ ReleaseDirectBraking()

void wsf::six_dof::RigidBodyMover::ReleaseDirectBraking ( )

◆ ReleaseWheelBrakes()

void wsf::six_dof::RigidBodyMover::ReleaseWheelBrakes ( )

◆ RemoveExternalForce()

void wsf::six_dof::RigidBodyMover::RemoveExternalForce ( )

◆ RestoreControlSurfaceAngles()

void wsf::six_dof::RigidBodyMover::RestoreControlSurfaceAngles ( std::vector< RigidBodyFlightControlSystem::ControlSurfaceElement * > & aControlsList,
std::vector< double > & aAngleList )

◆ RetractLandingGear()

void wsf::six_dof::RigidBodyMover::RetractLandingGear ( )

◆ RudderLeftValid()

bool wsf::six_dof::RigidBodyMover::RudderLeftValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleRudderLeft.

◆ RudderRightValid()

bool wsf::six_dof::RigidBodyMover::RudderRightValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleRudderRight.

◆ RudderValid()

bool wsf::six_dof::RigidBodyMover::RudderValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleRudder.

◆ SetActiveAeroObject() [1/2]

void wsf::six_dof::RigidBodyMover::SetActiveAeroObject ( const std::string & aName)
overridevirtual

◆ SetActiveAeroObject() [2/2]

void wsf::six_dof::RigidBodyMover::SetActiveAeroObject ( RigidBodyAeroCoreObject * aObject)

◆ SetCurrentWeight_lbs()

void wsf::six_dof::RigidBodyMover::SetCurrentWeight_lbs ( double aWeight_lbs)

◆ SetEnableNWS()

void wsf::six_dof::RigidBodyMover::SetEnableNWS ( bool aNWS_Enabled)

◆ SetFlapsPosition()

void wsf::six_dof::RigidBodyMover::SetFlapsPosition ( double aPosition)
overridevirtual

◆ SetLandingGearPositionAtStart()

void wsf::six_dof::RigidBodyMover::SetLandingGearPositionAtStart ( double aPosition)

◆ SetLastSimTime()

void wsf::six_dof::RigidBodyMover::SetLastSimTime ( double aSimTime_sec,
bool aIncludeSubobjects = false )
overridevirtual

◆ SetParkingBrake()

void wsf::six_dof::RigidBodyMover::SetParkingBrake ( )

◆ SetSpoilersPosition()

void wsf::six_dof::RigidBodyMover::SetSpoilersPosition ( double aPosition)
overridevirtual

◆ SetTaxiMode()

void wsf::six_dof::RigidBodyMover::SetTaxiMode ( bool aTaxiModeEnabled)

◆ SetTaxiRadius()

◆ SetTaxiSpeedMax()

◆ SetTaxiYawRateMax()

◆ SetThrustReverserPosition()

void wsf::six_dof::RigidBodyMover::SetThrustReverserPosition ( double aPosition)

◆ ShiftCurrentCg_ft()

void wsf::six_dof::RigidBodyMover::ShiftCurrentCg_ft ( UtVec3dX aDeltaCg_ft)

◆ SpeedBrakeValid()

bool wsf::six_dof::RigidBodyMover::SpeedBrakeValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleSpeedBrake.

◆ SpoilerLeftValid()

bool wsf::six_dof::RigidBodyMover::SpoilerLeftValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleSpoilerLeft.

◆ SpoilerRightValid()

bool wsf::six_dof::RigidBodyMover::SpoilerRightValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleSpoilerRight.

◆ StabilizerLeftValid()

bool wsf::six_dof::RigidBodyMover::StabilizerLeftValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleStabilizerLeft.

◆ StabilizerRightValid()

bool wsf::six_dof::RigidBodyMover::StabilizerRightValid ( ) const
overridevirtual

Reimplemented from wsf::six_dof::Mover.

References mHandleStabilizerRight.

◆ ThrottleValid()

◆ UpdateFlightControls()

void wsf::six_dof::RigidBodyMover::UpdateFlightControls ( int64_t aSimTime_nanosec)
overrideprotectedvirtual

Implements wsf::six_dof::Mover.

References mFlightControlsPtr.

◆ UpdateObjectPropulsion()

void wsf::six_dof::RigidBodyMover::UpdateObjectPropulsion ( double aSimTime_sec,
double aDeltaT_sec,
double aAlt_ft,
double aDynPress_lbsqft,
double aStatPress_lbssqft,
double aSpeed_fps,
double aMach,
double aAlpha_rad,
double aBeta_rad,
ForceAndMomentsObject & aForceAndMoment,
double & aFuelBurnRate_pps,
double & aFuelBurned_lbs )
protected

◆ UpdatePropulsionFuelBurn()

◆ UseSimpleYawDamper()

◆ ZeroKinematicsDuringTesting()

Member Data Documentation

◆ mActiveAeroObjPtr

◆ mAeroCoreObjPtr

ut::CloneablePtr<RigidBodyAeroCoreObject> wsf::six_dof::RigidBodyMover::mAeroCoreObjPtr {nullptr}
protected

◆ mAeroPartList

◆ mFlightControlsPtr

◆ mHandleAileronLeft

size_t wsf::six_dof::RigidBodyMover::mHandleAileronLeft = 0
protected

◆ mHandleAileronRight

size_t wsf::six_dof::RigidBodyMover::mHandleAileronRight = 0
protected

◆ mHandleElevator

size_t wsf::six_dof::RigidBodyMover::mHandleElevator = 0
protected

◆ mHandleFlapLeft

size_t wsf::six_dof::RigidBodyMover::mHandleFlapLeft = 0
protected

◆ mHandleFlapRight

size_t wsf::six_dof::RigidBodyMover::mHandleFlapRight = 0
protected

◆ mHandleLandingGear

size_t wsf::six_dof::RigidBodyMover::mHandleLandingGear = 0
protected

◆ mHandleLandingGearMainLeft

size_t wsf::six_dof::RigidBodyMover::mHandleLandingGearMainLeft = 0
protected

◆ mHandleLandingGearMainRight

size_t wsf::six_dof::RigidBodyMover::mHandleLandingGearMainRight = 0
protected

◆ mHandleLandingGearNose

size_t wsf::six_dof::RigidBodyMover::mHandleLandingGearNose = 0
protected

◆ mHandleRudder

size_t wsf::six_dof::RigidBodyMover::mHandleRudder = 0
protected

◆ mHandleRudderLeft

size_t wsf::six_dof::RigidBodyMover::mHandleRudderLeft = 0
protected

◆ mHandleRudderRight

size_t wsf::six_dof::RigidBodyMover::mHandleRudderRight = 0
protected

◆ mHandleSpeedBrake

size_t wsf::six_dof::RigidBodyMover::mHandleSpeedBrake = 0
protected

◆ mHandleSpoilerLeft

size_t wsf::six_dof::RigidBodyMover::mHandleSpoilerLeft = 0
protected

◆ mHandleSpoilerRight

size_t wsf::six_dof::RigidBodyMover::mHandleSpoilerRight = 0
protected

◆ mHandleStabilizerLeft

size_t wsf::six_dof::RigidBodyMover::mHandleStabilizerLeft = 0
protected

◆ mHandleStabilizerRight

size_t wsf::six_dof::RigidBodyMover::mHandleStabilizerRight = 0
protected

◆ mIntegratorPtr

ut::CloneablePtr<RigidBodyIntegrator> wsf::six_dof::RigidBodyMover::mIntegratorPtr {nullptr}
protected

◆ mLandingGearDownAtStart

bool wsf::six_dof::RigidBodyMover::mLandingGearDownAtStart = false
protected

◆ mLandingGearPtr

◆ mLastLandingGearLeverPosition

double wsf::six_dof::RigidBodyMover::mLastLandingGearLeverPosition = 0.0
protected

Referenced by RigidBodyMover().

◆ mLastNoseWheelSteeringRightPosition

double wsf::six_dof::RigidBodyMover::mLastNoseWheelSteeringRightPosition = 0.0
protected

Referenced by RigidBodyMover().

◆ mLastNWS_Enabled

bool wsf::six_dof::RigidBodyMover::mLastNWS_Enabled = false
protected

Referenced by RigidBodyMover().

◆ mLastThrustReverserLeverPosition

double wsf::six_dof::RigidBodyMover::mLastThrustReverserLeverPosition = 0.0
protected

Referenced by RigidBodyMover().

◆ mLastThrustVectorPitchUpPosition

double wsf::six_dof::RigidBodyMover::mLastThrustVectorPitchUpPosition = 0.0
protected

Referenced by RigidBodyMover().

◆ mLastThrustVectorRollRightPosition

double wsf::six_dof::RigidBodyMover::mLastThrustVectorRollRightPosition = 0.0
protected

Referenced by RigidBodyMover().

◆ mLastThrustVectorYawRightPosition

double wsf::six_dof::RigidBodyMover::mLastThrustVectorYawRightPosition = 0.0
protected

Referenced by RigidBodyMover().

◆ mLastWheelBrakeLeftPosition

double wsf::six_dof::RigidBodyMover::mLastWheelBrakeLeftPosition = 0.0
protected

Referenced by RigidBodyMover().

◆ mLastWheelBrakeRightPosition

double wsf::six_dof::RigidBodyMover::mLastWheelBrakeRightPosition = 0.0
protected

Referenced by RigidBodyMover().

◆ mNWSEnabledAtStart

bool wsf::six_dof::RigidBodyMover::mNWSEnabledAtStart = false
protected

◆ mParkingBrakeOnAtStart

bool wsf::six_dof::RigidBodyMover::mParkingBrakeOnAtStart = false
protected

◆ mPilotManagerPtr

◆ mPropulsionObjPtr

◆ mTaxiModeEnabledAtStart

bool wsf::six_dof::RigidBodyMover::mTaxiModeEnabledAtStart = false
protected

◆ mTestSupportObjectPtr

std::unique_ptr<RigidBodyMoverTestObject> wsf::six_dof::RigidBodyMover::mTestSupportObjectPtr {nullptr}
protected

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