Consistenty use auto-generated namespace comments. This patch was generated using clang-tidy: clang-tidy -checks="-*,google-readability-namespace-comments" -fix Switch to the format used by clang-tidy to allow easy, automatic, tool-based maintenance / checking of the comments. This also found a few instances of comments that were out of sync.
Don't use std:: in the code directly (where possible). Use "using std::foo" to make the actual code itself a lot more readable. There are some exceptions where we usually cannot do this, e.g. std::thread often conflicts with "thread" from Qt or Boost.
license: remove FSF postal address from boiler plate license text Remove the FSF postal address as it might change (it did in the past). Reference the gnu.org website instead which is more stable.
Fix unit tests and prevent warnings
Untangle the time formatting functions a bit The formatting depending on the distance between two timestamps is reintroduced with the responding function residing in the 'Ruler' class (the prime user of that function). Fixes a rounding bug for the least significant digit in the 'format_time_minutes()' function. The 'Cursor' and 'CursorPair' classes now use the same precision when formatting timestamps as the rest of the program.
View: Change the type of tick_period to pv::util::Timestamp This makes the tick position/label calculation in the ruler more precise, avoiding rounded values for zero which would yield to "+0" or "-0" labels.
Use typesafe enum classes in pv::util
format_time(): Use the timestamp type in the calculation
format_si_value(): Use the timestamp type in the calculation