Commit Graph

47 Commits

Author SHA1 Message Date
Roland Winklmeier
29f464189b Move template in-class function definitions out of class
Keeping them defined in-class caused linker issues with the extern template
declaration in a non-optimized MinGW debug build. Apparently it did not
inline them but instead relied on the extern declaration and expected
them defined somewhere else.
2018-08-31 20:08:14 +02:00
Klaus Basan
60b3ed65ab Ref T301, application contexts pings (by re-registering) identifiers again. By that it can be detected if the GUI is crashed
* ping timer in proxy
* utility function in timestamp list
* adjusted UI component displaying identifiers in core
2018-08-13 02:59:44 +02:00
Klaus Basan
007e175721 Fix Doxygen warning suddenly showing up 2018-08-07 20:41:02 +02:00
Klaus Basan
abafbc335a Ref T297, calculate ts differences ITimestampObjectList::getTimestampDifferenceMinMaxMean 2018-08-01 03:06:24 +02:00
Klaus Basan
978fe5eea2 Ref T275, Ref T280 hint for timestamp based list if they are already sorted 2018-06-18 03:04:29 +02:00
Klaus Basan
69e1c3f4c2 Ref T275, CAircraftSituationChange view/model
* added some more indexes
* CAircraftSituationChangeListModel
* CAircraftSituationChangeListView
2018-06-13 14:00:28 +02:00
Klaus Basan
d1f5635bd1 Ref T261, timestamp utility functions 2018-05-08 16:06:42 +02:00
Klaus Basan
60c70c34f6 Ref T259, Ref T243 prefill provider situations, so interpolator can immediately start 2018-04-13 23:37:40 +02:00
Klaus Basan
fd7b1e0d9c Ref T259, Ref T243 utility functions for timestamp based classes 2018-04-05 02:54:50 +02:00
Klaus Basan
7beab371a1 Ref T259, Ref T243 timestamp utility functions 2018-04-05 02:54:18 +02:00
Klaus Basan
55e2690ceb Ref T259, Ref T243 utility functions for timestamp based classes and parts plus renamings 2018-04-05 02:54:05 +02:00
Klaus Basan
5d155fb59c Ref T243, adjust offset for timestamp based objects when keeping the order 2018-02-07 02:41:46 +01:00
Klaus Basan
52bf09eaf7 Ref T241, some improvements for timestamp based
* this->m_ => m_
* is[Older/Newer]ThanAdjusted
2018-02-04 09:00:17 +01:00
Klaus Basan
7f492c5ad3 Ref T243, BLACKMISC_EXPORT_DEFINE_TEMPLATE fixes for gcc 2018-02-04 08:59:57 +01:00
Klaus Basan
80f5d9b595 Ref T240, use ITimestampBased / ITimestampObjectList
* using the existing base classes (interfaces) gives you plenty of useful utility functions
* hint: we do not init with current timestamp as default as this is relatively slow
2018-02-04 08:59:39 +01:00
Klaus Basan
51ba6398bb Ref T241, Ref T243, ITimestampWithOffsetObjectList
* there was already ITimestampWithOffsetBased for objects
* this creates the container version
* functions to add objects (parts/situations) and guarantee the sort order
* moved push_frontMaxElements to CSequence (not specific for timestamp lists)
* added in-place reverse
2018-02-04 08:53:50 +01:00
Klaus Basan
54e9d1c429 Ref T203, artifact class (representing something we have build) 2017-12-21 19:48:10 +01:00
Klaus Basan
815cf75f66 Ref T149, return number of removed elements 2017-09-24 20:28:55 +01:00
Klaus Basan
1c57ce87a2 Ref T149, URL log list/class to trace network calls
* value class
* list
* metadata registration
2017-09-24 19:54:21 +01:00
Klaus Basan
5ce704c963 refs #921, distribution value object/object list
* registration
* property index
2017-04-18 00:06:24 +01:00
Mathew Sutcliffe
1c7fb518ca Fixed broken link URLs in comments. 2017-02-24 00:18:16 +00:00
Klaus Basan
dcfaca431c refs #849, use timestamp with server to indicate when login started
* CServer -> ITimestampBased
* added compare functions
2017-01-10 23:46:48 +00:00
Klaus Basan
224b534684 refs #816, set timestamp in text message 2016-12-13 19:01:20 +01:00
Mathew Sutcliffe
3ab121a593 refs #802 Fixed linker errors for exported explicit template instantiations with Clang on Windows. 2016-12-13 19:00:44 +01:00
Michał Garapich
cf3e9f1f67 refs #748 Support database format in CAirportDataReader
* CAirport is now database object
* CAirportList is now datastore object list
* CAirportDataReader adjustments
2016-10-17 14:34:31 +01:00
Mathew Sutcliffe
a5dfa1ef00 refs #570 Removed unused method splitByTime. 2016-06-08 23:59:57 +01:00
Klaus Basan
2b49591f1b refs #649, do not init to current timestamp
* force explicit init (performance/invalid objects)
* allow to find mising timestamps
* style
2016-06-08 03:59:06 +02:00
Roland Winklmeier
3d7a39ed00 Fix BlackMisc header includes
* Include only what is used
* Use forward declaration when possible
* Sorted includes

