]> git.mxchange.org Git - flightgear.git/blob - src/Main/fg_init.hxx
Juggle fgfs link order to keep GNU ld happy.
[flightgear.git] / src / Main / fg_init.hxx
1 //
2 // fg_init.hxx -- Flight Gear top level initialization routines
3 //
4 // Written by Curtis Olson, started August 1997.
5 //
6 // Copyright (C) 1997  Curtis L. Olson  - http://www.flightgear.org/~curt
7 //
8 // This program is free software; you can redistribute it and/or
9 // modify it under the terms of the GNU General Public License as
10 // published by the Free Software Foundation; either version 2 of the
11 // License, or (at your option) any later version.
12 //
13 // This program is distributed in the hope that it will be useful, but
14 // WITHOUT ANY WARRANTY; without even the implied warranty of
15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16 // General Public License for more details.
17 //
18 // You should have received a copy of the GNU General Public License
19 // along with this program; if not, write to the Free Software
20 // Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
21 //
22 // $Id$
23
24
25 #ifndef _FG_INIT_HXX
26 #define _FG_INIT_HXX
27
28 #include <string>
29
30 // forward decls
31 class SGPropertyNode;
32 class SGTime;
33
34 // Read in configuration (files and command line optoins) but only set
35 // fg_root
36 bool fgInitFGRoot ( int argc, char **argv );
37
38
39 // Return the current base package version
40 std::string fgBasePackageVersion();
41
42
43 // Read in configuration (file and command line)
44 bool fgInitConfig ( int argc, char **argv );
45
46
47 // Initialize the localization
48 SGPropertyNode *fgInitLocale(const char *language);
49
50
51 // Init navaids and waypoints
52 bool fgInitNav ();
53
54
55 // General house keeping initializations
56 bool fgInitGeneral ();
57
58
59 // This is the top level init routine which calls all the other
60 // initialization routines.  If you are adding a subsystem to flight
61 // gear, its initialization call should located in this routine.
62 bool fgInitSubsystems();
63
64
65 // Reset
66 void fgReInitSubsystems();
67
68 /**
69  * this is what the 'reset' command (and hence, GUI) is attached too
70  * it overlaps with fgReInitSubsystems quite substantially
71  */
72 void doSimulatorReset(void);
73
74 // Set the initial position based on presets (or defaults)
75 bool fgInitPosition();
76
77
78 // Listen to /sim/tower/airport-id and set tower view position accordingly
79 void fgInitTowerLocationListener();
80
81
82 // Initialize various time dependent systems (lighting, sun position, etc.)
83 // returns a new instance of the SGTime class
84 SGTime *fgInitTime();
85
86 // set up a time offset (aka warp) if one is specified
87 void fgInitTimeOffset();
88
89
90 #endif // _FG_INIT_HXX
91
92
93