1
0
Fork 0
Commit graph

16046 commits

Author SHA1 Message Date
James Turner
7d2955347e Initialize a pointer to null. 2021-12-25 13:40:26 +00:00
James Turner
eb82084c53 Remove custom FindOpenAL.cmake
Adjust IAXClient OpenAL backend so we can use the standard CMake
finder for OpenAL (or OpenAL-soft).
2021-12-25 13:40:26 +00:00
James Turner
5b537a176e Adjust EnvironmentMgr API to avoid copying
getEnvironment encouraged pass-by-value of FGEnvironment
which is heavy and mostly unnecessary.
2021-12-25 13:40:25 +00:00
James Turner
a12a7e9bec Autopilot code tweaks
Move config.h include to correct place, and use
override instead of virtual in a few places.
2021-12-25 13:40:25 +00:00
Erik Hofman
6414df325d Cope with SGPropertyNode::getStringValue() now returning std::string by value. 2021-12-25 12:56:49 +01:00
Scott Giese
a993ff7ccb Revert "APT.DAT version 810 and 850 are both obsolete."
This reverts commit 913eb83e10.
2021-12-25 02:16:40 -06:00
Julian Smith
ee4d97097c src/Aircraft/continuous.cxx: reduced a diagnostic. 2021-12-24 14:49:06 +00:00
Roman Ludwicki
82f967ab92 Cope with SGPropertyNode::getStringValue() now returning std::string by value.
This is by Lars Toenning <dev@ltoenning.de>, Roman Ludwicki <romek21@op.pl> and
SDeAstis <salvatore.deastis@gmail.com>, in 2021 Hackathon.

Also cope with removal of SGPropertyNode::getName() - use getNameString()
instead.
2021-12-24 14:49:06 +00:00
James Turner
4bcfe6cd64 Follow SimGear OpenAL-soft behaviour
When Simgear is using OpenAL-soft, follow its behaviour for
IAXClient.
2021-12-24 13:27:25 +00:00
James Turner
93d278d63a ATC: use owning ref for AIAIrcraft
Avoid a crash where the raw pointers in AcitveRunway become
stale; use a real owning ref-ptr instead.
2021-12-24 13:06:10 +00:00
Florent Rougon
63df3351db Fix for --view-offset
Make --view-offset set /sim/view[0]/config/heading-offset-deg instead of
/sim/current-view/heading-offset-deg. Setting the latter has no effect
because of what flightgear::View::createFromProperties() does when it
initializes flightgear::View::View. This was discussed at [1].

[1] https://sourceforge.net/p/flightgear/mailman/message/37406317/
2021-12-24 08:58:49 +01:00
Scott Giese
913eb83e10 APT.DAT version 810 and 850 are both obsolete.
Remove 810 parsing.
Eliminate version strings from method names and messages.
2021-12-22 23:55:38 -06:00
Scott Giese
eefd878529 AirportBuilder: missing header guard corrected. 2021-12-22 23:50:37 -06:00
Erik Hofman
930ed00ba9 Adjust friction factors and bumpiness when the material is a lake and frozen solid. For JSBSim take precipitation and temperature into account, YASim is a bit simpler. 2021-12-22 14:38:17 +01:00
Erik Hofman
f287bd9133 Set the inland-ice property when the mean ground temperatures get low enough 2021-12-21 10:31:37 +01:00
Erik Hofman
dbba5d9ad2 Read annual precipitation fro the blue channel 2021-12-20 11:44:55 +01:00
James Turner
c3beaee307 Launcher: fix a lingering season reference 2021-12-19 18:44:21 +00:00
Julian Smith
ef38e07c61 src/Time/TimeManager.cxx: support fixed-dt when not in simple-time mode. 2021-12-19 16:34:28 +00:00
Julian Smith
cb7343eb35 src/Time/TimeManager.*: fixed simple-time indeterminism that could cause hang on startup.
_simple_time_fdm was not being initialised, which was causing occasional hangs
on startup. So set to zero in constructor and TimeManager::init().

For simplicity, we also initialise all other basic type state in the
TimeManager class.

If _simple_time_fdm's starting value happens to be very large (e.g. 1e228),
_simple_time_fdm + fixed_dt would result in _simple_time_fdm, so we would end
up always setting simDt and realDt to zero.

