]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/JSBSim/FGState.cpp
Curt Olson:
[flightgear.git] / src / FDM / JSBSim / FGState.cpp
index 5759173d0b424eb345e35c9bfd86f55f922770a6..999af7da55af9ef0a0e056f44949702fed14b616 100644 (file)
@@ -53,6 +53,8 @@ INCLUDES
 
 #include "FGState.h"
 
+namespace JSBSim {
+
 static const char *IdSrc = "$Id$";
 static const char *IdHdr = ID_STATE;
 
@@ -84,9 +86,7 @@ FGState::FGState(FGFDMExec* fdex)
   Propulsion      = FDMExec->GetPropulsion();
   PropertyManager = FDMExec->GetPropertyManager();
 
-  for(int i=0;i<3;i++) vQdot_prev[i].InitMatrix();
-
-  InitPropertyMaps();
+  for(int i=0;i<4;i++) vQdot_prev[i].InitMatrix();
 
   bind();
   
@@ -101,71 +101,6 @@ FGState::~FGState()
   Debug(1);
 }
 
-//***************************************************************************
-//
-// Reset: Assume all angles READ FROM FILE IN DEGREES !!
-//
-
-bool FGState::Reset(string path, string acname, string fname)
-{
-  string resetDef;
-  string token="";
-
-  double U, V, W;
-  double phi, tht, psi;
-  double latitude, longitude, h;
-  double wdir, wmag, wnorth, weast;
-
-# ifndef macintosh
-  resetDef = path + "/" + acname + "/" + fname + ".xml";
-# else
-  resetDef = path + ";" + acname + ";" + fname + ".xml";
-# endif
-
-  FGConfigFile resetfile(resetDef);
-  if (!resetfile.IsOpen()) return false;
-
-  resetfile.GetNextConfigLine();
-  token = resetfile.GetValue();
-  if (token != string("initialize")) {
-    cerr << "The reset file " << resetDef
-         << " does not appear to be a reset file" << endl;
-    return false;
-  } else {
-    resetfile.GetNextConfigLine();
-    resetfile >> token;
-    cout << "Resetting using: " << token << endl << endl;
-  }
-  
-  while (token != string("/initialize") && token != string("EOF")) {
-    if (token == "UBODY") resetfile >> U;
-    if (token == "VBODY") resetfile >> V;
-    if (token == "WBODY") resetfile >> W;
-    if (token == "LATITUDE") resetfile >> latitude;
-    if (token == "LONGITUDE") resetfile >> longitude;
-    if (token == "PHI") resetfile >> phi;
-    if (token == "THETA") resetfile >> tht;
-    if (token == "PSI") resetfile >> psi;
-    if (token == "ALTITUDE") resetfile >> h;
-    if (token == "WINDDIR") resetfile >> wdir;
-    if (token == "VWIND") resetfile >> wmag;
-
-    resetfile >> token;
-  }
-  
-  Position->SetLatitude(latitude*degtorad);
-  Position->SetLongitude(longitude*degtorad);
-  Position->Seth(h);
-
-  wnorth = wmag*ktstofps*cos(wdir*degtorad);
-  weast = wmag*ktstofps*sin(wdir*degtorad);
-  
-  Initialize(U, V, W, phi*degtorad, tht*degtorad, psi*degtorad,
-               latitude*degtorad, longitude*degtorad, h, wnorth, weast, 0.0);
-
-  return true;
-}
-
 //***************************************************************************
 //
 // Initialize: Assume all angles GIVEN IN RADIANS !!
@@ -486,91 +421,6 @@ void FGState::ReportState(void)
 
 //%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-void FGState::InitPropertyMaps(void)
