Commit Graph

9 Commits

Author SHA1 Message Date
Mathew Sutcliffe
e12d7fbd7a Had a bit of spare time so tried out the policy design pattern I've been learning about, applying it to PQ converters.
Some interesting results:
* Minor simplification of PQ converters and unit ctors; may not seem like much, but I think it enables possible future simplifications of a similar kind.
* CMeasurementPrefix is gone, no longer needed. Now prefixes are applied at the template stage.
* Apart from that, PQs public API is unchanged.
* Discovered that ft/s^2 conversion factor was wrong: fixed.
2013-09-15 22:01:11 +01:00
Mathew Sutcliffe
74452599bf disambiguate metric tonne (1,000kg) and US ton (2,000lb) 2013-08-22 19:59:41 +01:00
Mathew Sutcliffe
da8ba9aac3 First major wave of PQ refactoring, including but not limited to:
* Default unit is more clearly stated in one place, not restated in many different places, and is not always the SI unit
* Converter strategy pattern in CMeasurementUnit, covering linear, affine, and different kinds of sexagesimal units
* General reorganization of CMeasurementUnit construction and CPhysicalQuantity methods, not removing any behvaiour
* Move duplicated method unitFromSymbol from derived classes into base class CMeasurementUnit
* For DBus, CPhysicalQuantity marshals both in its own unit and in the default unit
2013-08-19 03:05:08 +01:00
Mathew Sutcliffe
5d4fcc8d40 resolved pressure constants 1013.2hPa != 29.92inHg 2013-08-18 17:29:37 +01:00
Mathew Sutcliffe
baa0ac147e remove integer quantities 2013-08-14 18:05:15 +01:00
Klaus Basan
8f5d9263fd Fixed all issues detected by the test cases under MinGW - such as usage of abs() -> changed to qAbs(), rounding issues detected during calculations, and changed streaming methods with qDebug() (QDebug vs &QDebug issue). 2013-04-30 01:43:14 +02:00
Klaus Basan
c6426a0759 Move Math constants into class (to be consistent with other constants), tested against minGW / gcc 4.7.2 and fixed various issues (mainly initializer lists, unused variables). BlackMisc compiles now in MinGW, but still issues (especially with qDebug() friend methods) 2013-04-29 16:00:41 +02:00
Klaus Basan
5eac9be7d5 Unit tests for acceleration and more for vector 2013-04-25 20:21:04 +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