|
WSF
|
#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. | |
| WsfTankedFuel * | SupplyTankPtr () const |
| Supplies a pointer to the fuel tank supplying the fuel. | |
| WsfTankedFuel * | ReceiveTankPtr () 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) |
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.
| using WsfFuelingOperation::SupplyPointConstIter = std::vector<SupplyPoint>::const_iterator |
| using WsfFuelingOperation::SupplyPointIter = std::vector<SupplyPoint>::iterator |
| using WsfFuelingOperation::SupplyPoints = std::vector<SupplyPoint> |
| WsfFuelingOperation::WsfFuelingOperation | ( | ) |
References cNO_METHOD, and cNO_STATION.
Referenced by WsfFuelingOperation().
| WsfFuelingOperation::WsfFuelingOperation | ( | double | aSimTime, |
| WsfTankedFuel * | aSupplierPtr, | ||
| WsfTankedFuel * | aReceiverPtr, | ||
| MethodType | aMethod, | ||
| StationType | aStation, | ||
| double | aInitRate ) |
References WsfObserver::TankingEvent().
|
delete |
References WsfFuelingOperation().
|
virtual |
|
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().
|
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().
|
inlineprotectedvirtual |
|
inlineprotectedvirtual |
Referenced by Update().
|
inline |
Supplies the cumulative elapsed time of the operation in progress.
|
inline |
Supplies the cumulative fuel transferred during the operation in progress.
|
inline |
Supplies the enumeration describing the fuel supply method (cHOSE, cBOOM).
| std::string WsfFuelingOperation::GetMethodName | ( | ) | const |
| std::string WsfFuelingOperation::GetStationName | ( | ) | const |
Supplies a string describing the fuel supply station (left, center, right, NONE).
References cCENTERLINE, cLEFT_WING, and cRIGHT_WING.
|
inline |
Supplies the transfer rate of the operation in progress.
|
inline |
Supplies the last Update time of the operation in progress.
|
inline |
Supplies a pointer to the fuel tank receiving the fuel.
|
static |
|
static |
|
inline |
Supplies a pointer to the fuel tank supplying the fuel.
|
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.
| aSimTime | Current simulated time. |
| aDisconnected | Set true if disconnected. |
References CalcRunXferRate().