refs #630
2016-05-13 17:05:49 +02:00
Klaus Basan
49094115b1 static assert as discussed here https://dev.vatsim-germany.org/issues/648#note-10
#648
2016-05-13 16:43:58 +02:00
Klaus Basan
5f2110b81a refs #640, value object orderable interface (same as ITimestampBased ..)
* interface and list
* added Q_DECLARE_INTERFACE
2016-05-05 20:49:19 +02:00
Klaus Basan
72256cf86f refs #568, specialized lists (timestamp, DB objects, model list)
* remaned to latest/oldestObject
* JSON functions with prefix
* remove by keys
* only add models with model string to QStringList
2016-01-28 16:31:38 +01:00
Mathew Sutcliffe
64a25a7860 refs #466 Resolved TODO items in containers. 2015-11-19 21:00:56 +00:00
Klaus Basan
ae24700299 refs #452, adjusted aircraft/aviation classes
* support for loading from datastore
* improved timestamp handling
* new color and country classes
* new attributes
* updates for missing parts in CUser
2015-11-19 20:58:48 +00:00
Klaus Basan
25fd0f4f2d refs #445, value objects and containers
* common base class for DB based classes
* common base class for DB based containers
* Livery, distributor value class
* adjusted value classes to livery
* utility functions for DB values (blackmisc free functions)
* register new objects with metadata system
2015-11-19 20:57:17 +00:00
Mathew Sutcliffe
d4d862927e refs #441 Rename COriginator to CIdentifier and rename COriginatorAware to CIdentifiable. 2015-06-06 18:02:16 +01:00
Klaus Basan
73164b2ffc refs #428, refs #432 some changes to COriginator / containers
* originator, machine name, timestamp based, connect with QObject's &QObject::objectNameChanged
* list
2015-05-28 23:57:05 +02:00
Klaus Basan
880a954db9 refs #395, improvements for snapshot / restricted aircraft handling
* fixed isCurrentThreadCreatingThread and renamed to isCurrentThreadObjectThread (this check was never working), added 2 more thread checks
* changed remove aircraft function to return number of returned aircraft (like with the containers this allows to avoid unnecessary signals)
* removed unused function ps_recalculateRenderedAircraft() / SimulatorCommon
* using Queued airspaceAircraftSnapshot signal for binding (functor connect does not provide connection type)
* extened ASSERTs to check threads
* simulator: initial situation function with return value (success?)
* simulator: avoid unneccessary copy and provide correct rendered flag in add aircraft function
2015-05-22 03:08:16 +02:00
Klaus Basan
aafee8eafd refs #402, post merge feedback by MS 2015-04-11 02:09:10 +02:00
Michał Garapich
985a1caecf refs #396 BlackMisc: nw* goes to network/, hw* goes to hardware/ 2015-04-07 19:22:37 +02:00
Roland Winklmeier
78d3350bf3 refs #396 move Blackmisc Aviation classes into subfolder 2015-04-07 18:20:20 +02: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
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
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
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