This stops SGEventMgr from processing any events, which means that
initPosition()'s event to call finalizePosition() is never processed so
/sim/position-finalized is stuck on false, which results in the FDM never
setting /sim/fdm-initialized.
2021-12-19 15:57:16 +00:00
James Turner
5f66ffc96b Disable Sentry if init fails
This will fix other uses of the APi blocking because the backend
failed to start. Enable debug logging in non-release builds so
it's obvious when the deploymenty is not configured right.
2021-12-19 12:39:23 +00:00
PlayeRom
271073d869 Remove 'Season' option from Qt Launcher 2021-12-19 11:45:58 +00:00
Bertrand Coconnier
a49f865515 Avoid spurious error messages when the property is already untied. 2021-12-18 17:32:59 +01:00
Gonzalo Pesquero
8d4bd24235 Modified AircraftRating item width 2021-12-17 12:49:50 +00:00
Julian Smith
c4c29f33d4 src/Input/FGLinuxEventInput.cxx: don't throw if we cannot open device.
Throwing halts execution; we now output a diagnostic and return false, and
flightgear appears ok to continue.
2021-12-09 23:09:52 +00:00
Julian Smith
f3ef077730 scripts/python/recordreplay.py: allow use on Windows.
Python module 'resource' is not available on Windows.
2021-12-08 21:18:01 +00:00
Julian Smith
c73b1c237e scripts/python/video.py: new, for testing video encoding. 2021-12-08 21:18:01 +00:00
Julian Smith
5ef60c33c6 src/Network/props.cxx: with key=value, allow value to contain '='. 2021-12-08 21:18:01 +00:00
Julian Smith
a98325e9d1 src/Aircraft/replay-internal.cxx: include file size in tape preview information. 2021-12-08 21:18:00 +00:00
Julian Smith
dd9f4ac890 src/: fail --load-tape-create-video if video encoding fails.
Also fail video encoding if output file already exists.
2021-12-08 21:17:45 +00:00
Julian Smith
dd7cbf56cc src/Aircraft/: interpolate view properties when replaying.
This might avoid some uneven changes to viewing angle when replay frame rate
differs from recording frame rate.
2021-12-08 21:17:16 +00:00
Julian Smith
1ffc9fb6bf Added support for auto video creation when replaying Continuous recordings.
If specified we start video encoding when replay starts, and stop video
encoding when we reach recording end.

This is supported with --load-tape on the command line and from the 'Load tape'
dialogue.

src/Aircraft/continuous.cxx
src/Aircraft/continuous.hxx
    If stopping replay with auto create video, then stop video encoding and
    restore original /sim/time/fixed-dt if we changed it.
src/Aircraft/replay-internal.cxx
src/Aircraft/replay-internal.hxx
    When starting replay, call view_mgr->video_start() and set
    /sim/time/fixed-dt if specified.
src/Aircraft/replay.cxx
src/Aircraft/replay.hxx
    loadTape(): added bool create_video and double fixed_dt args.
src/Main/options.cxx
    Added new command-line options --load-tape-create-video and
    --load-tape-fixed-dt=<double> to allow auto create video and fixed-dt when
    replaying.
2021-12-08 21:15:49 +00:00
Julian Smith
6d3254647a Refactoring of record/replay code.
The main FGReplay subsystem class now contains just the public API for
record/replay, plus a pointer to instance of new ReplayInternal implementation
class. Also moved some Continuous-specific code into new source file.

src/Aircraft/CMakeLists.txt
    Updated for new files.
src/Aircraft/continuous.cxx
src/Aircraft/continuous.hxx
    New, code specific to Continuous record/replay.
src/Aircraft/flightrecorder.hxx
    Minor changes.
src/Aircraft/replay-internal.cxx
src/Aircraft/replay-internal.hxx
    New, contains implementation of record/replay.
src/Aircraft/replay.cxx
src/Aircraft/replay.hxx
    Modified to be just concerned with public record/replay API. The
    implementation now defers to the ReplayInternal instance. Added support for
    auto create-video when loading Continuous recording.
src/Main/fg_init.cxx
    resetStatisticsProperties() is now in FGReplay, not FGReplayData - the
    latter is not in the replay.hxx header any more.
2021-12-08 10:43:14 +00:00
Julian Smith
c1a34ac4ce Added support for generating compressed video.
Uses simgear::VideoEncoder().

Added video-start and video-stop commands. We allow specification of container,
codec, quality, speed and bitrate.

src/Main/fg_commands.cxx
    Added video-start and video-stop commands.
