James Turner
9e773e85f8
#1291 , hang on exit with OSG threading.
...
Explicitly stop threading during shutdown, before destroying various
rendering / viewer related structures.
2014-01-04 16:10:42 +00:00
James Turner
47e802e674
Fix for the fix: check for a viewer.
...
- avoid a crash if we bail out before creating the viewer (missing
data or bad aircraft)
2013-12-30 17:16:53 +00:00
James Turner
b0db2a764f
Fix crash on exit (cancel the osgDB pager)
...
- borrow some code from the new reset codepath to cleanly stop the
OSG pager thread during normal shutdown. Avoids a race-condition
destroying various structures the pager thread might be modifying.
2013-12-30 15:24:15 +00:00
James Turner
7ff9792b96
Reset: listener cleanup
2013-12-04 09:11:26 +00:00
James Turner
25bf3793bd
Reset: fix a static in play-audio-sample
...
Had to add this to FGGlobals, since it needs to be cleaned up
alongside the sound manager (which ideally it would be owned by,
but that's a change for another day)
2013-11-25 23:53:58 +00:00
bcoconni
d3f6ab38c2
Fixed a race condition so that FG runs most of the time (instead of crashes most of the time)
2013-11-24 20:06:28 +01:00
James Turner
2015016466
Break config init / aircraft loading apart.
...
Allows aircraft loading to proceed during reset without original
values over-writing the updated ones.
2013-11-24 15:10:00 +00:00
James Turner
af6095c5d1
Reset: do general init on reset path
2013-11-22 22:52:33 +00:00
James Turner
1d8b080782
Reset: delete mat-lib, re-create on reset
2013-11-22 22:52:29 +00:00
James Turner
875227057c
Structural work (init + shutdown) for new reset system.
...
The new approach is still work in progress (compile time option) and
non-functional, existing reset still works.
2013-11-19 17:38:51 +00:00
James Turner
2c4ac08895
Globals: delete/shutdown tweaks.
...
Avoid aircraft-model crash in accessing fx/sound
during shutdown.
2013-11-16 14:25:12 +00:00
James Turner
780393e2fe
Release property refs on shutdown.
2013-11-16 11:56:42 +00:00
James Turner
4a3b8c5765
Reset: changes for SGSubsystem ownership.
...
Keep in sync with updated ownership model in subsystem groups.
2013-11-12 23:36:18 +00:00
James Turner
52e5a9abe8
Reduce amount of log output at level=debug.
2013-09-28 14:47:20 +01:00
James Turner
33425c671d
Support for multiple data dirs.
2013-09-17 07:47:58 +01:00
James Turner
b1b6d2f6e2
Namespace fixes for std::string
2013-06-27 09:53:12 +01:00
James Turner
5ef475865c
Append major/minor version to autosave file name.
...
Ensure that new minor versions get a clean autosave file. In practice
this means settings from 2.10 and 2.11 would co-exist, for example.
2013-02-03 16:57:31 +00:00
James Turner
1c8d9ef132
Search the current aircraft-dir implicitly.
...
If a file is specified without an 'Aircraft/subdir' prefix, check for it relative to the the current aircraft dir.
2012-12-13 09:10:39 +00:00
James Turner
9426928cdf
Fix a typo.
2012-09-25 10:07:11 +01:00
James Turner
649d579124
Helpers to access view position.
...
Avoid direct use of FGViewer in various places, by providing property-based accessors to the current view position.
2012-09-25 10:06:56 +01:00
James Turner
2f6172687e
Make FGControls behave like a standard subsystem.
2012-09-25 00:48:48 +01:00
James Turner
029012b8b9
Kill off some globals.
...
Break some subsystem dependencies, by explicitly using properties to read the primary position, orientation and velocities. (Instead of directly accessing the primary model placement). This means a couple more globals can die.
2012-09-19 18:17:44 +01:00
James Turner
505796e349
Make magavr a regular subsystem.
...
Remove various hacks and make magvar work like a normal subsystem, as part of the environment manager. Fix the remaining users of the globals->get_mag accessor, and hence kill off the global pointer.
2012-09-18 00:58:27 +01:00
Stuart Buchanan
cce186a57c
Add properties for raw axis and button values, for use
...
in joystick configuration function. Also rationalize references to
/sim/fg-home into a global property.
2012-08-23 21:52:30 +01:00
Thomas Geymayer
d82fd7cc5f
Basic 2D canvas implementation.
...
Support text and transformations for the moment, more
features to follow in due course.
2012-05-18 07:05:37 +01:00
James Turner
8f10fff8dc
Lazy-loading of the 2D panel node.
...
Sink the 2D panel logic into FGPanelNode, simplifying
renderer.cxx and a few other places. Also allows potential
for unloading / paging of 2.5D panels in the future.
2012-05-16 11:43:09 +01:00
ThorstenB
a2922e2e23
ATCDCL cleanup, part II.
...
Remove/comment out obsolete code.
Refactor ATCmgr(-old) into ATISmgr(-new), only keeping the COM radio / ATIS
support.
2012-05-12 23:53:30 +02:00
ThorstenB
89b41395d8
Move viewer-related sources to separate folder.
...
Simple source directory clean-up, so "Main" folder contains fewer stuff
and the list of files in the editors a lot shorter.
2012-04-25 23:28:00 +02:00
ThorstenB
470552fab1
Move locale code to separate module.
...
Introduce convenience methods to handle localized string resources
and obtain strings.
2012-04-21 20:17:42 +02:00
ThorstenB
4348f17b8c
#738 : crash when switching 2D panels
...
FGPanelNode doesn't always own its "_panel" object - so it's not ok to
always delete it. Use ref-counting/smart-pointers instead.
2012-04-12 00:03:16 +02:00
James Turner
8c187164fe
Work on making 2D panels act like standard scene-graph elements for picking and drawing.
...
(This includes 2.5D panels in the 3D scene)
2012-03-16 17:22:18 +00:00
ThorstenB
90ce4ec93d
Clean-up: move autosave.xml loading code to proper method
2012-01-17 23:49:25 +01:00
ThorstenB
6f4a090770
#199 : fix issue with relative paths
...
Relative paths don't work with FG. Since we Linux users just love
command-lines and often do use relative paths, make sure to convert them
before use.
2012-01-12 22:14:17 +01:00
ThorstenB
229d9273d7
#545 related: User settings not saved when window was closed
...
via the window buttons instead of pressing ESC or using menu exit.
(More code should be moved after the 2.6 release)
2011-12-30 00:39:31 +01:00
ThorstenB
07aa70dce9
sound: fix sound-buffer-in-use issue
...
FGFX objects must be dereferenced early enough, and sound manager must be
removed late enough - otherwise openal complains about resources being
still in use when tryin to remove buffers.
Also: do not create FGFX objects for AI/MP aircraft, when AI sound is
disabled.
2011-12-04 17:18:02 +01:00
ThorstenB
e1c1a28288
Introduce some structure in fgMainLoop.
...
- Move some code to sub functions.
- Make sound manager a subsystem-manager member (and make sure it's
still processed last).
2011-11-20 16:21:15 +01:00
James Turner
a05ea36acb
Restructure GUI code, isolate PLIB in source files, to ease future refactoring and alternative GUI layers.
2011-11-19 20:25:51 +00:00
ThorstenB
4b2506d709
Add new performance monitoring subsystem.
...
Rename some subsystems for naming consistency.
2011-11-19 15:37:49 +01:00
James Turner
c1eca1ff6b
Refactor SGSky handling and ownership - sink into Renderer, remove global variable 'the sky', and hence clean up main loop and subsystem creation a little more.
2011-11-05 17:11:52 +00:00
Mathias Froehlich
2a4657c609
Fix returning reference to temporary.
2011-10-30 10:31:41 +01:00
James Turner
16a54a4409
Change a hot-spot in the AI code, to use cartesian instead of geodetic math.
2011-10-26 17:26:11 +01:00
James Turner
b1c7495fec
Restructure option/config handling code, to avoid multiple scans & parses for special options (fg-root/fg-aircraft/aircraft). Push most of the code into a new Options class, inside options.cxx, and clean up various call-sites as a result.
2011-10-16 18:35:40 +01:00
Torsten Dreyer
3fbbe3134a
new global function for aircraft position
...
add a new function to get the aircraft's position instead
of reading /position/* properties
2011-08-20 08:54:47 +02:00
James Turner
6c52a5ac85
Fixes for include-file flattening - condition.hxx no longer pulls in props or props_io
2011-07-30 10:47:28 +01:00
ThorstenB
dcc8d22f7c
Don't crash on exit, when initialization was aborted.
...
Some errors cause fgfs to abort/exit before "controls" is set.
2011-07-13 21:52:29 +02:00
ThorstenB
88f7c05274
Introduce "PRESERVE" flag to protect properties on sim reset.
...
Some specific properties need protection and shouldn't be restored to their
original values on sim-reset.
2011-06-12 20:31:56 +02:00
ThorstenB
505d4c5219
Do not reset persistent properties on sim-reset.
...
Fixed ugly sim-reset issue: Persistent properties (USERARCHIVE attribute)
are retained across sim sessions (when restarting the sim). So they should
also be retained on sim-resets (without the need to first exit/restart
the sim to make them really persistent).
Also, avoid warning due to read-only properties.
2011-06-12 13:53:14 +02:00
James Turner
c09c0e6941
First attempt at support for loading airport XML files via a command
2011-05-25 00:03:51 +01:00
ThorstenB
f6fde388a2
Untie all TiedPropertyLists before destruction.
...
Untieing needs to be done prior to the destruction of the object which
aggregated the TiedPropertyList. So the TiedPropertyLists destructor can't
untie the properties automatically (and it doesn't). So, do some manual
clean-up.
2011-03-07 19:38:48 +01:00
James Turner
e97eb4db85
Reduce log-level of aircraft-dir related messages.
2010-12-30 09:38:21 +00:00