Moved code inline to stop g++ 2.7 from complaining.
Simulator/Time/event.[ch]xx
Changed return type of fgEVENT::printStat(). void caused g++ 2.7 to
complain bitterly.
Minor bugfix and changes.
Simulator/Main/GLUTmain.cxx
Added missing type to idle_state definition - eliminates a warning.
Simulator/Main/fg_init.cxx
Changes to airport lookup.
Simulator/Main/options.cxx
Uses fg_gzifstream when loading config file.
Nested fgFACE inside fgFRAGMENT since its not used anywhere else.
./Simulator/Objects/material.cxx
./Simulator/Objects/material.hxx
Made fgMATERIAL and fgMATERIAL_MGR bona fide classes with private
data members - that should keep the rabble happy :)
./Simulator/Scenery/tilemgr.cxx
In viewable() delay evaluation of eye[0] and eye[1] in until they're
actually needed.
Change to fgTileMgrRender() to call fgMATERIAL_MGR::render_fragments()
method.
./Include/fg_stl_config.h
./Include/auto_ptr.hxx
Added support for g++ 2.7.
Further changes to other files are forthcoming.
Brief summary of changes required for g++ 2.7.
operator->() not supported by iterators: use (*i).x instead of i->x
default template arguments not supported,
<functional> doesn't have mem_fun_ref() needed by callbacks.
some std include files have different names.
template member functions not supported.
- The new classes in libmisc.tgz define a stream interface into zlib.
I've put these in a new directory, Lib/Misc. Feel free to rename it
to something more appropriate. However you'll have to change the
include directives in all the other files. Additionally you'll have
add the library to Lib/Makefile.am and Simulator/Main/Makefile.am.
The StopWatch class in Lib/Misc requires a HAVE_GETRUSAGE autoconf
test so I've included the required changes in config.tgz.
There are a fair few changes to Simulator/Objects as I've moved
things around. Loading tiles is quicker but thats not where the delay
is. Tile loading takes a few tenths of a second per file on a P200
but it seems to be the post-processing that leads to a noticeable
blip in framerate. I suppose its time to start profiling to see where
the delays are.
I've included a brief description of each archives contents.
Lib/Misc/
zfstream.cxx
zfstream.hxx
C++ stream interface into zlib.
Taken from zlib-1.1.3/contrib/iostream/.
Minor mods for STL compatibility.
There's no copyright associated with these so I assume they're
covered by zlib's.
fgstream.cxx
fgstream.hxx
FlightGear input stream using gz_ifstream. Tries to open the
given filename. If that fails then filename is examined and a
".gz" suffix is removed or appended and that file is opened.
stopwatch.hxx
A simple timer for benchmarking. Not used in production code.
Taken from the Blitz++ project. Covered by GPL.
strutils.cxx
strutils.hxx
Some simple string manipulation routines.
Simulator/Airports/
Load airports database using fgstream.
Changed fgAIRPORTS to use set<> instead of map<>.
Added bool fgAIRPORTS::search() as a neater way doing the lookup.
Returns true if found.
Simulator/Astro/
Modified fgStarsInit() to load stars database using fgstream.
Simulator/Objects/
Modified fgObjLoad() to use fgstream.
Modified fgMATERIAL_MGR::load_lib() to use fgstream.
Many changes to fgMATERIAL.
Some changes to fgFRAGMENT but I forget what!