Commit Graph

135 Commits

Author SHA1 Message Date
Klaus Basan
f870fb3cf9 refs #312, some minor adjustments:
* cpp check (Jenkins)
* init style sheet in navigator
* shorter names in JSON plugin names
2015-04-19 03:04:26 +02:00
Roland Winklmeier
1b26311983 Fix license header spelling 2015-04-16 00:59:56 +02:00
Roland Winklmeier
57b5e1421c Harmonize swift domain names to org.swift-project.* 2015-04-16 00:59:56 +02:00
Michał Garapich
f9de3ad409 refs #404 Use domain-based identifiers for plugins
* Changed all plugin identifier to org.swift-project.plugins.simulator.*
* Fixed a small bug that caused settings be parsed wrong
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
f7b50b3f5a refs #366, passing Simulator plugin info to drivers
Add. some finetuning
2015-04-11 02:09:23 +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
a6ca57265e refs #396 move Blackmisc Math classes into subfolder 2015-04-07 18:24:22 +02:00
Roland Winklmeier
78d3350bf3 refs #396 move Blackmisc Aviation classes into subfolder 2015-04-07 18:20:20 +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
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
Klaus Basan
48655bf551 refs #395, signatures for max.aircraft and max.range
(!) This in an intermediate step, the feature is not yet fully operational

* max distance for rendering as simulator property
* set max distance / aircraft from GUI

As result of the latest meeting
* changed CCallsignList to CCollection
* fixed some warning with elevated compiler settings (e.g. removed qint values -> int)
2015-03-29 20:15:13 +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
Mathew Sutcliffe
67730aa727 refs #356 Fixed GCC error and warning. 2015-03-24 10:47:32 +00:00
Klaus Basan
72c796f92f As of workshop RW/KB
* fixed doxygen
* display parts flag
2015-03-20 17:11:02 +01:00
Roland Winklmeier
e2578dd63c Move sending of positions and params to FS9 into own method 2015-03-20 17:10:34 +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
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
190e2c3757 refs #386, performance issues
* keep split per callsign map in IInterpolator (so it is available for all interpolators)
* 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
2015-03-20 16:49:03 +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
df1c0c65da refs #384, allow subparts reading in FSUIPC and to disable FSUIPC (currently disable in FSX) 2015-03-20 16:34:06 +01:00
Klaus Basan
c47871b813 refs #382, reviewed audio context handling
* only init QDbusServer for P2P
* changed init order of contexts in runtime
* use "fake" signal to call setComVoiceRooms (remote in GUI)
* added slot to change voice room callsign
* used "org.swift" instead of "net.vatim" (just style)
* used const QString for serviceName
* added correct copyright header (just style)
2015-03-20 16:33:51 +01:00
Roland Winklmeier
b40180818c Send ChangePlayerPlane several times to FS9 2015-03-20 16:33:03 +01:00
Klaus Basan
5146b7357d refs #369, adjusted simulator drivers to changed interpolator and
removed addAircraftSituation
2015-03-20 16:32:15 +01:00
Klaus Basan
8c3547c33d refs #369, adjusted simulator drivers
* common base class BlackCore::CSimulatorCommon
* using providers IOwnAircraftProvider, IRenderedAircraftProvider
* using revers lookup in mapping
* using CSimulatedAircraft / CSimulatedAircraftList
* return values (success/failed) for member functions (e.g. setTimeSynchronization)
* getMaxRenderedAircraft / setMaxRenderedAircraft prepared
2015-03-20 16:31:33 +01:00
Klaus Basan
1b04205584 refs #369, adjusted plugins
* common base class for FS drivers
* moved mapper into common base class
* reflect changes for own aircraft provider
** removed member functions
** removed unused members
2015-03-20 16:30:48 +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
b12352047b refs #364, refs #368 drivers:
* changed to CSimulatedAircraft / Simulation::CAircraftModel
* added new functions such as icons for model
2015-01-24 01:15:16 +01:00
Klaus Basan
23e9159dfd refs #358, added (a first very simple) model matching to FSX driver
* isRunning → isSimulating
* adjusted addRemoteAircraft signature (remark: CClient as parameter will be removed)
* renamed to "ownAircraft" when referring to own aircraft
* functions to access installed models/matched models
* model matching in CSimulatorFsx::addRemoteAircraft
2014-12-28 22:19:28 +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
Klaus Basan
78e4900243 refs #349, housekeeping
* formatting
* tweaks (such as changing to new log style),
* Doxygen
* int instead of qint
2014-12-13 13:17:31 +01:00
Roland Winklmeier
562cadee8a Fix several gcc, cppcheck and clang warnings 2014-12-01 23:15:49 +01:00
Roland Winklmeier
16bf3f047a Fix FS9 lobby connetion not being cleaned up properly 2014-11-30 02:51:37 +01:00
Roland Winklmeier
d3d09b8251 Change FS9 plugin to new logging system 2014-11-30 02:51:29 +01:00
Roland Winklmeier
333b2b9957 refs #334 Make player info member variables 2014-11-30 02:49:26 +01:00
Roland Winklmeier
0c245916ff refs #334 Fix segfault when m_fs9Host is already destroyed 2014-11-30 02:49:24 +01:00
Mathew Sutcliffe
195c909ca0 refs #334 FS9 DirectPlay peer classes using CContinuousWorker. 2014-11-30 02:32:37 +01:00
Klaus Basan
a94bceddab refs #335, refs #342 improved simulator states
* new signal sending all 3 states together (connected, running, paused)
* renamed ISimulator::Status to ConnectionStatus
* consolidated some member / signal names
* for FS9/XPlane implemented stub functions
2014-11-30 00:54:07 +01:00
Roland Winklmeier
6fdd934cd1 refs #341 Remove m_callbackWrapper from CFs9Client
Is already implemented in base class.
2014-11-05 16:34:24 +01:00
Roland Winklmeier
0e675b97e6 refs #341 Remove unnecessary Q_DECL_EXPORT.
Qt MOC exports the required symbols.
2014-11-05 16:34:24 +01:00
Roland Winklmeier
7701367a1c refs #341 Interpret return code before moving on 2014-11-05 16:34:24 +01:00
Roland Winklmeier
8d68dd8188 refs #341 Allocate variables when they are needed the first time 2014-11-05 16:34:24 +01:00
Roland Winklmeier
c720b33ca8 refs #341 Use in-class initialization for m_playerLocal and m_playerUser 2014-11-05 16:34:24 +01:00
Roland Winklmeier
c533e9213a refs #332 send slew mode position packet instead of the full one
This bypasses the physics engine inside FS9
2014-10-08 01:52:59 +02:00