WSF
wsf::six_dof::ThrustProducerObject Class Referenceabstract

#include <WsfSixDOF_ThrustProducerObject.hpp>

Inheritance diagram for wsf::six_dof::ThrustProducerObject:
Collaboration diagram for wsf::six_dof::ThrustProducerObject:

Public Member Functions

 ThrustProducerObject ()=default
 ~ThrustProducerObject ()=default
ThrustProducerObjectoperator= (const ThrustProducerObject &other)=delete
virtual ThrustProducerObjectClone () const =0
void SetParentPropulsionSystem (PropulsionSystem *aParent)
PropulsionSystemGetParentPropulsionSystem ()
void SetEngine (std::unique_ptr< Engine > aEngine)
const EngineGetEngine () const
virtual bool ProcessInput (UtInput &aInput, TypeManager *aTypeManager)
bool Initialize (int64_t aSimTime_nanosec)
std::string GetBaseName ()
void Ignite (int64_t aIgniteTimeInFrame_nanosec)
void Shutdown (int64_t aTerminateTime_nanosec=0)
virtual void SetThrustReferenceOffsetAttitude (const UtVec3dX &aReferenceLocation_ft, const UtVec3dX &aThrustYPR_rad)=0
double GetMaximumPotentialThrust_lbs (double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad)
double GetMinimumPotentialThrust_lbs (double aAlt_ft, double aDynPress_lbsqft, double aStatPress_lbssqft, double aSpeed_fps, double aMach, double aAlpha_rad, double aBeta_rad)
double GetInoperatingDragArea_ft2 ()
virtual double GetThrottleMilSetting ()=0
virtual double GetThrottleAbSetting ()=0
void GetThrustLocation (UtVec3dX &aThrustLocation_ft) const
void GetReferenceLocation (UtVec3dX &aReferenceLocation_ft) const
void GetThrustInstalledAnglesYPR (UtVec3dX &aThrustYPR_rad) const
double GetThrottlePosition () const
void SetThrottlePosition (double aThrottleLeverPosition)
void SetThrustVectoringEnabled (bool aThrustVectoringEnabled)
bool ThrustVectoringEnabled () const
double GetFuelBurnRate_pph () const
double GetThrust_lbs () const
double GetForwardThrust_lbs () const
virtual void GetCurrentThrustVectorDirection (UtVec3dX &aDirection) const =0
virtual bool SetFuelTank (const std::string &aFuelTankName)
bool EngineOperating () const
bool MayHaveEngineOperating () const
bool MayProduceEngineSmoke () const
bool MayContrail () const
bool ProducingSmokeTrail () const
bool MayProduceSmokeTrail () const
bool AfterburnerOn () const
bool Contrailing () const
bool EngineSmoking () const
void MakeEngineSmoke (bool aSmoking)
virtual bool AfterburnerIsPresent () const
Public Member Functions inherited from wsf::six_dof::Object
 Object ()=default
virtual ~Object ()=default
virtual std::string GetName () const
virtual void SetName (const std::string &aName)
virtual MoverGetParentVehicle () const
virtual void SetParentVehicle (Mover *aParentVehicle)

Protected Member Functions

 ThrustProducerObject (const ThrustProducerObject &aSrc)
virtual void DeriveFrom (const ThrustProducerObject *aSrc)
bool ProcessInputType (UtInput &aInput, TypeManager *aTypeManager)
Protected Member Functions inherited from wsf::six_dof::Object
 Object (const Object &)=default

Protected Attributes

std::string mBaseName
PropulsionSystemmParentPropulsionSystemPtr = nullptr
UtCloneablePtr< EnginemEnginePtr {nullptr}
UtVec3dX mNominalThrustVectorDirection = UtVec3dX::cUNIT_FORWARD
UtVec3dX mThrustInstalledAnglesYPR_rad
UtVec3dX mReferenceLocation_ft
UtVec3dX mThrustLocation_ft
double mThrustOffset_ft = 0.0
double mInOpRefArea_ft2 = 1.0
bool mThrustVectoringEnabled = false
Protected Attributes inherited from wsf::six_dof::Object
std::string mObjName = ""
MovermParentVehicle = nullptr

