Commit Graph

685 Commits

Author SHA1 Message Date
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
a3b147d59a Doxygen 2015-05-12 20:46:40 +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
647c5c2de8 doxygen 2015-05-05 22:27:31 +02:00
Roland Winklmeier
a13d90ada4 refs #403 add BlackCore shared library build 2015-05-05 21:34:28 +02:00
Roland Winklmeier
8ad29e2fff refs #403 add extra flag for static builds 2015-05-05 21:29:48 +02:00
Roland Winklmeier
793fcbfd15 refs #403 refactor project files
* Use source path and build path instead of relative ones
* Unify pre target dependencies in libraries.pri
2015-05-05 21:29:46 +02:00
Roland Winklmeier
01d92f5981 refs #408 Fix DBus interface names to contain only legal characters
The DBus specification allows only ASCII characters "[A-Z][a-z][0-9]_".
Dash is illegal and therefore libdbus is complaining about our
interface names not being valid.
2015-04-23 22:06:38 +02:00
Roland Winklmeier
f878b77f0b Don't assert on external data. 2015-04-23 22:06:35 +02: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
78bc9e8769 refs #375 Rename CNetworkVatlib::update to sendPositionUpdate 2015-04-23 22:06:29 +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
b7b91d8d5b Set host application name for vatlib to "None".
The idea is if you are an addon and running inside the simulator process
you can put his name there. Since swift does (not yet) run as an addon,
set it to "None" instead.
2015-04-23 22:06:23 +02:00
Roland Winklmeier
e87556a753 Send default model string if model is empty
For a strange reason swift was sending its own name and
version instead.
2015-04-23 22:06:20 +02:00
Roland Winklmeier
952deb3922 vatlib API adaptions to v0.9.4 2015-04-23 22:06:17 +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
dffb2e3581 Some build adjustements:
* Warning flags for elevated warnings as discussed: no /W3, explicit /wd
* fixed include in hotkey samples
* removed outdated QMAKE_CXXFLAGS += -std=c++0x
2015-04-19 03:04:33 +02:00
Klaus Basan
a05fa7494f Some minor tweaks and fixes
* added names to timers
* Some DBus code formatting
* missing GUI element names
2015-04-19 03:00:34 +02:00
Roland Winklmeier
57b5e1421c Harmonize swift domain names to org.swift-project.* 2015-04-16 00:59:56 +02:00
Michał Garapich
1d5cbb7a9d refs #404 Added human-readable plugin names
* Added new "identifier" attribute in JSON metadata files
* "identifier" is now the one that makes plugins unique
* "name" attribute is a human-readable name
2015-04-16 00:59:56 +02:00
Klaus Basan
9c75ff2db5 Fixed gcc warnings 2015-04-11 09:10:59 +02:00
Klaus Basan
5d819b30f5 Split of CSimulatorPluginInfo and CSimulatorSetup
refs #404, and discussion https://dev.vatsim-germany.org/issues/404#note-8

