Commit Graph

59 Commits

Author SHA1 Message Date
Mathew Sutcliffe
b65232b202 MS & KB workshop: ICAO class renamings. 2015-05-12 22:47:54 +01:00
Klaus Basan
a6591cfe2c refs #395, allow to disconnect SIGNAL/SLOTS from provider and gracefully shutdown airspace and analyzer 2015-05-12 21:03:40 +01:00
Klaus Basan
018c5ae1bf refs #395, integrated aircraft airspace snapshot / analyzer into remote provider
* added snapshot class
* added snapshot in analyzer, signal for new snapshot
* made all provider signals available in CSimulator
* added finders in CSimulatedAircraftList
* moved COwnAircraftProviderDummy into own file
2015-05-12 21:03:32 +01:00
Klaus Basan
1b9878fdd3 refs #395, some functions renamed in network provider/context
Goal: consistent function names in own and remote aircraft provider
2015-05-12 20:46:50 +01:00
Klaus Basan
3ecf37dda4 refs #395, changed own aircraft provider to thread safe member functions
(similar to remote aircraft provider)
* removed references
* made own aircraft context thread safe (reg. own aircrat data)
* removed the read only versions of the provider
* adjusted consuming methods
* renamed some functions ("ownAircraft...") to avoid ambiguity (with remote aircraft)
2015-05-12 20:46:48 +01:00
Klaus Basan
085edc82cb refs #395, post merge and rebase adjustments plus further testing fixes:
* adjusted iterim position updates
* removed deadlocks (thread safe values in airspace monitor)
* resolved some merge issues
* some smaller fixes in airspace monitor (style, finders)
2015-05-12 20:46:46 +01:00
Klaus Basan
6debd33b4f refs #395, turned remote aircraft provider interface into thread safe interfaces
* references gone, situations, parts, aircraft now as threadsafe copy
* read only interface gone (no longer references, so no longer needed)
2015-05-12 20:46:45 +01:00
Klaus Basan
79e2a7b805 refs #395, improved synchronization of booked and online stations
* moved sync functionality into CAtcStation
* consolidated function names
2015-05-12 20:46:43 +01:00
Klaus Basan
98812d3733 refs #395, shifted airspace watchdog into analyzer
* analyzer will run in background and perform several airspace calculations
* watchdog now acts directly on network signals, no need to add/remove callsigns
2015-05-12 20:46:39 +01:00
Klaus Basan
48188dd28d refs #395, moved thread safe aircraft parts / situations (from interpolator) to airspace
* access via provider, access now possible also beyond the scope of interpolator
* will be used in (to be written airpace analyzer)
* renamed some member functions as required
* fixed some asserts / Doxygen comments
* adjusted unit tests
* added vtolAircraft flag for interpolator, not fully used everywhere

remarks: update signals for parts / situation still only needed in XP driver
2015-05-12 20:46:38 +01:00
Klaus Basan
7b1beaf02d Introduced hint for callsign to specify callsign type (aircraft? ATC?) by context.
Background: Pilots can login in with virtually any callsign like XXX_OBS, resulting in wrong interpretations (as OBS here is no ATC station).
2015-05-12 20:46:36 +01:00
Klaus Basan
acec379151 refs #395, renamed to updateFastPositionEnabled (consistency with other member functions) 2015-05-12 20:46:35 +01:00
Roland Winklmeier
c77c0e484f refs #375 finish sending of interim positions
Airspace monitor knows all remote aircrafts and which have interim
positions enabled. It passes the list of receivers to INetwork
and INetwork sends it to FSD.
2015-04-23 22:06:32 +02:00
Roland Winklmeier
9079824ab9 refs #375 finished handling of interim packets
Interim packets are very close to normal position updates. It is
only missing transponder and speed information. On reception
of a interim packet, the information is added to a new
CAircraftSituation. The missing speed information is retrieved
from the last update.
2015-04-23 22:06:26 +02:00
Roland Winklmeier
6ab2abcf1a refs #377 Refactor custom FSinn packet handling
The names were a bit misleading, hence this patch does rename
the methods to something more obvious. It also changes the behaviour
of CNetworkVatlib to automatically answer a custom FSinn query.
In both cases the important details are extracted and signaled to
airspace monitor.
The airspace monitor will send FSinn queries only if the exact model
is not yet known. This would be the case when another client had
sent a FSinn query already.
2015-04-23 21:23:18 +02:00
Klaus Basan
aafee8eafd refs #402, post merge feedback by MS 2015-04-11 02:09:10 +02:00
Klaus Basan
0ab755d510 refs #396 subfolders and renamed callsign list to callsign set
* subfolder audio
* subfolder geo
* adjusted samples, tests ....
2015-04-07 19:22:23 +02:00
Klaus Basan
f95504a2c8 refs #398, asserts for frequency
the line
if (frequencyKHz < 100000) { frequencyKHz += 100000; }
might be removed after the fix
2015-03-29 20:15:21 +02:00
Klaus Basan
70670b74c6 refs #393, allow to highlight a certain aircraft by blinking
* signatures in contexts
* some specialized functions in aircraft list
* context menus in aircraft view
* default "blinking" implementation in driver common base class
2015-03-29 20:15:05 +02:00
Klaus Basan
066515fb9b As of RW/KB workshop
* changed aircraft view to siumlated aircraft models / views
* functionality to change fast pos. updates (signals, slots)
* allow to request text message widget from aircraft component
2015-03-20 17:11:23 +01:00
Klaus Basan
5ed95aee3d refs #391, allow to send aircraft parts from GUI
* GUI component for aircraft parts
* remote aircraft selector component
* Adjusted GUI for internals component
* Enable / disable debug messages from GUI
* Allow to init engines directly
* Removed unused async sort in sequence

