#include <iosfwd>
#include "FGModel.h"
+#include "propulsion/FGEngine.h"
#include "math/FGMatrix33.h"
#include "input_output/FGXMLFileRead.h"
DEFINITIONS
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
-#define ID_PROPULSION "$Id: FGPropulsion.h,v 1.27 2011/05/20 03:18:36 jberndt Exp $"
+#define ID_PROPULSION "$Id: FGPropulsion.h,v 1.31 2011/10/31 14:54:41 bcoconni Exp $"
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
FORWARD DECLARATIONS
@endcode
@author Jon S. Berndt
- @version $Id: FGPropulsion.h,v 1.27 2011/05/20 03:18:36 jberndt Exp $
+ @version $Id: FGPropulsion.h,v 1.31 2011/10/31 14:54:41 bcoconni Exp $
@see
FGEngine
FGTank
std::string GetPropulsionStrings(const std::string& delimiter) const;
std::string GetPropulsionValues(const std::string& delimiter) const;
+ std::string GetPropulsionTankReport();
const FGColumnVector3& GetForces(void) const {return vForces; }
double GetForces(int n) const { return vForces(n);}
void DoRefuel(double time_slice);
void DumpFuel(double time_slice);
- FGColumnVector3& GetTanksMoment(void);
- double GetTanksWeight(void);
+ const FGColumnVector3& GetTanksMoment(void);
+ double GetTanksWeight(void) const;
std::ifstream* FindEngineFile(const std::string& filename);
std::string FindEngineFullPathname(const std::string& engine_filename);
inline int GetActiveEngine(void) const {return ActiveEngine;}
- inline bool GetFuelFreeze(void) {return fuel_freeze;}
+ inline bool GetFuelFreeze(void) const {return FuelFreeze;}
double GetTotalFuelQuantity(void) const {return TotalFuelQuantity;}
void SetMagnetos(int setting);
void SetCutoff(int setting=0);
void SetActiveEngine(int engine);
void SetFuelFreeze(bool f);
- FGMatrix33& CalculateTankInertias(void);
+ const FGMatrix33& CalculateTankInertias(void);
+
+ struct FGEngine::Inputs in;
private:
std::vector <FGEngine*> Engines;
FGMatrix33 tankJ;
bool refuel;
bool dump;
- bool fuel_freeze;
+ bool FuelFreeze;
double TotalFuelQuantity;
double DumpRate;
bool IsBound;
bool HaveTurboPropEngine;
bool HaveRocketEngine;
bool HaveElectricEngine;
+ void ConsumeFuel(FGEngine* engine);
int InitializedEngines;
bool HasInitializedEngines;