-{
-  ParamNameToProp[  "FG_TIME" ]="sim-time-sec";
-  ParamNameToProp[  "FG_QBAR" ]="aero/qbar-psf";
-  ParamNameToProp[  "FG_QBARUW" ]="aero/qbarUW-psf";
-  ParamNameToProp[  "FG_QBARUV" ]="aero/qbarUV-psf";
-  ParamNameToProp[  "FG_WINGAREA" ]="metrics/Sw-sqft";
-  ParamNameToProp[  "FG_WINGSPAN" ]="metrics/bw-ft";
-  ParamNameToProp[  "FG_CBAR" ]="metrics/cbarw-ft";
-  ParamNameToProp[  "FG_ALPHA" ]="aero/alpha-rad";
-  ParamNameToProp[  "FG_ALPHADOT" ]="aero/alphadot-rad_sec";
-  ParamNameToProp[  "FG_BETA" ]="aero/beta-rad";
-  ParamNameToProp[  "FG_ABETA" ]="aero/mag-beta-rad";
-  ParamNameToProp[  "FG_BETADOT" ]="aero/betadot-rad_sec";
-  ParamNameToProp[  "FG_PHI" ]="attitude/phi-rad";
-  ParamNameToProp[  "FG_THT" ]="attitude/theta-rad";
-  ParamNameToProp[  "FG_PSI" ]="attitude/psi-true-rad";
-  ParamNameToProp[  "FG_PITCHRATE" ]="velocities/q-rad_sec";
-  ParamNameToProp[  "FG_ROLLRATE" ]="velocities/p-rad_sec";
-  ParamNameToProp[  "FG_YAWRATE" ]="velocities/r-rad_sec";
-  ParamNameToProp[  "FG_AEROP" ]="velocities/p-aero-rad_sec";
-  ParamNameToProp[  "FG_AEROQ" ]="velocities/q-aero-rad_sec";
-  ParamNameToProp[  "FG_AEROR" ]="velocities/r-aero-rad_sec";
-  ParamNameToProp[  "FG_CL_SQRD" ]="aero/cl-squared-norm";
-  ParamNameToProp[  "FG_MACH" ]="velocities/mach-norm";
-  ParamNameToProp[  "FG_ALTITUDE" ]="position/h-sl-ft";
-  ParamNameToProp[  "FG_BI2VEL" ]="aero/bi2vel";
-  ParamNameToProp[  "FG_CI2VEL" ]="aero/ci2vel";
-  ParamNameToProp[  "FG_ELEVATOR_POS" ]="fcs/elevator-pos-rad";
-  ParamNameToProp[  "FG_AELEVATOR_POS" ]="fcs/mag-elevator-pos-rad";
-  ParamNameToProp[  "FG_NELEVATOR_POS" ]="fcs/elevator-pos-norm";
-  ParamNameToProp[  "FG_AILERON_POS" ]="fcs/left-aileron-pos-rad";
-  ParamNameToProp[  "FG_AAILERON_POS" ]="fcs/mag-aileron-pos-rad";
-  ParamNameToProp[  "FG_NAILERON_POS" ]="fcs/left-aileron-pos-norm";
-  ParamNameToProp[  "FG_LEFT_AILERON_POS" ]="fcs/left-aileron-pos-rad";
-  ParamNameToProp[  "FG_ALEFT_AILERON_POS" ]="fcs/mag-left-aileron-pos-rad";
-  ParamNameToProp[  "FG_NLEFT_AILERON_POS" ]="fcs/left-aileron-pos-norm";
-  ParamNameToProp[  "FG_RIGHT_AILERON_POS" ]="fcs/right-aileron-pos-rad";
-  ParamNameToProp[  "FG_ARIGHT_AILERON_POS" ]="fcs/mag-aileron-pos-rad";
-  ParamNameToProp[  "FG_NRIGHT_AILERON_POS" ]="fcs/right-aileron-pos-norm";
-  ParamNameToProp[  "FG_RUDDER_POS" ]="fcs/rudder-pos-rad";
-  ParamNameToProp[  "FG_ARUDDER_POS" ]="fcs/mag-rudder-pos-rad";
-  ParamNameToProp[  "FG_NRUDDER_POS" ]="fcs/rudder-pos-norm";
-  ParamNameToProp[  "FG_SPDBRAKE_POS" ]="fcs/speedbrake-pos-rad";
-  ParamNameToProp[  "FG_NSPDBRAKE_POS" ]="fcs/speedbrake-pos-norm";
-  ParamNameToProp[  "FG_SPOILERS_POS" ]="fcs/spoiler-pos-rad";
-  ParamNameToProp[  "FG_NSPOILERS_POS" ]="fcs/spoiler-pos-norm";
-  ParamNameToProp[  "FG_FLAPS_POS" ]="fcs/flap-pos-deg";
-  ParamNameToProp[  "FG_NFLAPS_POS" ]="fcs/flap-pos-norm";
-  ParamNameToProp[  "FG_ELEVATOR_CMD" ]="fcs/elevator-cmd-norm";
-  ParamNameToProp[  "FG_AILERON_CMD" ]="fcs/aileron-cmd-norm";
-  ParamNameToProp[  "FG_RUDDER_CMD" ]="fcs/rudder-cmd-norm";
-  ParamNameToProp[  "FG_SPDBRAKE_CMD" ]="fcs/speedbrake-cmd-norm";
-  ParamNameToProp[  "FG_SPOILERS_CMD" ]="fcs/spoiler-cmd-norm";
-  ParamNameToProp[  "FG_FLAPS_CMD" ]="fcs/flap-cmd-norm";
-  ParamNameToProp[  "FG_THROTTLE_CMD" ]="fcs/throttle-cmd-norm";
-  ParamNameToProp[  "FG_THROTTLE_POS" ]="fcs/throttle-pos-norm";
-  ParamNameToProp[  "FG_MIXTURE_CMD" ]="fcs/mixture-cmd-norm";
-  ParamNameToProp[  "FG_MIXTURE_POS" ]="fcs/mixture-pos-norm";
-  ParamNameToProp[  "FG_MAGNETO_CMD" ]="propulsion/magneto_cmd";
-  ParamNameToProp[  "FG_STARTER_CMD" ]="propulsion/starter_cmd";
-  ParamNameToProp[  "FG_ACTIVE_ENGINE" ]="propulsion/active_engine";
-  ParamNameToProp[  "FG_HOVERB" ]="aero/h_b-mac-ft";
-  ParamNameToProp[  "FG_PITCH_TRIM_CMD" ]="fcs/pitch-trim-cmd-norm";
-  ParamNameToProp[  "FG_YAW_TRIM_CMD" ]="fcs/yaw-trim-cmd-norm";
-  ParamNameToProp[  "FG_ROLL_TRIM_CMD" ]="fcs/roll-trim-cmd-norm";
-  ParamNameToProp[  "FG_LEFT_BRAKE_CMD" ]="fcs/left_brake";
-  ParamNameToProp[  "FG_CENTER_BRAKE_CMD" ]="fcs/center_brake";
-  ParamNameToProp[  "FG_RIGHT_BRAKE_CMD" ]="fcs/right_brake";
-  ParamNameToProp[  "FG_SET_LOGGING" ]="sim/set_logging";
-  ParamNameToProp[  "FG_ALPHAH" ]="aero/alpha-rad";
-  ParamNameToProp[  "FG_ALPHAW" ]="aero/alpha-wing-rad";
-  ParamNameToProp[  "FG_LBARH" ]="metrics/lh-norm";     
-  ParamNameToProp[  "FG_LBARV" ]="metrics/lv-norm";     
-  ParamNameToProp[  "FG_HTAILAREA" ]="metrics/Sh-sqft";
-  ParamNameToProp[  "FG_VTAILAREA" ]="metrics/Sv-sqft";
-  ParamNameToProp[  "FG_VBARH" ]="metrics/vbarh-norm";    
-  ParamNameToProp[  "FG_VBARV" ]="metrics/vbarv-norm";     
-  ParamNameToProp[  "FG_GEAR_CMD" ]="gear/gear-cmd-norm";
-  ParamNameToProp[  "FG_GEAR_POS" ]="gear/gear-pos-norm";
-  ParamNameToProp[  "FG_HYSTPARM" ]="aero/stall-hyst-norm";
-}
-
-//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
 void FGState::bind(void)
 {
   PropertyManager->Tie("sim-time-sec",this,
@@ -629,4 +479,4 @@ void FGState::Debug(int from)
     }
   }
 }
-
+}