Commit Graph

901 Commits

Author SHA1 Message Date
Klaus Basan
978fe5eea2 Ref T275, Ref T280 hint for timestamp based list if they are already sorted 2018-06-18 03:04:29 +02:00
Klaus Basan
c5fb428fa9 Ref T280, using the QHash<CCallsign, T> definitions to unify use cases 2018-06-14 14:40:16 +02:00
Klaus Basan
a27f2b3a9c Style, typos 2018-06-13 14:00:21 +02:00
Klaus Basan
bdf58ff538 Ref T275, utility functions to trace request ids 2018-06-13 14:00:18 +02:00
Klaus Basan
bf0db64f65 Improved METAR string building
* use static const arg1s (not always create temp. arg strings)
* use QStringBuilder to concatenate several parts at once
* done during Ref T275, but not really related
2018-06-13 14:00:17 +02:00
Klaus Basan
fe396e19aa Ref T275, interpolator improvements
* flags for same parts/situation status
* transfer elevation (Ref T273) from previous situation
* preset elevation based on network situations if possible
* set elevation info
* function CInterpolator::initInterpolatedSituation
2018-06-13 13:59:59 +02:00
Klaus Basan
6ed541b6ab Ref T243, Ref T273, added info about elevation (where did we obtain it?) 2018-06-13 13:59:52 +02:00
Klaus Basan
b257c693ff Ref T243, Ref T273, improved elevation fetching
* slightly shorter lock time
* transfer elevation from last situation
2018-06-13 13:59:49 +02:00
Klaus Basan
c6f3d4e2f2 Ref T270, mark interpolator as unit test
* if we use "recycled" parts, we have to store also the last status
* mark unit test so "recycling" is disabled
* status flag for "reused"
2018-06-13 13:59:46 +02:00
Klaus Basan
181ed36f3d Ref T270, interpolator optimization by passing aircraft number
Rational: Except for FS9 we interpolate all aircraft in one loop at the same time. This can cause that some steps are always done at the same time for all aircraft of that loop. By passing the number we can more equally distribute such tasks, avoiding peaks.
2018-06-13 13:59:39 +02:00
Klaus Basan
2b9d9027a0 Ref T270, performance improvement by keeping less elevations cached
Rational: the idea was to keep track of ground elevations of all aircraft and hence using them for other aircraft on ground. But the "hit" ratio is bad, so we only keep a small number of elevations ("the last ones") and use those. The size of the cache is dynamically adjusted. Not moving aircraft are still found in that much smaller list.
2018-06-13 13:59:36 +02:00
Klaus Basan
f82010a1da Ref T270, fixes in interpolator
* interpolatedParts already "logs", do not do it twice
* performance: only recalculate "this->remoteAircraftSituationsAndChange(setup)" when there are new situations, not every interpolation step
2018-06-13 13:59:30 +02:00
Klaus Basan
686b27af6e Ref T270, style 2018-06-13 13:59:28 +02:00
Klaus Basan
2923df27e2 Use fully qualified names in signals as there was an unrecognized type with Qt::QueuedConnection 2018-06-13 13:59:21 +02:00
Roland Winklmeier
4aaccb44c3 Cleanup the enabled modules in all sub projects
Most modules were just enabled to add include path for dependent headers
2018-06-02 02:08:46 +02:00
Klaus Basan
7bee8e9ee8 Formatting 2018-06-01 01:30:42 +02:00
Klaus Basan
f7a0c69fc8 Ref T270, push front for sequence and unified "insert" -> "push_back"
Remark: "CSequence::insert" is a synonym "push_back". This makes it clearer that push_back is used.
2018-06-01 01:30:33 +02:00
Klaus Basan
ac87e648ca Ref T270, fixed provider so signals are correctly emitted 2018-05-29 00:56:39 +02:00
Klaus Basan
464c8dfe83 Formatting 2018-05-26 21:19:20 +02:00
Klaus Basan
a3a62919fc Ref T270, improved setup/logger handling
* utility functions to enable logging
* logger access and access to log messages
2018-05-22 13:20:07 +02:00
Klaus Basan
afe4a09218 Formatting 2018-05-18 00:25:10 +02:00
Klaus Basan
50a625d2bc Ref T267, allow to call "convertFromMemoizedJson", but also convert via "convertFromJson"
The variant convertFromMemoizedJson trait did already do something similar, calling "convertFromJson" if the memoized version is not avilable. Now the function also "decides" based on the passed data itself.
2018-05-18 00:25:08 +02:00
Klaus Basan
8bd969105a XSwiftBus install dialog (for local environment)
* can also be called from menu
* improved file check
* renamed some functions
2018-05-18 00:25:02 +02:00
Klaus Basan
4ced6b4f97 Formatting 2018-05-18 00:24:58 +02:00
Klaus Basan
e851934ce8 Ref T261, FSX clamped logging to avoid "status message overflow" if something goes wrong in interpolator.
In interpolator scenarios it can happen plenty of error log messagesa re generated in a short time. This can cause hanging.
2018-05-14 02:27:36 +02:00
Klaus Basan
0f9b275f52 Allow to mark interpolator for unit tests (which can be used to disable some checks) 2018-05-12 21:40:31 +02:00
Klaus Basan
7ad4c29d28 Ref T261, detect gnd.flag (from network) suppport, display gnd.flag info in UI
* add flag info in simulated aircraft
* allow to display info  in UI
* unified naming to "contains" in situation list
* updated client provider
2018-05-12 21:40:13 +02:00
Klaus Basan
6e249aa15d Win x64 compile warning fix 2018-05-12 21:40:11 +02:00
Klaus Basan
23dcccc806 Ref T261, adjusted interpolation setup
* removed "IndexEnableGndFlag" as this is actually part of FSD network settings
* renamed to "isForcingVtolInterpolation"
* adjusted interpolator, and UI for setup
2018-05-12 21:40:09 +02:00
Klaus Basan
3ef18a788a Ref T261, minor adjustment of testAddAltitudeOffsetToSituation 2018-05-08 16:06:56 +02:00
Klaus Basan
2e7e210010 Ref T261, allow to enable/disable "fix scenery offset" via setup
* added UI functions
* fixed setup model
* use setup in interpolator
2018-05-08 16:06:55 +02:00
Klaus Basan
ea585ae166 Ref T261, CAircraftSituationChange improvements
* min/max ground distance, also added in situation list
* use model's vtol/CG info
* improved scenery deviation guessing
* adjusted interpolator scenery deviation handling
2018-05-08 16:06:55 +02:00
Klaus Basan
7aef1dcbbc Formatting and minor tweaks/renamings 2018-05-08 16:06:54 +02:00
Klaus Basan
6d105b9665 Ref T261, make sure the unit is correct in spline altitude interpolation
See slack discussion here https://swift-project.slack.com/archives/G7GD2UP9C/p1525605407000025
2018-05-08 16:06:53 +02:00
Klaus Basan
0808cdb223 Ref T261, further unify interpolator handling
* return interpolation results parts/situation in one step
* base class init for each interpolation step, less redundant code
* removed old interpolation/parts function
* adjusted unit tests and simulator objects (such as SimObject)
2018-05-08 16:06:52 +02:00
Klaus Basan
bac3d14d50 Ref T261, interpolator adjustments
* using interface IInterpolant, renamed to CInterpolant for concrete implmentation
* CInterpolatorPBH has itws own file now, is included
* linear interpolator only re-calculates interpolant when needed (same as spline interpolator)
2018-05-08 16:06:51 +02:00
Klaus Basan
999803bc2e Ref T261, common base class for interpolant 2018-05-08 16:06:51 +02:00
Klaus Basan
d50498fa39 Ref T261, also log. scenery offset 2018-05-08 16:06:51 +02:00
Klaus Basan
2a5261f3f6 Ref T261, interpolator PBH in own file 2018-05-08 16:06:50 +02:00
Klaus Basan
3d2a74a652 Ref T261, interpolator mode is now part of setup
* added attribute in setup
* adjusted UI
* adjusted interpolator / simulator functions
2018-05-08 16:06:49 +02:00
Klaus Basan
eb815ab987 Ref T261, improved value classes 2018-05-08 16:06:49 +02:00
Klaus Basan
ab0c34b16a Ref T261, added toFullJson in parts
* needed, since the "is full" attribute needs to be added
* fixed usage in network vatlib
2018-05-08 16:06:49 +02:00
Klaus Basan
29407d113e Ref T261, encapsulated groundInterpolationFactor
Rational: Less compilation time when need to change
2018-05-08 16:06:48 +02:00
Klaus Basan
2d66fd470a Ref T261, a global altitude offset can be enabled for testing 2018-05-08 16:06:47 +02:00
Klaus Basan
ad10470eb1 Ref T261, improved "finding" for elevation, "findFirst" for small radius 2018-05-08 16:06:47 +02:00
Klaus Basan
6a2f76f4d7 Ref T261, interpolate (spline) from last interpolated situation -> new situation whenever interpolant is recreated.
Prefill functions for "m_s" values.
2018-05-08 16:06:46 +02:00
Klaus Basan
7db8823770 Ref T261, interpolator changes
* use CAircraftSituationChange
* recalculate interpolant if situation changed (due to elevation update)
* keep extra info string for debugging
* improved situation checking
2018-05-08 16:06:46 +02:00
Klaus Basan
9c7134ff56 Ref T261, setup support for isNull 2018-05-08 16:06:45 +02:00
Klaus Basan
46f509c367 Ref T261, logger support for situation change 2018-05-08 16:06:44 +02:00
Klaus Basan
adeea182da Ref T261, provider support for CG/elevation update 2018-05-08 16:06:44 +02:00