In same step fixed found issues in interpolator
* allow to set max rendered aircraft
2015-03-20 17:08:23 +01:00
Klaus Basan
eca8c5b637 Reflecting discussed changes for interpolation performance refs #386
(based on FSX testing)
* Only send changed situation to SIM
* Split sending of parts / situations
* Only send parts with a reduced frequency (means slower as positions)
* Mark geodetic height as null for default values (the value is usually unavailable)
* Fixed altitude to MSL for network data
* Trace which aircrafts support aircraft parts via network
* Renamed insert_fron push_front (as proposed by Roland)

Status quo / lessons learnt
* On slower PCs jitter is still noticed for interpolated aircraft.
* Running interpolation in an independent process (aka core, not in GUI) reduced load dependencies
  => it seems to make sense to run driver in own thread
* The onGround flag in parts seems clumsy as it required to retrieve parts for position updates
* In interpolation performance really matters
2015-03-20 17:00:41 +01:00
Klaus Basan
ca6cd9c063 Disabled updates of airspace monitor's situations / parts
Currently not used, for performance testing
2015-03-20 16:49:31 +01:00
Klaus Basan
7e39587226 Passing connection status to airspace monitor.
When the network connection is terminated, airspace monitor
can still recevice pending signals from vatlib. Those have to be ignored.

Otherwise it can happen aircraft (.. etc.) are added again to airspace,
which gives inconsistent results.
2015-03-20 16:49:28 +01:00
Klaus Basan
420a47e90c refs #369, changed interpolation to a working (but still too bad performing) version
* using split by callsign everywhere
* helper function to insert_front
* revised linear interpolator
* renamed to remoteAircraft
* renamed to container() in providers (gettters are usually copies)

