Commit Graph

743 Commits

Author SHA1 Message Date
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
Klaus Basan
16bee441e1 refs #381, adjust GUI for new voice vatlib
* Only 1 volume
* No tests (squelch ...)
* loopback
* required backed functions in context
2015-03-20 16:33:31 +01:00
Klaus Basan
f0db7ed660 refs #380, QConcurrent vs QThread sample and fix
* in same step fixed nullptr issue in worker (with no parent)
* Changed from QConccurennt::run to CWorker in core
2015-03-20 16:33:23 +01:00
Roland Winklmeier
d5731cf8d9 refs #321 Add parts synchronized flag to CSimulatedAircraft 2015-03-20 16:33:11 +01:00
Roland Winklmeier
afea320a2e refs #321 Handle aircraft config client capability 2015-03-20 16:33:07 +01:00
Klaus Basan
6aea013b23 refs #369, added access for renderedAircraftPositions 2015-03-20 16:32:08 +01:00
Klaus Basan
ee3417ff8b refs #369, adjusted aircraft parts/lights and list to new style
* support of property index
* used support classes BlackMisc::ITimestampBased, ITimestampObjectList and ICallsignObjectList
* fixed some issues in related aircraft situation class in same step
2015-03-20 16:32:00 +01:00
Roland Winklmeier
466a9a24ef refs #321 Methods to read/write aircraft config packets from/to network 2015-03-20 16:31:56 +01:00
Roland Winklmeier
ccec06fc80 refs #328 add CAircraftParts to CAircraft
Conflicts:
	src/blackmisc/avaircraft.h
2015-03-20 16:31:48 +01:00
Roland Winklmeier
0a46a4a0bd refs #328 CAircraftParts value classes 2015-03-20 16:31:45 +01:00
Klaus Basan
16042c1fb2 refs #369, gcc fixes 2015-03-20 16:31:41 +01:00
Klaus Basan
89424647aa refs #369, smaller changes
* rendered attribute in CSimulatedAircraft
* Formatting
* contains in CPropertyIndex
* CAircraftModel, new type
2015-03-20 16:31:22 +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
02eb531367 refs #369, simulated aircraft to aircraft list 2015-03-20 16:31:03 +01:00
Klaus Basan
8e8f9e4804 refs #369, prepend function for properties 2015-03-20 16:30:59 +01:00
Klaus Basan
cec59c5d72 refs #369, revised atc station and client list
* function to get only stations with valid callsign
* use ICallsignObjectList in client list
* removeByCallsign
2015-03-20 16:30:56 +01:00