1 /*******************************************************************************
7 ------------- Copyright (C) 1999 Jon S. Berndt (jsb@hal-pc.org) -------------
9 This program is free software; you can redistribute it and/or modify it under
10 the terms of the GNU General Public License as published by the Free Software
11 Foundation; either version 2 of the License, or (at your option) any later
14 This program is distributed in the hope that it will be useful, but WITHOUT
15 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
16 FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
19 You should have received a copy of the GNU General Public License along with
20 this program; if not, write to the Free Software Foundation, Inc., 59 Temple
21 Place - Suite 330, Boston, MA 02111-1307, USA.
23 Further information about the GNU General Public License can also be found on
24 the world wide web at http://www.gnu.org.
26 FUNCTIONAL DESCRIPTION
27 --------------------------------------------------------------------------------
29 Based on Flightgear code, which is based on LaRCSim. This class simulates
33 --------------------------------------------------------------------------------
36 ********************************************************************************
38 *******************************************************************************/
43 /*******************************************************************************
45 *******************************************************************************/
48 # include <Include/compiler.h>
51 # ifdef FG_HAVE_NATIVE_SGI_COMPILERS
52 FG_USING_NAMESPACE(std);
58 /*******************************************************************************
60 *******************************************************************************/
62 /*******************************************************************************
64 *******************************************************************************/
80 FGEngine(FGFDMExec*, string, string, int);
83 enum EngineType {etUnknown, etRocket, etPiston, etTurboProp, etTurboJet};
85 float GetThrottle(void) {return Throttle;}
86 float GetThrust(void) {return Thrust;}
87 bool GetStarved(void) {return Starved;}
88 bool GetFlameout(void) {return Flameout;}
89 int GetType(void) {return Type;}
90 string GetName() {return Name;}
92 void SetStarved(bool tt) {Starved = tt;}
93 void SetStarved(void) {Starved = true;}
95 float CalcThrust(void);
96 float CalcFuelNeed(void);
97 float CalcOxidizerNeed(void);
112 float FuelNeed, OxidizerNeed;
120 FGAtmosphere* Atmosphere;
122 FGAircraft* Aircraft;
123 FGTranslation* Translation;
124 FGRotation* Rotation;
125 FGPosition* Position;
126 FGAuxiliary* Auxiliary;
130 float CalcRocketThrust(void);
131 float CalcPistonThrust(void);
135 /******************************************************************************/