Constructor & Destructor Documentation

◆ ThrustProducerObject() [1/2]

◆ ~ThrustProducerObject()

wsf::six_dof::ThrustProducerObject::~ThrustProducerObject ( )
default

◆ ThrustProducerObject() [2/2]

Member Function Documentation

◆ AfterburnerIsPresent()

virtual bool wsf::six_dof::ThrustProducerObject::AfterburnerIsPresent ( ) const
inlinevirtual

◆ AfterburnerOn()

bool wsf::six_dof::ThrustProducerObject::AfterburnerOn ( ) const
inline

◆ Clone()

◆ Contrailing()

bool wsf::six_dof::ThrustProducerObject::Contrailing ( ) const
inline

References mEnginePtr.

◆ DeriveFrom()

◆ EngineOperating()

bool wsf::six_dof::ThrustProducerObject::EngineOperating ( ) const
inline

References mEnginePtr.

◆ EngineSmoking()

bool wsf::six_dof::ThrustProducerObject::EngineSmoking ( ) const
inline

References mEnginePtr.

◆ GetBaseName()

std::string wsf::six_dof::ThrustProducerObject::GetBaseName ( )
inline

References mBaseName.

◆ GetCurrentThrustVectorDirection()

virtual void wsf::six_dof::ThrustProducerObject::GetCurrentThrustVectorDirection ( UtVec3dX & aDirection) const
pure virtual

◆ GetEngine()

◆ GetForwardThrust_lbs()

double wsf::six_dof::ThrustProducerObject::GetForwardThrust_lbs ( ) const

◆ GetFuelBurnRate_pph()

double wsf::six_dof::ThrustProducerObject::GetFuelBurnRate_pph ( ) const
inline

◆ GetInoperatingDragArea_ft2()

double wsf::six_dof::ThrustProducerObject::GetInoperatingDragArea_ft2 ( )

◆ GetMaximumPotentialThrust_lbs()

double wsf::six_dof::ThrustProducerObject::GetMaximumPotentialThrust_lbs ( double aAlt_ft,
double aDynPress_lbsqft,
double aStatPress_lbssqft,
double aSpeed_fps,
double aMach,
double aAlpha_rad,
double aBeta_rad )

References mEnginePtr.

Referenced by SetThrustReferenceOffsetAttitude().

◆ GetMinimumPotentialThrust_lbs()

double wsf::six_dof::ThrustProducerObject::GetMinimumPotentialThrust_lbs ( double aAlt_ft,
double aDynPress_lbsqft,
double aStatPress_lbssqft,
double aSpeed_fps,
double aMach,
double aAlpha_rad,
double aBeta_rad )

References mEnginePtr.

Referenced by SetThrustReferenceOffsetAttitude().

◆ GetParentPropulsionSystem()

PropulsionSystem * wsf::six_dof::ThrustProducerObject::GetParentPropulsionSystem ( )
inline

◆ GetReferenceLocation()

void wsf::six_dof::ThrustProducerObject::GetReferenceLocation ( UtVec3dX & aReferenceLocation_ft) const
inline

References mReferenceLocation_ft.

◆ GetThrottleAbSetting()

virtual double wsf::six_dof::ThrustProducerObject::GetThrottleAbSetting ( )
pure virtual

◆ GetThrottleMilSetting()

virtual double wsf::six_dof::ThrustProducerObject::GetThrottleMilSetting ( )
pure virtual

◆ GetThrottlePosition()

double wsf::six_dof::ThrustProducerObject::GetThrottlePosition ( ) const
inline

References mEnginePtr.

◆ GetThrust_lbs()

double wsf::six_dof::ThrustProducerObject::GetThrust_lbs ( ) const
inline

