CURRENT RCS HEADER INFO:
$Header$
$Log$
-Revision 1.1 1999/06/17 18:07:33 curt
-Initial revision
+Revision 1.5 2005/12/19 12:53:21 ehofman
+Vassilii Khachaturov:
+
+clean up some build warnings caught with gcc-4.0.
+
+Revision 1.4 2003/07/25 17:53:41 mselig
+UIUC code initilization mods to tidy things up a bit.
+
+Revision 1.3 2003/05/13 18:45:06 curt
+Robert Deters:
+
+ I have attached some revisions for the UIUCModel and some LaRCsim.
+ The only thing you should need to check is LaRCsim.cxx. The file
+ I attached is a revised version of 1.5 and the latest is 1.7. Also,
+ uiuc_getwind.c and uiuc_getwind.h are no longer in the LaRCsim
+ directory. They have been moved over to UIUCModel.
+
+Revision 1.2 2003/03/31 03:05:41 m-selig
+uiuc wind changes, MSS
+
+Revision 1.1.1.1 2003/02/28 01:33:39 rob
+uiuc version of FlightGear v0.9.0
+
+Revision 1.3 2002/12/12 00:01:04 rob
+*** empty log message ***
+
+Revision 1.2 2002/10/22 21:06:49 rob
+*** empty log message ***
+
+Revision 1.2 2002/08/29 18:56:37 rob
+*** empty log message ***
+
+Revision 1.1.1.1 2002/04/24 17:08:23 rob
+UIUC version of FlightGear-0.7.pre11
+
+Revision 1.5 2002/04/01 19:37:34 curt
+I have attached revisions to the UIUC code. The revisions include the
+ability to run a nonlinear model with flaps. The files ls_model.c and
+uiuc_aero.c were changed since we had some functions with the same
+name. The name changes doesn't affect the code, it just makes it a
+little easier to read. There are changes in LaRCsim.cxx so UIUC
+models have engine sound. Could you send me an email when you receive
+this and/or when the changes make it to the CVS? Thanks.
+
+Also I noticed you have some outdated files that are no longer used in
+the UIUCModel directory. They are uiuc_initializemaps1.cpp,
+uiuc_initializemaps2.cpp, uiuc_initializemaps3.cpp, and
+uiuc_initializemaps4.cpp
+
+Rob
+
+Revision 1.4 2001/09/14 18:47:27 curt
+More changes in support of UIUCModel.
+
+Revision 1.3 2000/10/28 14:30:33 curt
+Updates by Tony working on the FDM interface bus.
+
+Revision 1.2 2000/04/10 18:09:41 curt
+David Megginson made a few (mostly minor) mods to the LaRCsim files, and
+it's now possible to choose the LaRCsim model at runtime, as in
+
+ fgfs --aircraft=c172
+
+or
+
+ fgfs --aircraft=uiuc --aircraft-dir=Aircraft-uiuc/Boeing747
+
+I did this so that I could play with the UIUC stuff without losing
+Tony's C172 with its flaps, etc. I did my best to respect the design
+of the LaRCsim code by staying in C, making only minimal changes, and
+not introducing any dependencies on the rest of FlightGear. The
+modified files are attached.
+
+Revision 1.1.1.1 1999/06/17 18:07:33 curt
+Start of 0.7.x branch
Revision 1.1.1.1 1999/04/05 21:32:45 curt
Start of 0.6.x branch.
OUTPUTS:
--------------------------------------------------------------------------*/
+#include <stdio.h>
+
#include "ls_types.h"
#include "ls_model.h"
#include "default_model_routines.h"
+Model current_model;
+
void ls_model( SCALAR dt, int Initialize ) {
- inertias( dt, Initialize );
- subsystems( dt, Initialize );
- aero( dt, Initialize );
- engine( dt, Initialize );
- gear( dt, Initialize );
+ switch (current_model) {
+ case NAVION:
+ inertias( dt, Initialize );
+ subsystems( dt, Initialize );
+ navion_aero( dt, Initialize );
+ navion_engine( dt, Initialize );
+ navion_gear( dt, Initialize );
+ break;
+ case C172:
+ printf("here we are in C172 \n");
+ if(Initialize < 0) c172_init();
+ inertias( dt, Initialize );
+ subsystems( dt, Initialize );
+ c172_aero( dt, Initialize );
+ c172_engine( dt, Initialize );
+ c172_gear( dt, Initialize );
+ break;
+ case CHEROKEE:
+ inertias( dt, Initialize );
+ subsystems( dt, Initialize );
+ cherokee_aero( dt, Initialize );
+ cherokee_engine( dt, Initialize );
+ cherokee_gear( dt, Initialize );
+ break;
+ case BASIC:
+ // printf("here we are in BASIC \n");
+ if(Initialize < 0) basic_init();
+ printf("Initialize %d \n", Initialize);
+ inertias( dt, Initialize );
+ subsystems( dt, Initialize );
+ basic_aero( dt, Initialize );
+ basic_engine( dt, Initialize );
+ basic_gear( dt, Initialize );
+ break;
+ case UIUC:
+ inertias( dt, Initialize );
+ subsystems( dt, Initialize );
+ // During initialization period, re-initialize velocities
+ // and euler angles
+ if (Initialize !=0) uiuc_init_2_wrapper();
+ uiuc_network_recv_2_wrapper();
+ uiuc_engine_2_wrapper( dt, Initialize );
+ uiuc_wind_2_wrapper( dt, Initialize );
+ uiuc_aero_2_wrapper( dt, Initialize );
+ uiuc_gear_2_wrapper( dt, Initialize );
+ uiuc_network_send_2_wrapper();
+ uiuc_record_2_wrapper(dt);
+ break;
+ }
}