]> git.mxchange.org Git - flightgear.git/blob - src/FDM/LaRCsim/ls_sim_control.h
source tree reorganization prior to flightgear 0.7
[flightgear.git] / src / FDM / LaRCsim / ls_sim_control.h
1 /***************************************************************************
2
3         TITLE:          ls_sim_control.h
4         
5 ----------------------------------------------------------------------------
6
7         FUNCTION:       LaRCSim simulation control parameters header file
8
9 ----------------------------------------------------------------------------
10
11         MODULE STATUS:  developmental
12
13 ----------------------------------------------------------------------------
14
15         GENEALOGY:      Created 18 DEC 1993 by Bruce Jackson
16
17 ----------------------------------------------------------------------------
18
19         DESIGNED BY:    B. Jackson
20         
21         CODED BY:       B. Jackson
22         
23         MAINTAINED BY:  guess who
24
25 ----------------------------------------------------------------------------
26
27         MODIFICATION HISTORY:
28         
29         DATE    PURPOSE                                         BY
30         
31         940204  Added "overrun" flag to indicate non-real-time frame.
32         940210  Added "vision" flag to indicate use of shared memory.
33         940513  Added "max_tape_channels" and "max_time_slices" EBJ
34         950308  Increased size of time_stamp and date_string to include
35                 terminating null char.                          EBJ
36         950314  Addedf "paused" flag to make this global (was local to
37                 ls_cockpit routine).                            EBJ
38         950406  Removed tape_channels parameter, and added end_time, model_hz,
39                 and term_update_hz parameters.                  EBJ     
40
41 $Header$
42 $Log$
43 Revision 1.1  1999/04/05 21:32:45  curt
44 Initial revision
45
46 Revision 1.4  1998/08/06 12:46:39  curt
47 Header change.
48
49 Revision 1.3  1998/01/22 02:59:33  curt
50 Changed #ifdef FILE_H to #ifdef _FILE_H
51
52 Revision 1.2  1998/01/06 01:20:17  curt
53 Tweaks to help building with MSVC++
54
55 Revision 1.1  1997/05/29 00:09:59  curt
56 Initial Flight Gear revision.
57
58  * Revision 1.11  1995/04/07  01:39:09  bjax
59  * Removed tape_channels and added end_time, model_hz, and term_update_hz.
60  *
61  * Revision 1.10  1995/03/15  12:33:29  bjax
62  * Added 'paused' flag.
63  *
64  * Revision 1.9  1995/03/08  12:34:21  bjax
65  * Increased size of date_string and time_stamp by 1 to include terminating null;
66  * added userid field and include of stdio.h. EBJ
67  *
68  * Revision 1.8  1994/05/13  20:41:43  bjax
69  * Increased size of time_stamp to 8 chars to allow for colons.
70  * Added fields "tape_channels" and "time_slices" to allow user to change.
71  *
72  * Revision 1.7  1994/05/10  15:18:49  bjax
73  * Modified write_cmp2 flag to write_asc1 flag, since XPLOT 4.00 doesn't
74  * support cmp2.  Also added RCS header and log entries in header.
75  *
76                 
77
78 --------------------------------------------------------------------------*/
79
80
81 #ifndef _LS_SIM_CONTROL_H
82 #define _LS_SIM_CONTROL_H
83
84
85 #include <stdio.h>
86
87 #ifndef SIM_CONTROL
88
89 typedef struct {
90
91   enum { batch, terminal, GLmouse, cockpit } sim_type;
92   char simname[64];     /* name of simulation */
93   int run_number;       /* run number of this session                     */
94   char date_string[7];  /* like "931220" */
95   char time_stamp[9];   /* like "13:00:00" */
96 #ifdef COMPILE_THIS_CODE_THIS_USELESS_CODE
97   char userid[L_cuserid]; /* who is running this sim */
98 #endif /* COMPILE_THIS_CODE_THIS_USELESS_CODE */
99   long time_slices;     /* number of points that can be recorded (circ buff) */
100   int write_av;         /* will be writing out an Agile_VU file after run */
101   int write_mat;        /* will be writing out a matrix script of session */
102   int write_tab;        /* will be writing out a tab-delimited time history */
103   int write_asc1;       /* will be writing out a GetData ASCII 1 file */
104   int save_spacing;     /* spacing between data points when recording
105                            data to memory; 0 = every point, 1 = every 
106                            other point; 2 = every fourth point, etc. */
107   int write_spacing;    /* spacing between data points when writing
108                            output files; 0 = every point, 1 = every 
109                            other point; 2 = every fourth point, etc. */
110   int overrun;          /* indicates, if non-zero, a frame overrun
111                            occurred in the previous frame. Suitable for
112                            setting a display flag or writing an error
113                            message.                                     */
114   int vision;           /* indicates, if non-zero, marriage to LaRC VISION
115                            software (developed A. Dare and J. Burley of the 
116                            former Cockpit Technologies Branch) */
117   int debug;            /* indicates, if non-zero, to operate in debug mode
118                            which implies disable double-buffering and synch.
119                            attempts to avoid errors */
120   int paused;           /* indicates simulation is paused */
121   float end_time;       /* end of simulation run value */
122   float model_hz;       /* current inner loop frame rate */
123   float term_update_hz; /* current terminal refresh frequency */
124
125 } SIM_CONTROL;
126
127 extern SIM_CONTROL sim_control_;
128
129 #endif
130
131
132 #endif /* _LS_SIM_CONTROL_H */
133
134
135 /*------------------------  end of ls_sim_control.h ----------------------*/