References mEnginePtr.

Referenced by GetForwardThrust_lbs().

◆ GetThrustInstalledAnglesYPR()

void wsf::six_dof::ThrustProducerObject::GetThrustInstalledAnglesYPR ( UtVec3dX & aThrustYPR_rad) const
inline

◆ GetThrustLocation()

void wsf::six_dof::ThrustProducerObject::GetThrustLocation ( UtVec3dX & aThrustLocation_ft) const
inline

References mThrustLocation_ft.

◆ Ignite()

void wsf::six_dof::ThrustProducerObject::Ignite ( int64_t aIgniteTimeInFrame_nanosec)
inline

◆ Initialize()

bool wsf::six_dof::ThrustProducerObject::Initialize ( int64_t aSimTime_nanosec)
inline

References mEnginePtr.

◆ MakeEngineSmoke()

void wsf::six_dof::ThrustProducerObject::MakeEngineSmoke ( bool aSmoking)
inline

◆ MayContrail()

bool wsf::six_dof::ThrustProducerObject::MayContrail ( ) const
inline

References mEnginePtr.

◆ MayHaveEngineOperating()

bool wsf::six_dof::ThrustProducerObject::MayHaveEngineOperating ( ) const
inline

References mEnginePtr.

◆ MayProduceEngineSmoke()

bool wsf::six_dof::ThrustProducerObject::MayProduceEngineSmoke ( ) const
inline

References mEnginePtr.

◆ MayProduceSmokeTrail()

bool wsf::six_dof::ThrustProducerObject::MayProduceSmokeTrail ( ) const
inline

References mEnginePtr.

◆ operator=()

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

◆ ProcessInput()

◆ ProcessInputType()

◆ ProducingSmokeTrail()

bool wsf::six_dof::ThrustProducerObject::ProducingSmokeTrail ( ) const
inline

References mEnginePtr.

◆ SetEngine()

void wsf::six_dof::ThrustProducerObject::SetEngine ( std::unique_ptr< Engine > aEngine)
inline

References mEnginePtr.

Referenced by ProcessInput().

◆ SetFuelTank()

bool wsf::six_dof::ThrustProducerObject::SetFuelTank ( const std::string & aFuelTankName)
virtual

References mEnginePtr.

Referenced by GetCurrentThrustVectorDirection().

◆ SetParentPropulsionSystem()

void wsf::six_dof::ThrustProducerObject::SetParentPropulsionSystem ( PropulsionSystem * aParent)
inline

◆ SetThrottlePosition()

◆ SetThrustReferenceOffsetAttitude()

virtual void wsf::six_dof::ThrustProducerObject::SetThrustReferenceOffsetAttitude ( const UtVec3dX & aReferenceLocation_ft,
const UtVec3dX & aThrustYPR_rad )
pure virtual

◆ SetThrustVectoringEnabled()

void wsf::six_dof::ThrustProducerObject::SetThrustVectoringEnabled ( bool aThrustVectoringEnabled)
inline

◆ Shutdown()

void wsf::six_dof::ThrustProducerObject::Shutdown ( int64_t aTerminateTime_nanosec = 0)
inline

◆ ThrustVectoringEnabled()

bool wsf::six_dof::ThrustProducerObject::ThrustVectoringEnabled ( ) const
inline

Member Data Documentation

◆ mBaseName

◆ mEnginePtr

◆ mInOpRefArea_ft2

double wsf::six_dof::ThrustProducerObject::mInOpRefArea_ft2 = 1.0
protected

◆ mNominalThrustVectorDirection

◆ mParentPropulsionSystemPtr

PropulsionSystem* wsf::six_dof::ThrustProducerObject::mParentPropulsionSystemPtr = nullptr
protected

◆ mReferenceLocation_ft

◆ mThrustInstalledAnglesYPR_rad

◆ mThrustLocation_ft

◆ mThrustOffset_ft

◆ mThrustVectoringEnabled


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