]> git.mxchange.org Git - simgear.git/blob - DoxygenMain.cxx
Working on adding a top leve Doxygen docs introduction.
[simgear.git] / DoxygenMain.cxx
1 /* This is a dummy code file that only contains doxygen main page
2    documentation.  It has a .cxx extension so that emacs will happily
3    autoindent correctly. */
4
5 /** \mainpage SimGear
6  * Simulation, Visualization, and Game development libraries.
7
8  * \section intro Introduction
9  *
10  * SimGear is a collection of libraries which provide a variety of
11  * functionality useful for building simulations, visualizations, and
12  * even games.  All the SimGear code is designed to be portable across
13  * a wide variety of platforms and compilers.  It has primarily been
14  * developed in support of the FlightGear project, but as development
15  * moves forward, we are generalizing the code to make more of it
16  * useful for other types of applications.
17  *
18  * Some of the functionality provide includes
19  *
20  * - Compiler and platform abstractions for many tricky differences.
21  * - A whole earth tiling/indexing scheme.
22  * - A console debugging output scheme that tracks severity and
23  *   category that can be completely compiled out for a final build release.
24  * - Code to manage "real" time and time zones.
25  * - Code to calculate accurate positions of sun, moon, stars, and
26  *   planets for a given time, date, season, earth location, etc.
27  * - Simple serial, file, and network I/O abstractions
28  * - Code to calculate magnetic variation.
29  * - A variety of coordinate conversion, vector, matrix type math routines.
30  * - An abstraction to hide platform dependent path naming schemes.
31  * - A C++ streams wrapper to handle compress input/output streams.
32  * - An optimized "property manager" which associates ascii property
33  *   names with their corresponding value.  This can be a great way to build
34  *   loose linkages between modules, or build linkages/connections that can
35  *   be determined from config files or at runtime.
36  * - Scene management and drawing routines:
37  *   - material property management
38  *   - object management
39  *   - terrain tile management and paging
40  *   - sky dome rendering (with ephemeral objects)
41  * - Code to handle screen dumps (and ultra-hires tile rendered screen dumps)
42  * - A sound effects manager.
43  * - A threading abstraction.
44  * - A simple but highly functional XML parser that interfaces nicely
45  *   with the property manager.
46
47  * \section supports Supported Platforms
48  * SimGear has been built on the following platforms:
49  *
50  *   - Linux (x86)
51  *   - Windows (MSVC, Cygwin, Mingwin)
52  *   - SGI (native compilers)
53  *   - Mac OS X
54  *   - FreeBSD
55  
56  * \section depends Dependencies
57  *
58  * SimGear depends on several other open source packages.  These must
59  * be installed before SimGear can be installed:
60  *
61  *   - glut and opengl
62  *   - plib (http://plib.sf.net)
63  *   - metakit
64  *   - zlib
65  *   - libjpeg (optional)
66  *   - pthread (optional)
67  
68  * \section license Licensing
69  *
70  * SimGear is licensed under the terms of the LGPL
71
72  * \section install Installation
73  *
74  * \subsection step1 Step 1: Opening the box
75  *  
76  * etc...
77  */
78