45#include "propulsion/FGEngine.h"
46#include "math/FGMatrix33.h"
115 bool Run(
bool Holding)
override;
117 bool InitModel(
void)
override;
123 bool Load(
Element* el)
override;
133 assert(index < Engines.size());
134 return Engines[index];
145 assert(index < Tanks.size());
150 bool GetSteadyState(
void);
153 void InitRunning(
int n);
154 void SetEngineRunning(
int index);
156 std::string GetPropulsionStrings(
const std::string& delimiter)
const;
157 std::string GetPropulsionValues(
const std::string& delimiter)
const;
158 std::string GetPropulsionTankReport();
161 double GetForces(
int n)
const {
return vForces(n);}
162 const FGColumnVector3& GetMoments(
void)
const {
return vMoments;}
163 double GetMoments(
int n)
const {
return vMoments(n);}
165 double Transfer(
int source,
int target,
double amount);
166 void DoRefuel(
double time_slice);
167 void DumpFuel(
double time_slice);
169 const FGColumnVector3& GetTanksMoment(
void);
170 double GetTanksWeight(
void)
const;
172 SGPath FindFullPathName(
const SGPath& path)
const override;
173 inline int GetActiveEngine(
void)
const {
return ActiveEngine;}
174 inline bool GetFuelFreeze(
void)
const {
return FuelFreeze;}
176 void SetMagnetos(
int setting);
177 void SetStarter(
int setting);
178 int GetStarter(
void)
const;
179 void SetCutoff(
int setting=0);
180 int GetCutoff(
void)
const;
181 void SetActiveEngine(
int engine);
182 void SetFuelFreeze(
bool f);
183 const FGMatrix33& CalculateTankInertias(
void);
185 struct FGEngine::Inputs in;
188 std::vector<std::shared_ptr<FGEngine>> Engines;
189 std::vector<std::shared_ptr<FGTank>> Tanks;
191 FGColumnVector3 vForces;
192 FGColumnVector3 vMoments;
193 FGColumnVector3 vTankXYZ;
194 FGColumnVector3 vXYZtank_arm;
199 double TotalFuelQuantity;
200 double TotalOxidizerQuantity;
203 void ConsumeFuel(FGEngine* engine);
208 void Debug(
int from)
override;
This class implements a 3 element column vector.
Encapsulates the JSBSim simulation executive.
Base class for all scheduled JSBSim models.
Propulsion management class.
auto GetEngine(unsigned int index) const
Retrieves an engine object pointer from the list of engines.
size_t GetNumEngines(void) const
Retrieves the number of engines defined for the aircraft.
auto GetTank(unsigned int index) const
Retrieves a tank object pointer from the list of tanks.
size_t GetNumTanks(void) const
Retrieves the number of tanks defined for the aircraft.
Main namespace for the JSBSim Flight Dynamics Model.