src/Viewer/viewmgr.cxx
src/Viewer/viewmgr.hxx
    Added video_start() and video_stop().
2021-12-08 10:42:50 +00:00
Julian Smith
69344c29c0 src/Viewer/CameraGroup.*: give const access to 'CameraList _cameras;' member.
E.g. this allows callers to find Compositor(s) owned by CameraGroup.
2021-12-08 10:41:58 +00:00
Julian Smith
a77eabb9dc src/Time/TimeManager.*: in simple-time, added support for fixed fdm increment.
If in simple-time mode and /sim/time/fixed-dt is non-zero, we always increment
FDM time by fixed amount each frame, regardless of frame rate. Allows creation
of high quality videos even on slow hardware.
2021-12-08 10:40:28 +00:00
Julian Smith
3bda847f65 src/Time/TimeManager.*: added /sim/frame-number.
Useful for testing.
2021-12-08 10:40:28 +00:00
Julian Smith
b0f0700b19 src/Main/options.cxx: allow bool options to be disabled if set to 0 or false.
E.g. --disable-splash-screen=0 will not disable the splash screen.
2021-12-08 10:40:28 +00:00
Julian Smith
77c362a9d4 src/AIModel/: fixed some compiler warnings
src/AIModel/AICarrier.cxx
    Avoid warning about unused angle_tdp variable.
src/AIModel/AIFlightPlanCreate.cxx
    Increased a buffer size that was giving warning with snprintf(). Also
    always use sizeof(buffer) instead of duplicating the explicit size.
2021-12-08 10:40:28 +00:00
Julian Smith
05cb7fc2be docs-mini/README-recordings.md: fixed typo. 2021-12-08 10:40:27 +00:00
Julian Smith
d81445a3bb Improved some exception diagnostics. 2021-12-02 00:34:02 +00:00
Gonzalo Pesquero
04722ce9f6 Add translations on splash screen 2021-12-01 12:23:33 +00:00
Gonzalo Pesquero
cf5b724776 Add missing translation calls in aircraft download panel 2021-11-20 23:30:21 +01:00
Bertrand Coconnier
e5fe747662 Sync'ed with JSBSim v1.1.10
- Fixed an error which prevented the equatorial and polar radii from <planet> to be propagated to the initial conditions.
- The planet radii in <planet> can now be specified by the tags <equatorial_radius> and <polar_radius> which are more self explanatory than <semimajor_axis> and <semiminor_axis> (which are still valid).
- Improved the error messages returned by FGTable: the file name and line number where the error occurred are now printed.
- Check the number of <input> tags for flight controls such as <pure_gain> (GitHub issue #497). This avoids a crash when some or all <input> elements are missing.
- JSBSim now accepts 2 sign conventions for the cross product inertia (xy, xz, yz) in <mass_balance> (GitHub Pull Request #502). The sign convention is specified by the parameter negated_crossproduct_inertia which defaults to true for backward compatibility.
- Turbine engines can now windmill even before they start (GitHub issue #494 and Pull Request #509).
- Fixed a sign error in the computation of aero/h_b-mac-ft (GitHub Pull Request #508 )
- Fixed a bug where FGTable instances were not untied from the property manager during their destruction. This could lead to segmentation faults when the property manager was later destroyed.
- Exceptions raised by FGTable are now instances of the TableException class.
2021-11-20 18:23:34 +01:00
Julian Smith
5023e9786a Highlighting: cope if Highlight subsystem is not present.
This should allow things to run ok if globals->get_subsystem<Highlight>()
returns null, e.g. in a unit test or similar.
2021-11-20 17:15:58 +00:00
Julian Smith
77b4e6a713 Highlighting: changed implementation to use camelCase for method names. 2021-11-20 16:53:22 +00:00
Julian Smith
3b5bd7a5ff Highlighting: changed FGInterface::property_associations() callback to use std::function.
Replaces previous function pointer plus void*.
2021-11-20 16:53:22 +00:00
Julian Smith
0c6f4983dc Highlighting: use camelCase for method names in Highlight API. 2021-11-20 16:53:22 +00:00
SDeAstis
493a9fa60d Modified Cmake and bootstrap to porperly support exclusion of Sentry.io 2021-11-18 16:20:08 +00:00
James Turner
aad67cdad9 Test Nasal trunc/floor/round 2021-11-16 11:00:35 +00:00
portree_kid
6320c06e6b Stuck AI Aircraft wenn entry to runway > 105m 2021-11-16 08:38:29 +00:00