]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/FGEngine.h
Fix stall widths for the "auxilliary" (reverse flow) stalls so they
[flightgear.git] / src / FDM / JSBSim / FGEngine.h
index e0d070dd508154b6543fb36f8b5010f0e35e3faa..0bd7776ef26785b59558ba783844bc1472999a9c 100644 (file)
@@ -107,13 +107,16 @@ CLASS DECLARATION
 class FGEngine : public FGJSBBase
 {
 public:
-  FGEngine(FGFDMExec* exec);
+  FGEngine(FGFDMExec* exec, int engine_number);
   virtual ~FGEngine();
 
   enum EngineType {etUnknown, etRocket, etPiston, etTurbine, etElectric};
 
   EngineType      GetType(void) { return Type; }
   virtual string  GetName(void) { return Name; }
+  string GetThrusterFileName(void) {return thrusterFileName;}
+  void SetEngineFileName(string eng) {engineFileName = eng;}
+  string GetEngineFileName(void) {return engineFileName;}
 
   // Engine controls
   virtual double  GetThrottleMin(void) { return MinThrottle; }
@@ -135,6 +138,7 @@ public:
   virtual void SetRunning(bool bb) { Running=bb; }
   virtual void SetName(string name) { Name = name; }
   virtual void AddFeedTank(int tkID);
+  virtual void SetFuelFreeze(bool f) { FuelFreeze = f; }
 
   virtual void SetStarter(bool s) { Starter = s; }
 
@@ -163,9 +167,11 @@ public:
 
   /// Sets engine placement information
   virtual void SetPlacement(double x, double y, double z, double pitch, double yaw);
-
-  /// Sets the engine number
-  virtual void SetEngineNumber(int nn) {EngineNumber = nn;}
+  double GetPlacementX(void) const {return X;}
+  double GetPlacementY(void) const {return Y;}
+  double GetPlacementZ(void) const {return Z;}
+  double GetPitch(void) const {return EnginePitch;}
+  double GetYaw(void) const {return EngineYaw;}
 
   virtual double GetPowerAvailable(void) {return 0.0;};
 
@@ -178,12 +184,17 @@ public:
   bool LoadThruster(FGConfigFile* AC_cfg);
   FGThruster* GetThruster(void) {return Thruster;}
 
-  virtual string GetEngineLabels(void) = 0;
-  virtual string GetEngineValues(void) = 0;
+  virtual string GetEngineLabels(string delimeter) = 0;
+  virtual string GetEngineValues(string delimeter) = 0;
+  int GetNumSourceTanks(void) {return SourceTanks.size();}
+  int GetSourceTank(int t) {return SourceTanks[t];}
 
 protected:
   FGPropertyManager* PropertyManager;
   string Name;
+  string thrusterFileName;
+  string engineFileName;
+  const int   EngineNumber;
   EngineType Type;
   double X, Y, Z;
   double EnginePitch;
@@ -199,12 +210,12 @@ protected:
   double FuelNeed;
   double OxidizerNeed;
   double PctPower;
-  int   EngineNumber;
   bool  Starter;
   bool  Starved;
   bool  Running;
   bool  Cranking;
   bool  TrimMode;
+  bool  FuelFreeze;
 
   double FuelFlow_gph;
   double FuelFlow_pph;