1
0
Fork 0
Commit graph

8502 commits

Author SHA1 Message Date
James Turner
8aba04c3a2 Reset: change FDM ownership
- make the FDM owned via a SGSharedPtr
- drop some property references explicitly.
2013-12-01 21:37:17 +00:00
James Turner
8bcf597086 Remap JSB-sim debug levels from SG_LOG levels.
(Avoids the entire aircraft config being dumped to the console at
log-level info)
2013-12-01 21:37:16 +00:00
Clément de l'Hamaide
efdb488736 Fix accent bug in MapWidget 2013-12-01 18:50:54 +01:00
Thomas Geymayer
e8f4e25c8c CanvasWidget: get new GUI camera on reset. 2013-12-01 12:58:17 +01:00
Thomas Geymayer
bf477ba678 Canvas GUI: completely reset on reinit 2013-12-01 01:35:30 +01:00
bcoconni
b996eca299 Fix for bug #1238: the accelerations, velocities, etc. are now updated to a consistent set of values prior to exiting the trim routines. 2013-11-29 19:37:39 +01: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
James Turner
4dcd96c4af Remove dependency on command-mgr singleton
Use explicit instance (from globals)
2013-11-25 09:14:46 +00:00
bcoconni
69baf3a9d6 Synchronized with JSBSim/CVS 2013-11-24 20:12:17 +01: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
77075a2d66 Cocoa: more Function-key shortcuts in menus 2013-11-24 17:25:02 +00:00
James Turner
d99109c9e4 Reset: do re-init Ghost bindings. 2013-11-24 15:10:00 +00:00
James Turner
57c9ed1ae3 Cocoa menu fixes for reset 2013-11-24 15:10:00 +00: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
Thomas Geymayer
42ab4fd222 Canvas/GUI: add/remove placement factories on init/shutdown. 2013-11-24 15:50:44 +01:00
James Turner
af6095c5d1 Reset: do general init on reset path 2013-11-22 22:52:33 +00:00
James Turner
0fbc448af0 Nasal changes for reset
- reduce use of global context (will die soon)
- replace static wrappedNode ref which breaks reset
2013-11-22 22:52:33 +00:00
James Turner
c3c0f68f76 NavData: can refresh some in-place.
(Hacking to support faster scenery-path switching)
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
1f699984e9 One more Mac helper moved into CocoaHelpers.mm 2013-11-19 22:01:11 +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
2331956539 One more Mac helper moved into CocoaHelpers.mm 2013-11-18 15:52:30 +00:00
James Turner
8b4b49cad2 Read-only mode fixes. 2013-11-18 15:40:14 +00:00
James Turner
2455d86d8b Fix a propObj -> node conversion bug.
Thanks to Bertrand Coconnier for spotting this.
2013-11-18 08:40:34 +00:00
Clément de l'Hamaide
2d145e072e FGCom built-in: restore speaker volume settings 2013-11-17 23:37:37 +01:00
janodesbois
6afc17a763 static.cxx msvc bug correction. 2013-11-17 17:26:56 +01:00
Eric van den Berg
8770e61d1b static port can be side-slip/alpha dependant, to add a part of total
pressure on the reported static pressure.
2013-11-16 23:21:11 +01: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
fe357ba2a9 Refactor aircraft-dir visiting.
Cap maximum depth to avoid bug 865
2013-11-16 14:24:37 +00:00
James Turner
d2962ffb2d Reset: refactor static CameraGroup ownership 2013-11-16 13:02:47 +00:00
James Turner
98078cdd55 Reset: make fgSetDefaults non-static. 2013-11-16 13:02:43 +00:00
James Turner
88aef8caf8 Reset: guard against picks during re-init 2013-11-16 12:28:56 +00:00
James Turner
0191b597e7 Environment manager: use aircraft_pos helper 2013-11-16 12:28:51 +00:00
James Turner
b4b0d635bd Reset: AIbase, drop references 2013-11-16 12:10:53 +00:00
James Turner
780393e2fe Release property refs on shutdown. 2013-11-16 11:56:42 +00:00
James Turner
fecb475145 Refactor Cocoa helpers.
Change away from using deprecated FSFindFolder.
2013-11-16 10:58:17 +00:00
James Turner
ea822a99e1 Fix some warnings identified by Clang
_ unused private members. Removed in most cases, commented
out in a couple of cases where it feels as if the code might be used in the future.
2013-11-16 09:41:33 +00:00
James Turner
2bff8d2220 Fix Linux build
Linux needs explicit includes for open() and flags.
2013-11-16 09:31:18 +00:00
James Turner
0cda3cbfb2 Multiple-instance support.
Write PID file to FG_HOME, use this to detect multiple launches.
When this situation is detected, set a marker property and place various
objects into read-only mode, such as the NavCache and TerraSync.

