]> git.mxchange.org Git - flightgear.git/commitdiff
Initial revision of README describing the contents of the src/Main
authordavid <david>
Thu, 21 Mar 2002 22:37:12 +0000 (22:37 +0000)
committerdavid <david>
Thu, 21 Mar 2002 22:37:12 +0000 (22:37 +0000)
directory.

src/Main/README [new file with mode: 0644]

diff --git a/src/Main/README b/src/Main/README
new file mode 100644 (file)
index 0000000..7c4b3cd
--- /dev/null
@@ -0,0 +1,95 @@
+Last updated $Date$
+
+This directory contains the main routine for FlightGear, together with
+various utility classes and functions that do not fit in anywhere
+else, and subsystems that have not yet graduated to having their own
+directories (because the maintainers are lazy, not because the
+subsystems are not important).
+
+fg_commands.cxx
+fg_commands.hxx
+  This module defines a global function to register FlightGear's
+  built-in commands.
+
+fg_init.cxx
+fg_init.hxx
+  This module defines global functions to initialize for the various
+  subsystems.  Code is gradually being moved out of here and into the
+  subsystems' own init() methods, so this module will eventually
+  disappear.
+
+fg_io.cxx
+fg_io.hxx
+  This module defines high-level global I/O functions for FlightGear.
+  I don't know how widely these are used, yet.
+
+fg_props.cxx
+fg_props.hxx
+  This module provides a FlightGear layer over the SimGear property
+  manager.  This module performs two roles: it provides global
+  convenience functions for accessing the FlightGear property tree,
+  and it ties some properties to its own static functions.  The second
+  role has mostly disappeared, since subsystems now tie their own
+  properties in their bind() methods, and eventually this module will
+  contain only the convenience functions.
+
+fgfs.cxx
+fgfs.hxx
+  This module defines FGSubsystem, the abstract base class (or
+  interface) for subsystems in FlightGear.  Most of the important
+  subsystems already extend this class, and eventually, all subsystems
+  will.
+
+globals.cxx
+globals.hxx
+  This module defines FGGlobals, a class that holds pointers to
+  subsystems and other variables used by a FlightGear session.  Many
+  global variables have migrated into here, and eventually, all will,
+  so that the program can maintain state for more than one session at
+  once.
+
+logger.cxx
+logger.hxx
+  This module defines the FGLogger subsystem, which allows the user to
+  log any property value to any number of CSV files, somewhat like an
+  overenthusiastic flight data recorder.
+
+main.cxx
+  This file defines the main() function for FlightGear as well as the
+  top-level loop.  Currently, there is a still lot of code in here
+  that belongs in the individual subsystems' init() and update()
+  methods; eventually, this will be a short, simple file defining the
+  top-level flow logic of the program.
+
+model.cxx
+model.hxx
+  This module defines the FGAircraftModel subsystem, which controls
+  the display and animation of 3D models in FlightGear.
+
+options.cxx
+options.hxx
+  This module defines global functions for parsing command-line
+  options and transferring them to the property tree.
+
+runfgfs.bat
+runfgfs.bat.in
+  This is a batch file for launching FlightGear under MSWindows.
+  runfgfs.bat is autogenerated from runfgfs.bat.in, so any changes
+  should be made to the latter file.
+
+splash.cxx
+splash.hxx
+  This module defines global functions for displaying and updating the
+  splash screen.
+
+viewer.cxx
+viewer.hxx
+  This module defines the FGViewer subsystem, which calculates the
+  viewpoint in world coordinates and provides transformation matrices
+  for the scenery code.  FGViewer has methods that allow the program
+  to rotate or move the current view direction.
+
+viewmgr.cxx
+viewmgr.hxx
+  This module defines the FGViewMgr subsystem, which manages all of
+  the different views available in FlightGear.