* Changed CSimulatorSetup to use CNameVariantPairList as data. The old version was an hack and had to go, CNameVariantPairList would allow complex types in the future and can be already shown in the GUI.
* CNameVariantPairList was improved slightly in the same step
* Functions to get CSimulatorSetup from driver / context
* Removed CSimulatorSetup data from CSimulatorPluginInfo
2015-04-11 02:09:31 +02:00
Klaus Basan
f7b50b3f5a refs #366, passing Simulator plugin info to drivers
Add. some finetuning
2015-04-11 02:09:23 +02:00
Klaus Basan
aafee8eafd refs #402, post merge feedback by MS 2015-04-11 02:09:10 +02:00
Klaus Basan
6634260970 refs #398, removed fix after RW has fixed it in vatlib 2015-04-08 23:04:36 +02:00
Michał Garapich
985a1caecf refs #396 BlackMisc: nw* goes to network/, hw* goes to hardware/ 2015-04-07 19:22:37 +02:00
Mathew Sutcliffe
2363fab8c1 refs #396 move Blackmisc PQ classes into subfolder 2015-04-07 19:22:30 +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
32f60722c8 refs #396, move subproject BlackSim into BlackMisc::Simulation
* removed unused samples / tests
* fixed found Doxygen issues
* removed blacksimfreefunctions, now in BlackMisc::Simulation::registerMetadata()
* samples_vetcor_geo to samples_geo
2015-04-07 19:22:16 +02:00
Roland Winklmeier
78d3350bf3 refs #396 move Blackmisc Aviation classes into subfolder 2015-04-07 18:20:20 +02:00
Roland Winklmeier
4d09279c65 Use full qualified class name for ConnectionStatus.
Qt gets confused by the different ConnectionStatus enums we are using
and complains it cannot queue the argument. It only works when the
fully qualified class name is used.
2015-04-07 17:13:53 +02:00
Roland Winklmeier
ee195e3e20 Handle cases when no simulator is available properly in simulator context
In the past core was always loading one simulator plugin by default.
This has changed recently with the listeners. So m_simulator is not
guaranteed to be valid.
A proper fix in the future is to not even call them. At the moment they
are hard wired to network.
2015-04-03 13:30:22 +02:00
Michał Garapich
4d4acb20bc refs #366 cleanup
* Removed obsolete signal from IContextSimulator
* Removed connectToSimulator() method from IContextSimulator as it is no
longer relevant
* CSimulatorComponent updates automatically when simulator disconnects
* FS9 & FSX drivers update (including FSCommon)
2015-04-01 01:21:28 +02:00
Michał Garapich
63e48ae332 Remove ISimulator::getSimulatorInfo()
To provide maximum flexibility, the simulator info is specified by each
plugin in the JSON metadata file.

* Renamed SCimulatorInfo to CSimulatorPluginInfo
* Removed pre-defined simulator infos (UnspecifiedSim, FSX, etc)
* CContextSimulator keeps track of which plugin is loaded and its info
* QSignalMapper keeps track of which listener emitted the simulatorStared() signal
* CSimulatorPluginInfo contains name, simulator name and description
* TODO: GUI part
* TODO: CTestFsCommon
2015-04-01 01:20:25 +02:00
Michał Garapich
3897fb2d1a FS9 plugin cleanup
* Make host & lobby client plugin-global
* Post-rebase cleanups (FSX too)
2015-04-01 00:07:28 +02:00
Michał Garapich
924e094a38 Listen for simulators on another thread 2015-04-01 00:05:15 +02:00
Michał Garapich
570f4aa4ea Make FS9 works with ISimulatorListener
* The FS9 host is started in the Listener
* When FS9 starts up, it is called via the lobby to join the multiplayer
* Some minor changes in CContextSimulator
2015-04-01 00:05:12 +02:00
Michał Garapich
edc0646ab2 Make FSX works with ISimulatorListener.
SimConnect tries to connect to FSX every 5 seconds.
TODO: Use WinAPI to wait for FSX process to show up
2015-04-01 00:01:35 +02:00
Michał Garapich
5b4c2377b6 Initial "Auto" option
* Added ContextSimulator::listenForAllSimulators()
* Added "auto" option in SettingsSimulatorComponent
* Default plugin is UnspecifiedSim, which stands for "auto" option
2015-04-01 00:00:36 +02:00
Michał Garapich
a0033bee02 Lazy-load drivers when necessary
* Use JSON to get driver/simulator information
* Load driver plugin only when ISimulatorFactory is needed
2015-03-31 23:56:40 +02:00
Michał Garapich
afc22397bb JSON plugin metadata initial
* Added json files along with FILE macro for all drivers
* Get CSimulatorInfo from JSON rather than from ISimulatorFactory
2015-03-31 23:56:35 +02:00
Michał Garapich
c5a1a6048b Refactor Simulator connection status
* Removed obsolete and unused signals (ISimulator, CSimulatorContext)
* Removed ISimulator::ConnectionStatus enum
2015-03-31 23:56:32 +02:00
Michał Garapich
9d37a0876d Style 2015-03-31 23:52:32 +02:00
Michał Garapich
45f48f7594 Listen for X-Plane to start 2015-03-31 23:52:30 +02:00
Michał Garapich
adc623f0e7 Add ISimulatorListener interface 2015-03-31 23:52:29 +02:00
Klaus Basan
28132d8e40 Fixed warnings from compiler and Jenkins build 2015-03-29 20:15:25 +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