PID file is created using open+unlink semantics on POSIX, and 
DELETE_ON_CLOSE on Windows, so it will be removed when fgfs exits,
even if killed or crashes.
2013-11-15 21:04:15 +00:00
James Turner
13d5fd4c25 More tweaks for Linux.
(Needs explicit include of stdio, and stdarg in the header)
2013-11-14 23:32:02 +00:00
James Turner
ef55d175dd Linux needs stdarg.h for va_args 2013-11-14 23:14:51 +00:00
James Turner
1f7fdc3e07 Kill some archaic options. 2013-11-14 23:14:46 +00:00
bcoconni
139af0026f Synchronized FG with the removal of 'using std::*' in simgear's easyxml 2013-11-14 22:07:50 +00:00
James Turner
1db9d25f56 Translation helpers, add global functions.
These are designed for compact access to translations, including a
positional printf.
2013-11-14 22:03:00 +00:00
James Turner
136cd6ac51 Message box support.
This allows us to display a platform-native dialog for problems
which occur early in startup (before we can show a PUI/Canvas dialog).

In particular this improves feedback where FG_HOME, FG_DATA or
aircraft selection is wrong, all of which happen very early in startup.
2013-11-14 22:02:29 +00:00
Clément de l'Hamaide
7e90c8aa2b Force 32 bits depth on .ico - only for Windows 2013-11-14 21:24:56 +01:00
James Turner
e25aa4f004 Fix some static property references.
(These cause problems when replacing the property tree during reset)
2013-11-14 16:37:46 +00:00
Clément de l'Hamaide
1c49890bec Icons update 2013-11-13 22:49:07 +01: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
44246d7708 Reset: adjust for tweaked TerraSync API 2013-11-12 23:10:19 +00:00
James Turner
af40bcb60e Reset: explicit close-window function.
Allow orderly shutdown of OSG before cxa_finalize
2013-11-12 22:57:13 +00:00
James Turner
58fa30b24d Reset: uninstall deletion-manager 2013-11-12 22:55:50 +00:00
James Turner
72b85b28da Reset: route-manager guard against no plan. 2013-11-12 22:55:36 +00:00
James Turner
e008f610d1 Reset: ATIS shutdown fix 2013-11-12 22:51:23 +00:00
James Turner
41eaa58c13 Reset: panel-node cleans up listener.
Also get rid of the global FGPanelNode pointer.
2013-11-12 22:51:15 +00:00
James Turner
2322fca9c9 Reset: guard against NULL HUD / lighting 2013-11-12 22:51:10 +00:00
James Turner
6eb4e833ae Reset: sound manager can be shutdown cleanly 2013-11-12 22:50:18 +00:00
James Turner
9a77efacd9 Reset: drop FGLight prop refs on unbind() 2013-11-12 22:49:48 +00:00
James Turner
0751556aab Reset: remove commands 2013-11-12 22:47:46 +00:00
James Turner
069a098909 Reset: use simple properties for TimeManager 2013-11-12 22:47:45 +00:00
James Turner
881df711ba Reset: Nasal can be shutdown.
Also guard against duplicate init of cppbind wrapped classes.
2013-11-12 22:47:41 +00:00
Thomas Geymayer
accdf97785 Allow disabling embedded nasal (load/unload scripts). 2013-11-10 23:32:47 +01:00
James Turner
af6131b556 Bug 1246, Nasal repeating timers fire immediately.
Initial delay is passed separately to interval in the
API, oops.
2013-11-09 08:01:57 -08:00
James Turner
23fa13c76b Bug 1023, crash on replay.
Fix by Jeff Biggs, commit 7d80b30d28baccf80958d9db488364a9a5c3884b from osgearth branch.
2013-11-09 07:13:00 -08:00
Eric van den Berg
49131b5a7a pitot system stalls at high angles, using /system/pitot[x]/stall-deg 2013-11-08 20:18:27 +01:00
James Turner
8622661237 Further tuning of arg->num conversion. 2013-11-07 06:29:58 -08:00
James Turner
0d740bcfae Simpler Nasal for leg constraints.
Thanks to Philosopher for the suggestion.
2013-11-06 16:58:09 -08:00
James Turner
f0011bc759 Nasal: accept strings-containing-ints as
arguments to leg altitude/speed constraints.
2013-11-06 15:50:13 -08:00
Torsten Dreyer
6a09f01ca9 mag-compass: add deviation table and pitch property 2013-11-05 22:26:50 +01:00
Thomas Geymayer
4c9ab24b66 Keep ref_ptr in FGNasalModelData (should fix #1234) 2013-11-01 20:52:55 +01:00
janodesbois
636b6ca767 pitot adapted to /velocities/mach being the mach norm 2013-10-31 22:29:47 +01:00
janodesbois
d83bc90ca0 Revert "pitot tube using velocities/mach as mach norm, not the u componant"
pushed a testing patch, need to learn a good workflow ...
This reverts commit 05fa7130fc.
2013-10-31 22:27:29 +01:00
janodesbois
05fa7130fc pitot tube using velocities/mach as mach norm, not the u componant 2013-10-31 20:28:12 +01:00
janodesbois
78301e95b4 make YASim report /velocities/mach as the speed's norm 2013-10-31 20:25:08 +01:00
janodesbois
00aacd6442 Revert "JSBSim fix: /velocities/mach was reported as totale mach speed"
This reverts commit 4dde865cbc.
2013-10-31 20:21:13 +01:00
James Turner
02a5261797 Reset: GUI can be shutdown. 2013-10-29 23:02:46 +00:00
James Turner
e62a4f502a Reset: AI shutdown unbinds AIbase instances. 2013-10-29 23:02:22 +00:00
James Turner
71a8eac8bd Reset: view manager can be be shutdown. 2013-10-29 23:02:15 +00:00
James Turner
ad7a3e854d Reset: TimeManager can be unbound. 2013-10-29 23:01:58 +00:00
James Turner
06db85f42b Reset: given FGScenery a shutdown method.
Forces OSG branch references to be dropped.
2013-10-29 23:01:48 +00:00
James Turner
a488086d30 Reset: use a smart point for model-placement. 2013-10-29 23:01:38 +00:00
James Turner
75a01aa588 Reset: ensure Wx controller destroys cleanly. 2013-10-29 23:01:29 +00:00
Torsten Dreyer
35dad8c4c4 generic binary protocol: add 'word' datatype
this patch adds support for binary datatype word (aka int16)
now we have int (32bit), word (16bit) and byte (8bit) integer types
2013-10-28 22:57:22 +01:00
Clément de l'Hamaide
1970a8e0a8 FGCom: allow ulaw codec too 2013-10-28 21:56:27 +01:00
janodesbois
4dde865cbc JSBSim fix: /velocities/mach was reported as totale mach speed
should be the U axis component (machU)
2013-10-28 05:48:53 +01:00
Thomas Geymayer
ce09c320d3 HTTP: Rename urlretrieve/urlload to save/load. 2013-10-27 23:39:52 +01:00
Thomas Geymayer
cf270bde22 Expose HTTP module to Nasal. 2013-10-27 19:39:22 +01:00
Thomas Geymayer
8a582e6376 Update/refactor for simgear HTTP changes. 2013-10-27 19:39:22 +01:00
janodesbois
f08ea4a7bb velocities/u,v,wbody-fps are exposed in the property tree for the mp planes, extracted from motionInfo 2013-10-27 19:32:58 +01:00
janodesbois
a6030bc9ce forgot a .hxx modif in larcSim for bug 202 2013-10-27 14:51:19 +01:00
James Turner
4e7a22f589 Default to 32-bit color buffers.
Requesting 16-bit is probably doing more harm than good on modern
hardware. Command line switch to change works as before.

Also update the default window size, although this is actually
set by preferences.xml
2013-10-27 13:03:01 +00:00
James Turner
c72ac27098 Experimental sorter for airports.
Sort by size (cumulative runway length).
2013-10-27 13:03:01 +00:00
janodesbois
ef1ec369db gsdi correction, wind correction is not needed anymore, as wind composant was removed from u,v,wbody-fps 2013-10-27 13:24:57 +01:00
janodesbois
ecfdf354f1 considering u,v,wbody-fps are the ECEF velocity expressed in body axis, change in all functions/variables name dealing with them, wrongly named with wind, or even north, east, down. 2013-10-27 13:24:54 +01:00
James Turner
d127f7709f Remove confusing reference to SDL/GLUT 2013-10-26 21:12:57 +01:00
James Turner
3cdf948c8b SGI and Borland compilers are gone. 2013-10-26 21:11:02 +01:00
James Turner
6bd2acab78 Window console changes
- default to SUBSYSTEM:WINDOWS (we can still AllocConsole if needed)
- add --console option to get a console on Windows
- ensure --show-aircraft and --help modes show the console automatically.
2013-10-26 21:07:23 +01:00
James Turner
cc23e29ef0 Fix warning 'AI Aircraft without FlightPlan'
Remove the false warning when using AI Aircraft without a flightplan.
This is (it turns out) a supported use case.
2013-10-26 18:45:27 +01:00
James Turner
e93dc27153 Tweaks to startup configuration handling
- restore-defaults kills the nav cache, terra-sync cache
- new ignore-autosave option bypasses autosave.xml and leaves it
  untouched (does not over-write on exit)
2013-10-26 18:29:31 +01:00
Clément de l'Hamaide
d5b70e98e0 FGCom[-sa]: add IAX denoiser and auto gain + set silence threshold 2013-10-26 13:18:08 +02:00
Clément de l'Hamaide
3952ab6fe5 FGCom: remove unecessary assignation value 2013-10-26 01:48:31 +02:00
Clément de l'Hamaide
428f9031aa FGCom: make COM1 and COM2 switchable with Shift+Space 2013-10-26 01:28:05 +02:00
James Turner
5c97b7e713 Change tooltips to enable explicit.
Instead of using a negative delay to disable, make the setting
operate directly. This simplifies UI on top.
2013-10-25 09:18:59 +01:00
James Turner
81e86f5b20 Pause popup respects the preference. 2013-10-24 23:23:01 +01:00
Clément de l'Hamaide
6332693ae5 FGCom: use Speex codec instead of GSM codec 2013-10-24 12:14:31 +02:00
Thomas Geymayer
c4f02cc41e Fix for #1244 (Canvas placements with pick animation). 2013-10-24 01:30:54 +02:00
Thomas Geymayer
961905a6cf NasalCanvas: expose Element::getParent() to Nasal 2013-10-23 17:11:56 +02:00
James Turner
2f51052860 FGCom: initialise some variables.
Avoid a crash on re-init where _initialized member was never set.
2013-10-23 09:38:16 +01:00
Torsten Dreyer
60575c3b8c generic protocol: another attempt to make MSVC smile 2013-10-22 21:02:06 +02:00
Torsten Dreyer
6b75b23309 generic protocol: don't rely on GNU extension 2013-10-22 14:17:35 +02:00
James Turner
47ecc0ce29 Fix an MSVC debug crash.
Ensure the route-manger unregisters itself from the flightplan
on destruction, since it is a delegate.
2013-10-21 23:38:01 +01:00
James Turner
6845ff56f3 Fix download rate on splash screen. 2013-10-21 23:04:23 +01:00
Torsten Dreyer
baebc9b64c Add protocol wrappers to the generic protocol
This adds two wrappers to the generic protocol to help interfacing
small microcontrollers (arduino et. al.)
When receiving binary data over a sequential link, it's hard to tell where a packet
starts and where it ends. Two existing solutions gets implemented with this patch:
KISS (http://www.ka9q.net/papers/kiss.html) originally developed for ham radio
packet radio devices and STX/ETX byte stuffing.
This adds only the OUT direction, IN will be implemented over the next weeks.

For implementation details on the client (microcontroller's) side, check out
http://gitorious.org/flightgear-pmpt/cmpt/

This implementation is used in the c172fg project to be presented at FSweekend 2013.
2013-10-21 20:43:22 +02:00
James Turner
b30408b862 Fix bug 1227, cache thrash on Win.
Since we skip POI load on Windows, we also need to
omit the stat check. Apologies for the dumb mistake.

(Will back port to 2.12 branch)
2013-10-21 13:26:08 +01:00
James Turner
e3841fc9ef Fix typos. 2013-10-20 20:46:40 +01:00
James Turner
38193d7843 Support explicit aircraft interior models.
- allow multiple model files in the -set.xml specification
- allow each model to be tagged with a usage string
- put models tagged 'interior' into a LOD group.

This is experimental, the LOD ranges will be made configurable soon.
2013-10-20 20:46:33 +01:00
Thomas Geymayer
771586854b Make build information readonly and clean up debug output. 2013-10-20 12:59:44 +02:00
James Turner
46e8c65612 Expose OSG notify severity at runtime.
Define a new property /sim/rendering/osg-notify-level and listen
to it, so we can update the notification level at run time.
2013-10-20 09:44:38 +01:00
James Turner
80fb317eeb Don't speak < or > when using Festival.
Patch from HomerJ, avoid sending some additional special
characters to Festival, which renders then as 'greater than' /
'less than'.
2013-10-20 09:43:48 +01:00
Thomas Geymayer
e4b8e1ea07 Trigger segfault/stacktrace to trace memory corruption.
Catch OSG error message if osg::Reference derived class
is deleted with non-zero reference count and trigger a
segfault to get a stack trace.
2013-10-20 01:26:32 +02:00
Thomas Geymayer
6b88302037 Provide debug information on thread safety of osg::Referenced. 2013-10-19 01:20:28 +02:00
James Turner
1e746500dd Validate arg to Nasal airport.comms().
Thanks to HomerJ for the catch.
2013-10-18 15:54:44 +01:00
James Turner
f6fafffeb5 Initial hacking on terra-sync of traffic files. 2013-10-17 17:33:30 +01:00
Thomas Geymayer
b35119d408 FGNasalModelData: also log path of model. 2013-10-17 13:29:38 +02:00
Thomas Geymayer
d27919cd16 More logging for FGNasalModelData. 2013-10-17 11:48:01 +02:00
Thomas Geymayer
5c38395395 NasalSys: do not print invalid elements for error backtraces. 2013-10-16 23:41:38 +02:00
James Turner
f499913762 Map shows all airports when zoomed in.
Bug 1135, or part of it.

(Ignore the short-runway culling when zoomed in)
2013-10-15 22:28:10 +01:00
James Turner
a45e3d1d07 Bug 1217, crash on AI traffic data.
Guard against flight plans with missing airport
information.
2013-10-15 22:27:19 +01:00
James Turner
386d87e098 Cleanup exit handling.
Replace many lingering calls to exit() from the code,
replacing most with exception throws, which can be
caught by the existing mechanisms.

Update the option-parsing code to return an explicit
value indicating what to do (e.g., exit status to return
to the shell).
2013-10-15 22:16:50 +01:00
James Turner
78f2f2f142 Work-around for issue 1231.
Force sglog() to be initialised before at exit
handler is registered, so logging can be used from
inside our exit handler.
2013-10-15 22:02:36 +01:00
Thomas Geymayer
26a3573aea Update/simplify for SimGear changes. 2013-10-15 17:48:13 +02:00
Thomas Geymayer
5c42071fbb Scripting: get rid of gcHash and use new SimGear/Nasal functions. 2013-10-15 00:58:21 +02:00
ThorstenB
7ce2107336 Add support for IGC logging protocol.
Many light aircraft include GPS loggers capable of recording the flight
path using IGC records. Lots of third party utilities are available to
analyze, process and convert igc files.
Usage: "fgfs --igc=file,out,1,OutputFile.igc"
2013-10-14 22:13:31 +02:00
Thomas Geymayer
df7e56b049 Canvas: update for SimGear changes. 2013-10-12 00:43:30 +02:00
Dirk Dittmann
778cc8c6a0 GPS
- greatCircleCrossTrackError added to LegWayptCtl, DirectToController, OBSController
	- config overflight seqence
		config/over-flight-arm-angle-deg	90
		config/over-flight-arm-distance-nm	1
		config/over-flight-distance-nm		0
2013-10-03 18:08:02 +02:00
James Turner
761b4835f9 Make positioned queries more defensive.
Validate the filter type range, to avoid crashing on bad ranges.
Accept arbitrary type lists in the Nasal API for searching by distance
2013-10-02 22:28:19 +01:00
James Turner
b2759d018b Fix a crash with GPS dialog.
If an invalid filter type is supplied, don't run the queries.
This showed up with GPS dialog, since the PUI combo box defaults to
no entry selected, not the first entry.
2013-10-02 22:08:17 +01:00
James Turner
f5b352429c Bug 1176, crash loading malformed scenario.
http://code.google.com/p/flightgear-bugs/issues/detail?id=1176

Don't crash if a scenario specifies a missing or invalid flightplan
(check the flightplan is valid before setting it)
2013-10-01 19:57:07 +01:00
James Turner
cc37e31ac9 Move cache schema into its own file. 2013-09-30 21:55:43 +01:00
James Turner
ad4834c651 Splash-screen feedback on scenery download. 2013-09-30 16:36:13 +01:00
James Turner
cb087dc4de Tile-manager: kill off tile-refresh.
Now the manager waits on terrasync, we never need to do the 
'experimental' refresh feature, since we only load finished tiles.
2013-09-30 12:07:35 +01:00
James Turner
e03ebef99f Tile-Manager waits on TerraSync to load.
Using a new TerraSync API, make the tile manager wait on actively
syncing tiles before sending them to the SceneryPager. This resolves numerous
issues with missing tiles, including at startup.
2013-09-30 12:03:47 +01:00
James Turner
52e5a9abe8 Reduce amount of log output at level=debug. 2013-09-28 14:47:20 +01:00
James Turner
ff7c280d57 Fix portability issue with system sqlite 3.8 2013-09-28 14:34:01 +01:00
James Turner
97d89a0c47 Remove all references to libsvn from build. 2013-09-28 14:15:47 +01:00
James Turner
1a9e479e2a Terrasync tweaks.
- Enable the terrasync persistent cache
- Ensure terraysync scenery dirs exist before NavCache init, so the paths are stable
- Notify TerraSync on reposition, so we sync the full 3x3 set of tiles.
2013-09-28 14:07:45 +01:00
James Turner
dfa1353a8a Kill another BOM. 2013-09-27 18:06:18 +01:00
James Turner
c55849d644 Remove UTF-8 BOM.
Seems to be upsetting the compiler on Jenkins.
2013-09-27 17:08:36 +01:00
Clément de l'Hamaide
c022bb8d51 Move IAXClient library into 3rdparty directory
Remove ENABLE_IAX option
Add an improved FGCom standalone as part of FG in utils directory
2013-09-27 16:05:45 +02:00
Torsten Dreyer
8d415eafa3 make the metar command line tool case insensitive 2013-09-26 16:49:27 +02:00