Commit Graph

44 Commits

Author SHA1 Message Date
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
Mathew Sutcliffe
48f04a4750 refs #247 Using CVariant in property index system. 2014-12-13 01:41:58 +00:00
Mathew Sutcliffe
f219d290f1 refs #345 Third and final wave of value classes using the CValueObjectStdTuple CRTP class template, with policy classes. 2014-11-10 20:45:18 +00:00
Mathew Sutcliffe
798b198d4e refs #345 Style and doxygen. 2014-11-10 20:42:31 +00:00
Roland Winklmeier
0798d7511c refs #341 pass value geodeticHeight by const reference 2014-11-05 16:34:11 +01:00
Klaus Basan
c1895c1ab2 refs #314, fixed missing virtual keyword and Doxygen comment 2014-08-25 13:10:13 +02:00
Klaus Basan
40b428a315 refs #314, renamed convertFromQVariant, convertFromJson
discussion: https://dev.vatsim-germany.org/issues/314#note-19
2014-08-24 02:47:16 +02:00
Klaus Basan
290abe3693 refs #314, fromQVariant / location of toQVariant
* renamed fromQVariant to convertFromQVariant, the "from" methods imply the object is changed (fromJson, fromString ..)
* implemented fromQVariant - changing the object by QVariant
* moved toQVariant into PQ template
* free function setFromQVariant
2014-08-24 02:47:05 +02:00
Klaus Basan
e109d73ba2 refs #314, new propertyBy methods (nested indexes) 2014-08-24 02:46:59 +02:00
Klaus Basan
3fb5087ea8 Renaming, header, Doxygen, formatting (during refs #314) 2014-08-24 02:45:52 +02:00
Klaus Basan
7b546c7dba Fixes 2,4,6 refs #287
https://dev.vatsim-germany.org/issues/287#note-14
2014-07-11 15:12:44 +02:00
Klaus Basan
d8ca4241af refs #291, bearing
* method to calculate bearing between coordinates
* Helper methods to normalize degrees (0..360deg), e.g. -10deg -> 350deg
2014-07-11 01:20:16 +02:00
Klaus Basan
5a4443487e Renamed to geodetic height, as discussed in meeting 2014-07-11 01:20:06 +02:00
Klaus Basan
b1166934e3 refs #291, member method great circle distance 2014-07-11 01:20:04 +02:00
Klaus Basan
a9f0359666 Tweaks
* formatting
* default digits for PQs
* improved toQString in altitude / aircraft situation / coordinate
2014-07-04 22:56:52 +02:00
Klaus Basan
e2461cb67c refs #192, Doxygen / formatting 2014-03-26 20:18:46 +01:00
Klaus Basan
88fb9e8832 refs #192, enable value objects for JSON:
* from/toJson methods
* jsonMembers where applicable
2014-03-26 20:18:42 +01:00
Mathew Sutcliffe
7f92b5dbc9 refs #140 to demonstrate the new tuple framework, adapted five typical value classes to use it 2014-03-07 23:15:57 +01:00
Mathew Sutcliffe
35e0c3e085 refs #91 & #124 using override and \copydoc throughout blackmisc 2014-02-17 16:37:04 +00:00
Roland Winklmeier
c4b458c97c Fix missing arguments and const declarations in avionics
and geo classes. In the same step, add the override keyword

fixes #133 refs 124#
2014-02-08 11:03:06 +01:00
Mathew Sutcliffe
db4c05dd9f refs #84 removed the CValueObject::compare method and added a friend function BlackMisc::compare to replace it.
The new compare is implemented using "multimethods" described in the book Advanced C++ Programming Styles and Idioms by James Coplien.

First, the isA method is used to determine which of the values being compared is the most general. (For example, CLength is more general than CAltitude.)
Then the compareImpl method is called on the most general value, with the other value as an argument.
If there is not a direct inheritance relation between the two values (or they are the same class) then the comparison is invalid and a assert is triggered.
2014-01-17 01:38:27 +00:00
Klaus Basan
bb61654a29 style and consistency:
* rename CStatusMessages to CStatusMessageList
* rename NetworkVatlib to CNetworkVatlib
* replace all occurrences of Realname with RealName (correct camel case)
* CSequence method corresponding to CList::append is push_back
* don't compile the qdbuscpp2xml metadata plugin by default
* CAircraftIcao string members always trimmed and capitalized
* added CComSystem::roundTo25KHz
* using epsilon comparison in a couple of places

refs #81
2014-01-09 01:15:56 +00:00
Klaus Basan
76e2421ba2 WGS84 function in CCoordinateGeodetic
refs #81
2014-01-08 00:59:06 +00:00
Klaus Basan
a280d239e6 using hashes to perform comparisons between blackmisc value objects stored inside of QVariant
refs #81
2014-01-08 00:59:00 +00:00
Klaus Basan
67a5dbfe48 converting value objects to/from QVariant
refs #81
2014-01-08 00:58:56 +00:00
Klaus Basan
0518e680c3 add greatCircleDistance
refs #81
2014-01-08 00:58:53 +00:00
Klaus Basan
ded6fc012e rename CStreamable to CValueObject
refs #81
2014-01-08 00:58:50 +00:00
Klaus Basan
978f3c88e5 style changes and removals of typeid
refs #81
2014-01-08 00:57:43 +00:00
Mathew Sutcliffe
21ca361bc1 removed operator= and copy ctor from classes where they only duplicated the behaviour of the default implementations that C++ generates automatically 2013-08-19 03:21:12 +01:00
Mathew Sutcliffe
a6f89ce9ea renamed CBaseStreamStringifier to CStreamable 2013-08-19 03:05:09 +01:00
Mathew Sutcliffe
a8036f1ce5 in geodetic coordinates, latitude(), longitude(), and height() return by reference to const instead of by value 2013-08-18 23:15:33 +01:00
Mathew Sutcliffe
2c781e8b36 style fixes: mostly just things that make my eyes bleed :) 2013-08-13 22:29:48 +01:00
Klaus Basan
62591a750f Refactoring, renamed: convertToQString (old: stringForConvert) 2013-07-28 03:31:04 +02:00
Klaus Basan
40a97c3d82 Added I18N for PQs, initial version. Hence resource file and language files. Changed samplesphysicalquantities to check some I18N topics. 2013-07-27 20:23:23 +02:00
Klaus Basan
581638ec7f Enabled coordinate classes for DBus, added generation method for lat/lng by WGS84 strings 2013-07-25 23:58:09 +02:00
Klaus Basan
7316980a5c Enabled coordinates for DBus 2013-07-25 12:37:51 +02:00
Klaus Basan
8b512ba818 DBus enabling of base classes plus sample for testing / show how to use them. Also qdbuscpp2xml plugin for blackmisc classes. 2013-07-22 14:33:50 +02:00
Klaus Basan
abfd72552b Removed template from basestreamstringifier as discussed in https://dev.vatsim-germany.org/boards/15/topics/497?r=503 2013-05-10 22:56:36 +02:00
Klaus Basan
c5b9c48cd6 Changed interpolator (preliminary) to work with PQs and new classes, added stubs for unit tests in BlackCore 2013-04-27 02:09:42 +02:00
Klaus Basan
a31e405b6b Implemented commutative multiplications as friends in the templates, further test cases (unit tests), fixed Doxygen attributes, renamed test classes 2013-04-25 01:56:18 +02:00
Klaus Basan
f4affe55ef Had to withdraw 3Vector3D, since they store values internally as float (idiotic design). Hence qreal will be dropped. Started with Unit tests. 2013-04-20 17:46:46 +02:00
Klaus Basan
7b0468d300 Completed transformation class and created samples for this class 2013-04-20 01:49:50 +02:00
Klaus Basan
8121babe77 Initial structure for refactoring, some conversions still missing. Especially required further test cases. 2013-04-19 00:19:41 +02:00
Klaus Basan
5bf308c54b Initial refactoring of vector and matrix classes 2013-04-18 01:04:21 +02:00