|
WSF
|
#include <WsfSixDOF_Engine.hpp>


Public Member Functions | |
| Engine (ThrustProducerObject *aParentObject) | |
| virtual | ~Engine ()=default |
| Engine & | operator= (const Engine &other)=delete |
| virtual Engine * | Clone () const =0 |
| virtual bool | ProcessInput (UtInput &aInput, TypeManager *aTypeManager)=0 |
| virtual bool | Initialize (int64_t aSimTime_nanosec)=0 |
| virtual void | DeriveFrom (const Engine *aSrc) |
| ThrustProducerObject * | GetParentThrustProducer () |
| void | SetParentThrustProducer (ThrustProducerObject *aThrustProducerPtr) |
| double | GetThrust_lbs () const |
| virtual double | GetMaximumPotentialThrust_lbs (double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad)=0 |
| virtual double | GetMinimumPotentialThrust_lbs (double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad)=0 |
| void | CalculateThrust (double aDeltaT_sec, double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad, double &aForce_lbs, double &aFuelBurnRate_pps, double &aFuelBurned_lbs) |
| void | UpdateThrust (double aDeltaT_sec, double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad, double &aForce_lbs, double &aFuelBurnRate_pps, double &aFuelBurned_lbs) |
| bool | CheckCurrentFuelTank () |
| virtual bool | SetFuelTank (const std::string &aFuelTankName) |
| const FuelTank * | GetFuelTank () const |
| virtual double | GetFuelBurnRate_pph () const =0 |
| virtual double | GetThrottlePosition () const =0 |
| virtual void | SetThrottlePosition (double aThrottleLeverPosition)=0 |
| virtual void | Ignite (int64_t aIgniteTimeInFrame_nanosec)=0 |
| virtual void | Shutdown (int64_t aTerminateTime_nanosec=0)=0 |
| bool | EngineOperating () const |
| virtual bool | MayHaveEngineOperating () const |
| virtual bool | MayProduceEngineSmoke () const |
| virtual bool | MayContrail () const |
| bool | ProducingSmokeTrail () const |
| virtual bool | MayProduceSmokeTrail () const |
| bool | AfterburnerOn () const |
| bool | Contrailing () const |
| bool | EngineSmoking () const |
| void | MakeEngineSmoke (bool aSmoking) |
| virtual bool | AfterburnerIsPresent () const |
Protected Member Functions | |
| Engine (const Engine &aSrc) | |
| virtual void | CalculateThrust (double aDeltaT_sec, double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad, double &aForce_lbs, double &aFuelBurnRate_pps, double &aFuelBurned_lbs, bool aUpdateData)=0 |
Protected Attributes | |
| ThrustProducerObject * | mParentThrustProducerPtr = nullptr |
| std::string | mTypeOfEngine |
| FuelTank * | mCurrentFuelTank = nullptr |
| double | mCurrentThrust_lbs = 0.0 |
| bool | mShutdownInProgress = false |
| int64_t | mShutdownFraction_nanosec = 0 |
| int64_t | mIgniteTimeInFrame_nanosec = 0 |
| bool | mEngineOperating = false |
| bool | mContrailing = false |
| bool | mAfterburnerPresent = false |
| bool | mAfterburnerOn = false |
| bool | mProducingSmokeTrail = false |
| bool | mEngineDamageSmokeActivated = false |
| bool | mEngineSmoking = false |
|
explicit |
References mParentThrustProducerPtr.
Referenced by Clone(), DeriveFrom(), wsf::six_dof::JetEngine::DeriveFrom(), wsf::six_dof::RamjetEngine::DeriveFrom(), wsf::six_dof::RocketLiquidPropellantEngine::DeriveFrom(), wsf::six_dof::RocketSolidPropellantEngine::DeriveFrom(), Engine(), Initialize(), wsf::six_dof::JetEngine::JetEngine(), wsf::six_dof::JetEngine::JetEngine(), operator=(), wsf::six_dof::JetEngine::operator=(), wsf::six_dof::RamjetEngine::operator=(), wsf::six_dof::RocketLiquidPropellantEngine::operator=(), wsf::six_dof::RocketSolidPropellantEngine::operator=(), wsf::six_dof::RamjetEngine::RamjetEngine(), wsf::six_dof::RamjetEngine::RamjetEngine(), wsf::six_dof::RocketLiquidPropellantEngine::RocketLiquidPropellantEngine(), wsf::six_dof::RocketLiquidPropellantEngine::RocketLiquidPropellantEngine(), wsf::six_dof::RocketSolidPropellantEngine::RocketSolidPropellantEngine(), and wsf::six_dof::RocketSolidPropellantEngine::RocketSolidPropellantEngine().
|
virtualdefault |
|
explicitprotected |
References Engine(), mAfterburnerOn, mAfterburnerPresent, mContrailing, mCurrentFuelTank, mCurrentThrust_lbs, mEngineDamageSmokeActivated, mEngineOperating, mEngineSmoking, mIgniteTimeInFrame_nanosec, mParentThrustProducerPtr, mProducingSmokeTrail, mShutdownFraction_nanosec, mShutdownInProgress, and mTypeOfEngine.
|
inlinevirtual |
References mAfterburnerPresent.
Referenced by wsf::six_dof::JetEngine::Ignite().
|
inline |
References mAfterburnerOn.
| void wsf::six_dof::Engine::CalculateThrust | ( | double | aDeltaT_sec, |
| double | aAlt_ft, | ||
| double | aDynPress_lbsqft, | ||
| double | aStatPress_lbssqft, | ||
| double | aSpeed_fps, | ||
| double | aMach, | ||
| double | aAlpha_rad, | ||
| double | aBeta_rad, | ||
| double & | aForce_lbs, | ||
| double & | aFuelBurnRate_pps, | ||
| double & | aFuelBurned_lbs ) |
References CalculateThrust().
Referenced by CalculateThrust(), wsf::six_dof::RamjetEngine::GetMaximumPotentialThrust_lbs(), wsf::six_dof::RocketSolidPropellantEngine::GetMaximumPotentialThrust_lbs(), GetMinimumPotentialThrust_lbs(), wsf::six_dof::RamjetEngine::GetMinimumPotentialThrust_lbs(), and UpdateThrust().
|
protectedpure virtual |
| bool wsf::six_dof::Engine::CheckCurrentFuelTank | ( | ) |
References mCurrentFuelTank, and mParentThrustProducerPtr.
Referenced by GetMinimumPotentialThrust_lbs().
|
pure virtual |
Implemented in wsf::six_dof::JetEngine, wsf::six_dof::RamjetEngine, wsf::six_dof::RocketLiquidPropellantEngine, and wsf::six_dof::RocketSolidPropellantEngine.
References Engine().
Referenced by wsf::six_dof::MoverTestObject::GetTestEngineFromThrustProducer().
|
inline |
References mContrailing.
|
virtual |
Reimplemented in wsf::six_dof::JetEngine, wsf::six_dof::RamjetEngine, wsf::six_dof::RocketLiquidPropellantEngine, and wsf::six_dof::RocketSolidPropellantEngine.
References Engine(), and mTypeOfEngine.
Referenced by wsf::six_dof::JetEngine::DeriveFrom(), wsf::six_dof::RamjetEngine::DeriveFrom(), wsf::six_dof::RocketLiquidPropellantEngine::DeriveFrom(), wsf::six_dof::RocketSolidPropellantEngine::DeriveFrom(), and Initialize().
|
inline |
References mEngineOperating.
|
inline |
References mEngineSmoking.
|
pure virtual |
|
inline |
References mCurrentFuelTank.
Referenced by wsf::six_dof::MoverTestObject::GetTestEngineFromThrustProducer().
|
pure virtual |
|
pure virtual |
|
inline |
References mParentThrustProducerPtr.
|
pure virtual |
|
inline |
References mCurrentThrust_lbs.
|
pure virtual |
|
pure virtual |
Implemented in wsf::six_dof::JetEngine, wsf::six_dof::RamjetEngine, wsf::six_dof::RocketLiquidPropellantEngine, and wsf::six_dof::RocketSolidPropellantEngine.
References DeriveFrom(), and Engine().
|
inline |
References mEngineDamageSmokeActivated.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in wsf::six_dof::RocketLiquidPropellantEngine, and wsf::six_dof::RocketSolidPropellantEngine.
|
pure virtual |
|
inline |
References mProducingSmokeTrail.
|
virtual |
References mCurrentFuelTank, and mParentThrustProducerPtr.
Referenced by GetMinimumPotentialThrust_lbs().
|
inline |
References mParentThrustProducerPtr.
|
pure virtual |
|
pure virtual |
| void wsf::six_dof::Engine::UpdateThrust | ( | double | aDeltaT_sec, |
| double | aAlt_ft, | ||
| double | aDynPress_lbsqft, | ||
| double | aStatPress_lbssqft, | ||
| double | aSpeed_fps, | ||
| double | aMach, | ||
| double | aAlpha_rad, | ||
| double | aBeta_rad, | ||
| double & | aForce_lbs, | ||
| double & | aFuelBurnRate_pps, | ||
| double & | aFuelBurned_lbs ) |
References CalculateThrust().
Referenced by GetMinimumPotentialThrust_lbs().
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by wsf::six_dof::JetEngine::CalculateThrust(), wsf::six_dof::RamjetEngine::CalculateThrust(), wsf::six_dof::RocketLiquidPropellantEngine::CalculateThrust(), wsf::six_dof::RocketSolidPropellantEngine::CalculateThrust(), CheckCurrentFuelTank(), wsf::six_dof::RocketLiquidPropellantEngine::DeriveFrom(), wsf::six_dof::RocketSolidPropellantEngine::DeriveFrom(), Engine(), GetFuelTank(), SetFuelTank(), and wsf::six_dof::RocketSolidPropellantEngine::UpdatePropellantMass().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
Referenced by wsf::six_dof::JetEngine::CalculateThrust(), wsf::six_dof::RamjetEngine::CalculateThrust(), wsf::six_dof::RocketLiquidPropellantEngine::CalculateThrust(), wsf::six_dof::RocketSolidPropellantEngine::CalculateThrust(), CheckCurrentFuelTank(), Engine(), Engine(), GetParentThrustProducer(), SetFuelTank(), and SetParentThrustProducer().
|
protected |
|
protected |
|
protected |
|
protected |