]> git.mxchange.org Git - flightgear.git/blob - src/Main/README
toggle fullscreen: also adapt GUI plane when resizing
[flightgear.git] / src / Main / README
1 Last updated $Date$
2
3 This directory contains the main routine for FlightGear, together with
4 various utility classes and functions that do not fit in anywhere
5 else, and subsystems that have not yet graduated to having their own
6 directories (because the maintainers are lazy, not because the
7 subsystems are not important).
8
9 fg_commands.cxx
10 fg_commands.hxx
11   This module defines a global function to register FlightGear's
12   built-in commands.
13
14 fg_init.cxx
15 fg_init.hxx
16   This module defines global functions to initialize for the various
17   subsystems.  Code is gradually being moved out of here and into the
18   subsystems' own init() methods, so this module will eventually
19   disappear.
20
21 fg_io.cxx
22 fg_io.hxx
23   This module defines high-level global I/O functions for FlightGear.
24   I don't know how widely these are used, yet.
25
26 fg_props.cxx
27 fg_props.hxx
28   This module provides a FlightGear layer over the SimGear property
29   manager.  This module performs two roles: it provides global
30   convenience functions for accessing the FlightGear property tree,
31   and it ties some properties to its own static functions.  The second
32   role has mostly disappeared, since subsystems now tie their own
33   properties in their bind() methods, and eventually this module will
34   contain only the convenience functions.
35
36 fgfs.cxx
37 fgfs.hxx
38   This module defines FGSubsystem, the abstract base class (or
39   interface) for subsystems in FlightGear.  Most of the important
40   subsystems already extend this class, and eventually, all subsystems
41   will.
42
43 globals.cxx
44 globals.hxx
45   This module defines FGGlobals, a class that holds pointers to
46   subsystems and other variables used by a FlightGear session.  Many
47   global variables have migrated into here, and eventually, all will,
48   so that the program can maintain state for more than one session at
49   once.
50
51 logger.cxx
52 logger.hxx
53   This module defines the FGLogger subsystem, which allows the user to
54   log any property value to any number of CSV files, somewhat like an
55   overenthusiastic flight data recorder.
56
57 main.cxx
58   This file defines the main() function for FlightGear as well as the
59   top-level loop.  Currently, there is a still lot of code in here
60   that belongs in the individual subsystems' init() and update()
61   methods; eventually, this will be a short, simple file defining the
62   top-level flow logic of the program.
63
64 options.cxx
65 options.hxx
66   This module defines global functions for parsing command-line
67   options and transferring them to the property tree.
68
69 runfgfs.bat
70 runfgfs.bat.in
71   This is a batch file for launching FlightGear under MSWindows.
72   runfgfs.bat is autogenerated from runfgfs.bat.in, so any changes
73   should be made to the latter file.
74
75 splash.cxx
76 splash.hxx
77   This module defines global functions for displaying and updating the
78   splash screen.
79
80 viewer.cxx
81 viewer.hxx
82   This module defines the FGViewer subsystem, which calculates the
83   viewpoint in world coordinates and provides transformation matrices
84   for the scenery code.  FGViewer has methods that allow the program
85   to rotate or move the current view direction.
86
87 viewmgr.cxx
88 viewmgr.hxx
89   This module defines the FGViewMgr subsystem, which manages all of
90   the different views available in FlightGear.