WSF
WsfFuelingOperation Class Reference

#include <WsfFuelingOperation.hpp>

Classes

struct  SupplyPoint

Public Types

enum  MethodType { cNO_METHOD = 0 , cBOOM = 1 , cHOSE = 2 }
 This enumeration describes the permitted methods of supplying fuel. More...
enum  Preference { cNO_PREFERENCE = 0 , cCHOOSE_CENTER = 1 , cCHOOSE_WING = 2 }
 This enumeration describes the preferred location to supply fuel from (if and when ambiguous). More...
enum  StationType { cNO_STATION = 0 , cLEFT_WING = 1 , cCENTERLINE = 2 , cRIGHT_WING = 3 }
 This enumeration describes the permitted stations for supplying fuel. More...
using SupplyPoints = std::vector<SupplyPoint>
using SupplyPointIter = std::vector<SupplyPoint>::iterator
using SupplyPointConstIter = std::vector<SupplyPoint>::const_iterator

Public Member Functions

 WsfFuelingOperation ()
 WsfFuelingOperation (double aSimTime, WsfTankedFuel *aSupplierPtr, WsfTankedFuel *aReceiverPtr, MethodType aMethod, StationType aStation, double aInitRate)
 WsfFuelingOperation (const WsfFuelingOperation &aSrc)=delete
virtual ~WsfFuelingOperation ()
virtual double Update (double aSimTime, bool &aDisconnected)
double GetTransferRate () const
 Supplies the transfer rate of the operation in progress.
double FuelTransferred () const
 Supplies the cumulative fuel transferred during the operation in progress.
double FuelingTime () const
 Supplies the cumulative elapsed time of the operation in progress.
double LastUpdate () const
 Supplies the last Update time of the operation in progress.
WsfTankedFuelSupplyTankPtr () const
 Supplies a pointer to the fuel tank supplying the fuel.
WsfTankedFuelReceiveTankPtr () const
 Supplies a pointer to the fuel tank receiving the fuel.
MethodType GetMethod () const
 Supplies the enumeration describing the fuel supply method (cHOSE, cBOOM).
std::string GetMethodName () const
 Supplies a string describing the fuel supply method (hose, boom, NONE).
std::string GetStationName () const
 Supplies a string describing the fuel supply station (left, center, right, NONE).

Static Public Member Functions

static bool AllowSimultWingAndCenterlineFueling ()
static void SetAllowSimultWingAndCenterlineFueling (bool aValue)
static bool AllowSimultBoomAndHoseFueling ()
static void SetAllowSimultBoomAndHoseFueling (bool aValue)

Protected Member Functions

virtual double CalcInitXferRate (double aSimTime)
virtual double CalcRunXferRate (double aSimTime)

Detailed Description

WsfPlatform -to- WsfPlatform refueling operation. This class models tanking operations, from the "Tanker" (supplier) perspective, pushing fuel into a "Receiver" (client) fuel tank. Transfer rate is assumed constant in this base class, but may be overridden to be variable in a derived class. The periodic Update() call is normally done by the Tanker, but may be called by the Receiver (if and when a voluntary disconnect is desired). The class will not concern itself with the physical proximity of the two platforms transferring fuel, which must be managed elsewhere. To conserve run time, if the transfer rate is constant, there are two virtual methods (null in the base class) that calculate a fuel transfer rate, one used only at construct time, and another during run time.

Member Typedef Documentation

◆ SupplyPointConstIter

using WsfFuelingOperation::SupplyPointConstIter = std::vector<SupplyPoint>::const_iterator

◆ SupplyPointIter

using WsfFuelingOperation::SupplyPointIter = std::vector<SupplyPoint>::iterator

◆ SupplyPoints

Member Enumeration Documentation

◆ MethodType

This enumeration describes the permitted methods of supplying fuel.

Enumerator
cNO_METHOD 

No fuel may be transferred.

cBOOM 

An extensible, controllable boom.

cHOSE 

A flexible trailing hose and drogue.

◆ Preference

This enumeration describes the preferred location to supply fuel from (if and when ambiguous).

Enumerator
cNO_PREFERENCE 

No station preference has been given.

cCHOOSE_CENTER 

When there is a choice, fuel from the centerline.

cCHOOSE_WING 

When there is a choice, fuel from the wing stations.

◆ StationType

This enumeration describes the permitted stations for supplying fuel.

Enumerator
cNO_STATION 

Does not indicate a valid fuel supply station.

cLEFT_WING 

Left wing fuel supply station.

cCENTERLINE 

Centerline fueling station.

cRIGHT_WING 

