Commit Graph

45 Commits

Author SHA1 Message Date
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
924e094a38 Listen for simulators on another thread 2015-04-01 00:05:15 +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
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
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
f31445e873 refs #386, further improvements on interpolation
* extended unit tests for interpolator / parts testing
* allow to skip sorting when splitting by time
* update ot aircraft to FSX in own member function
* Skip time sync parts (FSX) when disabled
2015-03-20 17:08:14 +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
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
3a4e5ef556 refs #364, refs #368 improved handling of manually set models
* make sure manually set model is not subject of model matching
* added convenience member functions to detect manually set models
2015-01-25 03:55:45 +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
e11a3c1e6b refs #349, added SB client area (for ident, transponder mode) to driver
* added SB client area support
* renamed member functions to better reflect meaning
* added all structures required for SB client area
* changed to new logging
2014-12-13 13:17:36 +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
Klaus Basan
326ae96def Formatting, Doxygen 2014-11-30 00:54:04 +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
Mathew Sutcliffe
4aef58564e refs #283 Added ISimulator::getInstalledModels method, with stub implementations 2014-08-27 00:02:35 +01:00
Mathew Sutcliffe
f4b7a9c6a2 refs #283 Rationalized ISimulator slots for managing remote aircraft 2014-08-27 00:02:34 +01:00
Mathew Sutcliffe
d25eac66b1 refs #283 Dedicated displayTextMessage for text messages instead of using displayStatusMessage for both.
The simulator can use this to display text messages in a different colour, for example.
2014-08-27 00:02:32 +01:00
Roland Winklmeier
e49fa083a7 refs #241 Move CFsuipc into simulator_fscommon 2014-08-03 14:52:30 +02:00
Klaus Basan
8d20c5e061 refs #298, implemented isPaused for FSX
In the same step renamed enum SystemEvent values to make them easier to spot
2014-07-12 18:25:29 +02:00
Klaus Basan
5f4f6806da refs #289, added functionality in FSX plugin
* data definitions
* events
* improved error handling: HRESULT values, exception output
* sync time method
2014-07-11 01:21:17 +02:00
Klaus Basan
851bb70a68 refs #289, added methods for time sync in context, plugin
Remark: in the same step added methods for paused simulator
2014-07-11 01:21:04 +02:00
Klaus Basan
3729721fc3 refs #289, method bodys for time sync as preparation
simulator can send messages to contexts
2014-07-11 01:20:29 +02:00
Klaus Basan
bbdb8a293f refs #291, getAirportsInRange for simulator, simulator context 2014-07-11 01:20:05 +02:00
Klaus Basan
c404d4cc5b refs #279, FSUIPC support 2014-06-23 01:19:35 +02:00
Mathew Sutcliffe
a6cd44be8d refs #246 added ISimulator::aircraftModelChanged signal which can be sent via the contexts to CAirspaceMonitor, which needs the model when sending FSIPI(R) custom packets 2014-06-14 16:52:50 +01:00
Roland Winklmeier
01f6b9c156 Add method in ISimulator to get aircraft model
Route AircraftModel requests from Context Simulator to ISimulator

refs #235
2014-06-13 01:01:16 +02:00
Roland Winklmeier
fdb4403904 Setup SimConnect data structure and requests for user
aircraft title

refs #235
2014-06-13 00:56:58 +02:00
Klaus Basan
02bb054f5a New features for Simulator, refs #257
* Allow to display text alerts for
** Status messages
** Private chat messages
* Updates from GUI cockpit to Simulator
* A bit refactoring, e.g. event names according our standards
2014-06-09 14:43:41 +02:00
Klaus Basan
035575870b refs #242, allows to change FSX cockpit from context
* Data definitions for FSX events
* BCD conversion for COM and transponder
* Update Cockpit method in context
* Renamed setOwnAircraft -> updateOwnAircraftFromSim
2014-06-09 14:43:35 +02:00
Klaus Basan
1bb4c3120b Formatting, comments, minor tweaks, typos, Doxygen 2014-06-09 14:43:31 +02:00
Roland Winklmeier
83776c5cc9 Add implementation to remove remote aircrafts
refs #229
2014-06-09 14:42:51 +02:00
Roland Winklmeier
9bc0226fd1 Move nested struct SimConnectObject into proper class
refs #229
2014-06-09 14:42:49 +02:00
Roland Winklmeier
de75c5c35a Add asynchronous connection in ISimulator/CSimulatorFSX
refs #231
2014-05-16 14:17:42 +02:00
Klaus Basan
9e5666e0e2 Formatting / comments / typos 2014-04-29 01:54:04 +02:00
Roland Winklmeier
87ff9c9ae8 Add methods to load and unload specific simulator plugins
refs #215
fixes #208
2014-04-26 15:01:33 +02:00
Roland Winklmeier
7a2d957349 Moved SimConnectProc from slots to public methods
refs #187
2014-04-26 14:36:21 +02:00
Roland Winklmeier
e669ad8fb4 Add connectTo/disconnectFrom/canConnect to Simulator drivers
Removed checkConnection() as driver is passive only.

refs #187
2014-04-26 14:36:20 +02:00
Roland Winklmeier
603f03f092 Move fsx plugin into plugins/simulator/fsx
refs #211
2014-04-19 12:33:25 +02:00