Issues why changes did so long:
* insert in list is not adding in front, but same as push_back (that was confusing)
* naming of values before/after in interpolator was ambigious
* QMap keeps values sorted by key, not arbitrarily
2015-03-20 16:49:07 +01:00
Klaus Basan
f8bebf5ffa refs #386, performance issues
* keep split per callsign map in IInterpolator (so it is available for all interpolators)
* Interpolator using CWorker, so it can run in background
* added signals to provider to add split situations / callsigns
* adjustments to airspace / context for those signals
* thread safe access to those from interpolator
* renamed from rendered to remote aircraft as discussed
* adjust samples
* removed no longer required functions in timestampobjectlist
* changed connectioStatusChanged from uint -> int
2015-03-20 16:48:58 +01:00
Klaus Basan
38a8c45b9e refs #369, thread safe access to aircraft parts, situations 2015-03-20 16:33:54 +01:00
Roland Winklmeier
d3bdad9ef6 refs #321 Handle received aircraft parts in airspace monitor 2015-03-20 16:33:15 +01:00
Roland Winklmeier
afea320a2e refs #321 Handle aircraft config client capability 2015-03-20 16:33:07 +01:00
Klaus Basan
915492670c refs #369, prepared for aircraft parts and removed addAircraftSituation 2015-03-20 16:32:04 +01:00
Klaus Basan
366721d9ad refs #369, first version of IRenderedAircraftProvider in airspace monitor
(no aircraft parts yet)
2015-03-20 16:31:18 +01:00
Klaus Basan
de23d1f5bc refs #369, changed from CAircraftList to CSimulatedAircraft list
In the same step fixed / revised issues:
* make sure ATCT stations are removed from client list when disconnected
* use removeByCallsign functions
2015-03-20 16:31:11 +01:00
Klaus Basan
fe4613a868 refs #369, adjusted contexts to use own aircraft provider
* removed unused functions / signals
* removed no longer used members / update timers
* Pass provider to contructors
* no direct access to monitor in other contexts
2015-03-20 16:30:40 +01:00
Klaus Basan
ce86c902b5 Upfront of refs #369
* consolidated ICoordinateGeodetic (e.g. fixed nested properties)
* shifted common functionality for objects/containers with callsign into interface
* shifted common functionality for objects/containers with geo position into interface
* shifted common functionality for objects/containers with timestamp into interface
* updated corresponding value objects / specialized lists
* adjusted all places where renamed functions are used
2015-03-20 16:30:18 +01:00
Klaus Basan
c61a963a99 refs #364, refs #368 contexts:
* changed to CSimulatedAircraft / Simulation::CAircraftModel
* added new functions such as icons for model
* improved ICAO code handling in airspace
* removed implicit logging from network context
2015-01-24 01:15:21 +01:00
Klaus Basan
8f746d59b9 refs #358, adjusted simulator context and airspace monitor for model matching 2014-12-28 22:19:44 +01:00
Klaus Basan
366769a6b8 Formatting, doxygen, typo aircrafts (to aircraft),
removed some debug output, {} in if statements
2014-12-28 20:46:14 +01:00
Mathew Sutcliffe
48f04a4750 refs #247 Using CVariant in property index system. 2014-12-13 01:41:58 +00:00
Roland Winklmeier
522c1263ef Fix missing removedAircraft signals when disconnecting from network 2014-10-07 23:37:12 +02:00
Roland Winklmeier
5fe4ea3039 refs #324 connect airspace watchdog to airspace monitor 2014-10-07 23:36:59 +02:00
Klaus Basan
be0d1e8153 refs #325, using new applyIf method in airspace monitor 2014-10-07 13:10:36 +02:00
Klaus Basan
4b50134d2a refs #325, refs #330 fixed apply method to return list of changed properties
* changed CValueObject apply
* created CIndexPropertyList
* renamed CIndexVariantMap to CPropertyIndexVariantMap
2014-10-07 13:10:33 +02:00
Klaus Basan
4500bda125 Added updates by VATSIM data file for voice capabilities 2014-09-09 20:07:29 +02:00
Klaus Basan
2127238ed4 Doxygen, renaming, formatting
* Formatting, renaming to current schema
* Minor tweaks
2014-09-09 20:07:27 +02:00
Klaus Basan
e4545f23d2 refs #322, included context menu and methods for injecting test data (ATC stations) in GUI 2014-09-09 20:07:23 +02:00
Klaus Basan
fc84673bb9 Handled performance issues and bugs noticed during testing of refs #319 / refs #322
* discussion: https://dev.vatsim-germany.org/boards/22/topics/2027?r=2040#message-2040
* fixed bug with ATC station component, wrong signals for booked stations
* booked stations loading to frequently (for each minor change such as online), changed to timestamp based concept
* update booked stations with receiving ATIS/voiceroom to online
* CDigestSignal class: new class and methods for collecting signals, avoiding too many signals - one of the cures for the performance issues
* fixed bug found during testing, missing start for timers when connecting to network
2014-09-09 20:07:16 +02:00
Mathew Sutcliffe
a6fd2bdeb2 refs #283 CAirspaceMonitor: added signals to notify when an aircraft is added or removed 2014-08-27 00:02:34 +01:00
Klaus Basan
657e40693c refs #314, changed core to new propertyBy methods 2014-08-24 02:47:03 +02:00
Klaus Basan
e109d73ba2 refs #314, new propertyBy methods (nested indexes) 2014-08-24 02:46:59 +02:00
Klaus Basan
3fb5087ea8 Renaming, header, Doxygen, formatting (during refs #314) 2014-08-24 02:45:52 +02:00