Crash handler launches an external crash handler executable called
swift_crashpad_handler. It monitores the parent process and produces
a local dump in case of a crash.
For release builds, the dump is also uploaded to a crash report server.
refs #490
When a plugin is loaded, existing aircrafts should not be added
immediatly, but as soon as the simulator is simulating.
CContextSimulator also handles now the case that no simulator is
attached and all aircraft slots are now doing nothing instead of
raising an assert.
refs #549
* view already filter incomplete data
* as result, info object count values are aligned with data eventually parsed (which will allow to detect changes by comparing counts)
* smaller adjustments to allow airlines with designator
CPluginManagerSimulator::createListener returns nullptr if no
listener could be created, e.g. because the plugin could not be loaded
due to missing dependencies. Handle this scenario properly instead of
raising an assert.
refs #669
Change MetarSet to MetarList:
CMetarSet was implemented as a collection. This only makes sense for values which have one member variable only or hardly ever change. METARs often change and therefore a collection didn’t make much sense.
Additional profiling showed that a sequence has better algorithmic performance.
* removed reverse lookup and moved to matcher
* encapsulated update/adding of thread safe members (remove number of places where lock is obtained)
* removed unused METAR slot
* query FSD values encapsulated
* added functions to callsign / callsign list
* used in aircraft matcher
* also resolve std.livery in matcher
* also allow to find aircraft ICAO designator ending with string (e.g. 737 for B737)
* renamed CAircraftMatcher::reverseLookup -> CAircraftMatcher::reverselLookupModel
* threadsafe isInRange (CAIrspaceMonitor)
With the new Qt5 C++11 syntax, private slots are not really necessary.
Replacing it with a normal private method reduces the generated code
from moc and also syntax issues are raised as compiler errors instead
of runtime asserts.
CMetarSet was implemented as a collection. This only makes sense for
values which have one member variable only or hardly ever change. METARs
often change and therefore a collection didn't make much sense.
Additional profiling showed that a sequence has better algorithmic
performance.
refs #689
* do not init shared URLs before needed
* do not load info objects when DB is unavailable
* adjust reader flags when DB is down
* airport URL available in setup