Commit Graph

708 Commits

Author SHA1 Message Date
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
608091912c refs #396 remove obsolete coordinate classes
* CCoordinateEcef
* CCoordinateNed
* CCoordinateTransformation
2015-04-07 18:20:27 +02:00
Roland Winklmeier
b3daaa7ae2 refs #396 remove obsolete Matrix and Vector classes 2015-04-07 18:20:24 +02:00
Roland Winklmeier
78d3350bf3 refs #396 move Blackmisc Aviation classes into subfolder 2015-04-07 18:20:20 +02:00
Roland Winklmeier
f71e0a89fb Make CContainerBase::compare public
This workarounds a cppcheck warning. The method was not unused,
but cppcheck was complaining.
2015-04-03 11:39:54 +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
Klaus Basan
8163ad2762 refs #397, remove unused class 2015-03-29 20:15:17 +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
53afe798d4 Fixed warnings as mentioned in
https://dev.vatsim-germany.org/boards/22/topics/2587?r=2598#message-2598
and found by
+win32-msvc*:QMAKE_CXXFLAGS_WARN_ON *= /Wall /W3 /wd4640 /wd4619 /wd4350 /wd4351
2015-03-29 20:15:09 +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
Roland Winklmeier
3c077ef579 Workaround gcc 4.7 error 2015-03-29 16:33:11 +02:00
Mathew Sutcliffe
9977d97a67 refs #356 Renamed CValueObjectStdTuple to CValueObject. 2015-03-27 23:03:25 +00:00
Mathew Sutcliffe
73f135fa5b refs #356 Streaming ops for QJsonObject: value in pair should be a reference, to avoid unnecessary copying and object slicing. 2015-03-27 19:08:54 +00:00
Mathew Sutcliffe
a5e6b31c0f refs #356 Update remaining CValueObject derived classes to use CValueObjectStdTuple instead. 2015-03-27 19:08:53 +00:00
Mathew Sutcliffe
2a3e0acf23 refs #356 Update base class name in derived class method implementations. 2015-03-27 19:08:52 +00:00
Mathew Sutcliffe
31c33b4b8d refs #356 Removed CValueObject and expanded CValueObjectStdTuple to compensate.
* Involves rearranging some header includes to break cyclic include dependencies,
* Adding a new, simple base class CEmpty,
* Removing any remaining polymorphic uses of CValueObject with templates,
* Adding a new trait for use with enable_if to restrict templates to work only with value objects,
* Replacing the polymorphic/runtime multimethod-based compare functions with static/compile-time compare functions.
2015-03-27 19:08:51 +00:00
Mathew Sutcliffe
d878f879aa refs #356 Minor refactoring to Compare policy, preparation for removing CValueObject. 2015-03-27 19:08:50 +00:00
Mathew Sutcliffe
1340cec049 refs #356 Extended CValueObjectStdTuple with policy for property indexing. 2015-03-27 19:08:50 +00:00
Mathew Sutcliffe
2ea9d031ea refs #356 Extend CVariant to support accessing properties by index of the contained value object. 2015-03-27 19:08:49 +00:00
Mathew Sutcliffe
50bf5690f9 refs #356 Moved CPropertyIndexVariantMap/CValueObject operators from CValueObject to CPropertyIndexVariantMap. 2015-03-27 19:08:48 +00:00
Mathew Sutcliffe
22d6b93f10 refs #356 Non-member equality operators for CPropertyIndexVariantMap. 2015-03-27 19:08:47 +00:00
Mathew Sutcliffe
6ebe4913f6 refs #356 Removed IsQuantity trait, no longer used. 2015-03-27 19:08:46 +00:00
Mathew Sutcliffe
df1a9d7b9e refs #356 toPixmap is public in the base class, so it should be public in the derived class. 2015-03-27 19:08:45 +00:00
Mathew Sutcliffe
f23b3da1ae refs #356 parseFromString is public in derived classes, so it should be public in the base class. 2015-03-27 19:08:45 +00:00
Mathew Sutcliffe
2463cd58ef refs #356 Fixed mistake in CAtcStation::convertToQString. 2015-03-27 19:08:44 +00:00
Roland Winklmeier
ab98009996 Several gcc and clang fixes
This superseeds also f1199793 by a cleaner workaround.
2015-03-24 10:47:32 +00:00
Roland Winklmeier
f1199793a7 Workaround internal gcc compiler error
It needs to be tested against the latest gcc trunk and a gcc bug
report raised if the problem still exists.
2015-03-21 12:15:38 +01:00
Klaus Basan
a50e45e451 Fixed updates of view when simulated aircraft values are updated.
* renamed view to simulated aircraft view
* utility function for bool -> on/off
2015-03-20 17:11:27 +01: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
79b3cf3cd3 Misc. imorvements as discussed in RW/KB worksho
* preparation for a context menu to send text messages from ATC/aircraft view
* preparation for context menu for fast pos. updates
* reverse ICAO lookup at login screen
* display fast updates / parts in GUI
* moved max- aircraft into settings
* made serverselection own component
2015-03-20 17:11:10 +01:00
Klaus Basan
269c65b578 As of workshop RW/KB, improved / fixed text messages
Also refs #351
* messages can be formatted with style sheet
* fixed: removed command from message
* added originator to command line
* msg parsing now in core
* using ITimestampBased for text messages and status messages
* allow to resize rows to content (view base)
* model / views for text messages
* removed old qt stylesheets
2015-03-20 17:10:58 +01:00
Michał Garapich
aee2b2495f Two fixes for linux-g++
* Added missing typename in TimestampObjectList
* Renamed blacksim.a to libblacksim.a in cli_client's qmake
2015-03-20 17:10:54 +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
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
5bad11dcca Allow init by QList in CSequence 2015-03-20 17:01:16 +01:00
Klaus Basan
f525e3bc2e refs #386, further tests for interpolator
* calculate single vs. calculate all interpolations upfront
* added clear for interpolator
2015-03-20 17:01:12 +01:00
Klaus Basan
8d6be01c5d Style, minor fixes 2015-03-20 17:01:09 +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
29bb7d02d0 Allow to split callsign based list + samples 2015-03-20 16:34:26 +01:00
Klaus Basan
38a8c45b9e refs #369, thread safe access to aircraft parts, situations 2015-03-20 16:33:54 +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
Klaus Basan
067aecdeca Fixed missing metadata registration 2015-03-20 16:33:47 +01:00
Klaus Basan
5d491b9456 refs #380, use CWorker instead of QConcurrent for threaded reader (bookings/VATSIM file) 2015-03-20 16:33:43 +01:00
Klaus Basan
1da3f58fec refs #369, fixed / adjusted testing and samples
* changed from qDebug() to QTextStream
* setter for voice room
* set fake voice room URL, otherwise no nonger displayed in GUI
2015-03-20 16:33:39 +01:00