Right wing fueling station.

Constructor & Destructor Documentation

◆ WsfFuelingOperation() [1/3]

WsfFuelingOperation::WsfFuelingOperation ( )

References cNO_METHOD, and cNO_STATION.

Referenced by WsfFuelingOperation().

◆ WsfFuelingOperation() [2/3]

WsfFuelingOperation::WsfFuelingOperation ( double aSimTime,
WsfTankedFuel * aSupplierPtr,
WsfTankedFuel * aReceiverPtr,
MethodType aMethod,
StationType aStation,
double aInitRate )

◆ WsfFuelingOperation() [3/3]

WsfFuelingOperation::WsfFuelingOperation ( const WsfFuelingOperation & aSrc)
delete

References WsfFuelingOperation().

◆ ~WsfFuelingOperation()

WsfFuelingOperation::~WsfFuelingOperation ( )
virtual

Member Function Documentation

◆ AllowSimultBoomAndHoseFueling()

bool WsfFuelingOperation::AllowSimultBoomAndHoseFueling ( )
static

This boolean specifies whether fuel supply operations from refueling booms (if any) and hose-and-drogue (if any) are permitted simultaneously on the same aircraft. The default is unrestricted operations, allowing the individual aircraft settings to prevail.

Referenced by WsfTankedFuel::FindStationFor().

◆ AllowSimultWingAndCenterlineFueling()

bool WsfFuelingOperation::AllowSimultWingAndCenterlineFueling ( )
static

This boolean specifies whether fuel supply operations from wing fuel points (if any) and the centerline station (if any) are permitted simultaneously on the same aircraft. The default is unrestricted operations, allowing the individual aircraft settings to prevail.

Referenced by WsfTankedFuel::FindStationFor().

◆ CalcInitXferRate()

virtual double WsfFuelingOperation::CalcInitXferRate ( double aSimTime)
inlineprotectedvirtual

◆ CalcRunXferRate()

virtual double WsfFuelingOperation::CalcRunXferRate ( double aSimTime)
inlineprotectedvirtual

Referenced by Update().

◆ FuelingTime()

double WsfFuelingOperation::FuelingTime ( ) const
inline

Supplies the cumulative elapsed time of the operation in progress.

◆ FuelTransferred()

double WsfFuelingOperation::FuelTransferred ( ) const
inline

Supplies the cumulative fuel transferred during the operation in progress.

◆ GetMethod()

MethodType WsfFuelingOperation::GetMethod ( ) const
inline

Supplies the enumeration describing the fuel supply method (cHOSE, cBOOM).

◆ GetMethodName()

std::string WsfFuelingOperation::GetMethodName ( ) const

Supplies a string describing the fuel supply method (hose, boom, NONE).

References cBOOM, and cHOSE.

◆ GetStationName()

std::string WsfFuelingOperation::GetStationName ( ) const

Supplies a string describing the fuel supply station (left, center, right, NONE).

References cCENTERLINE, cLEFT_WING, and cRIGHT_WING.

◆ GetTransferRate()

double WsfFuelingOperation::GetTransferRate ( ) const
inline

Supplies the transfer rate of the operation in progress.

◆ LastUpdate()

double WsfFuelingOperation::LastUpdate ( ) const
inline

Supplies the last Update time of the operation in progress.

◆ ReceiveTankPtr()

WsfTankedFuel * WsfFuelingOperation::ReceiveTankPtr ( ) const
inline

Supplies a pointer to the fuel tank receiving the fuel.

◆ SetAllowSimultBoomAndHoseFueling()

void WsfFuelingOperation::SetAllowSimultBoomAndHoseFueling ( bool aValue)
static

◆ SetAllowSimultWingAndCenterlineFueling()

void WsfFuelingOperation::SetAllowSimultWingAndCenterlineFueling ( bool aValue)
static

◆ SupplyTankPtr()

WsfTankedFuel * WsfFuelingOperation::SupplyTankPtr ( ) const
inline

Supplies a pointer to the fuel tank supplying the fuel.

◆ Update()

double WsfFuelingOperation::Update ( double aSimTime,
bool & aDisconnected )
virtual

This virtual method propagates a refueling transfer forward in time. The input/output parameter aDisconnect serves two purposes, and should be initially set false, unless a forced disconnect is desired, in which it should be set true. When refueling is terminated, the aDisconnect parameter will be internally set true.

Parameters
aSimTimeCurrent simulated time.
aDisconnectedSet true if disconnected.
Returns
Returns the Mass quantity of fuel offloaded during the Update.

References CalcRunXferRate().


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