@author Tony Peden (Maintained and refined)
@version $Id$
@see main in file JSBSim.cpp (use main() wrapper for standalone usage)
+ @see <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jsbsim/JSBSim/JSBSim.hxx?rev=HEAD&content-type=text/vnd.viewcvs-markup">
+ Header File </a>
+ @see <a href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jsbsim/JSBSim/JSBSim.cxx?rev=HEAD&content-type=text/vnd.viewcvs-markup">
+ Source File </a>
*/
/*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
//@{
/** Set geocentric latitude
@param lat latitude in radians measured from the 0 meridian where
- the westerly direction is positive and east is negative */
+ the westerly direction is positive and east is negative */
void set_Latitude(double lat); // geocentric
/** Set longitude
@param lon longitude in radians measured from the equator where
- the northerly direction is positive and south is negative */
+ the northerly direction is positive and south is negative */
void set_Longitude(double lon);
/** Set altitude
Note: this triggers a recalculation of AGL altitude
- @param alt altitude in feet */
+ @param alt altitude in feet */
void set_Altitude(double alt); // triggers re-calc of AGL altitude
//@}
//@{
/** Sets calibrated airspeed
Setting this will trigger a recalc of the other velocity terms.
- @param vc Calibrated airspeed in ft/sec */
+ @param vc Calibrated airspeed in ft/sec */
void set_V_calibrated_kts(double vc);
/** Sets Mach number.
Setting this will trigger a recalc of the other velocity terms.
- @param mach Mach number */
+ @param mach Mach number */
void set_Mach_number(double mach);
/** Sets velocity in N-E-D coordinates.
Setting this will trigger a recalc of the other velocity terms.
- @param north velocity northward in ft/sec
- @param east velocity eastward in ft/sec
- @param down velocity downward in ft/sec */
+ @param north velocity northward in ft/sec
+ @param east velocity eastward in ft/sec
+ @param down velocity downward in ft/sec */
void set_Velocities_Local( double north, double east, double down );
/** Sets aircraft velocity in stability frame.
Setting this will trigger a recalc of the other velocity terms.
- @param u X velocity in ft/sec
- @param v Y velocity in ft/sec
- @param w Z velocity in ft/sec */
+ @param u X velocity in ft/sec
+ @param v Y velocity in ft/sec
+ @param w Z velocity in ft/sec */
void set_Velocities_Wind_Body( double u, double v, double w);
//@}
/** Euler Angle Parameter Set
@param phi roll angle in radians
- @param theta pitch angle in radians
- @param psi heading angle in radians */
+ @param theta pitch angle in radians
+ @param psi heading angle in radians */
void set_Euler_Angles( double phi, double theta, double psi );
/// @name Flight Path Parameter Set
//@{
/** Sets the atmospheric static pressure
@param p pressure in psf */
- void set_Static_pressure(double p);
+// void set_Static_pressure(double p);
/** Sets the atmospheric temperature
@param T temperature in degrees rankine */
- void set_Static_temperature(double T);
+// void set_Static_temperature(double T);
/** Sets the atmospheric density.
@param rho air density slugs/cubic foot */
- void set_Density(double rho);
+// void set_Density(double rho);
/** Sets the velocity of the local airmass for wind modeling.
@param wnorth velocity north in fps
@param weast velocity east in fps
@param wdown velocity down in fps*/
- void set_Velocities_Local_Airmass (double wnorth,
- double weast,
- double wdown );
/// @name Position Parameter Update
//@{
/** Update the position based on inputs, positions, velocities, etc.
- @param multiloop number of times to loop through the FDM
- @return true if successful */
- void update( int multiloop );
+ @param dt delta time in seconds. */
+ void update(double dt);
bool ToggleDataLogging(bool state);
bool ToggleDataLogging(void);
void do_trim(void);
SGPropertyNode *rudder_trim;
SGPropertyNode *stall_warning;
+ /* SGPropertyNode *elevator_pos_deg;
+ SGPropertyNode *left_aileron_pos_deg;
+ SGPropertyNode *right_aileron_pos_deg;
+ SGPropertyNode *rudder_pos_deg;
+ SGPropertyNode *flap_pos_deg; */
+
+
SGPropertyNode *elevator_pos_pct;
SGPropertyNode *left_aileron_pos_pct;
SGPropertyNode *right_aileron_pos_pct;
SGPropertyNode *gear_pos_pct;
+ SGPropertyNode *temperature;
+ SGPropertyNode *pressure;
+ SGPropertyNode *density;
+
+ SGPropertyNode *wind_from_north;
+ SGPropertyNode *wind_from_east;
+ SGPropertyNode *wind_from_down;
+
void init_gear(void);
void update_gear(void);
-
- // my tweaks start here - NHV
- typedef SGPropertyNode *PROP_NODE_PTR;
- typedef PROP_NODE_PTR myNode[2];
-
- struct engine_props {
- SGPropertyNode * mp_osi;
- SGPropertyNode * egt_degf;
- SGPropertyNode * fuel_flow_gph;
- SGPropertyNode * cht_degf;
- SGPropertyNode * oil_temperature_degf;
- SGPropertyNode * oil_pressure_psi;
- SGPropertyNode * running;
- SGPropertyNode * cranking;
- SGPropertyNode * rpm;
- } *engines;
- int ntanks;
- int nengines;
-
- PROP_NODE_PTR *tanks;
-
};