projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Use a type with a greater resolution to represent time values
[pulseview.git]
/
pv
/
util.cpp
diff --git
a/pv/util.cpp
b/pv/util.cpp
index d2d70827335d0fb86cbeb0b0a2cd160ebc33569b..192a2e06ba1571766bbab637e1135d1980b5904a 100644
(file)
--- a/
pv/util.cpp
+++ b/
pv/util.cpp
@@
-41,7
+41,7
@@
const int FirstSIPrefix = 8;
const int FirstSIPrefixPower = -(FirstSIPrefix * 3);
const double MinTimeDelta = 1e-15; // Anything below 1 fs can be considered zero
const int FirstSIPrefixPower = -(FirstSIPrefix * 3);
const double MinTimeDelta = 1e-15; // Anything below 1 fs can be considered zero
-QString format_si_value(double v, QString unit, int prefix,
+
static
QString format_si_value(double v, QString unit, int prefix,
unsigned int precision, bool sign)
{
if (prefix < 0) {
unsigned int precision, bool sign)
{
if (prefix < 0) {
@@
-71,6
+71,12
@@
QString format_si_value(double v, QString unit, int prefix,
return s;
}
return s;
}
+QString format_si_value(const Timestamp& v, QString unit, int prefix,
+ unsigned int precision, bool sign)
+{
+ return format_si_value(v.convert_to<double>(), unit, prefix, precision, sign);
+}
+
static QString pad_number(unsigned int number, int length)
{
return QString("%1").arg(number, length, 10, QChar('0'));
static QString pad_number(unsigned int number, int length)
{
return QString("%1").arg(number, length, 10, QChar('0'));
@@
-156,7
+162,7
@@
static QString format_time_with_si(double t, QString unit, int prefix,
return format_si_value(t, unit, prefix, relative_prec);
}
return format_si_value(t, unit, prefix, relative_prec);
}
-QString format_time(double t, int prefix, TimeUnit unit, unsigned int precision)
+
static
QString format_time(double t, int prefix, TimeUnit unit, unsigned int precision)
{
// Make 0 appear as 0, not random +0 or -0
if (fabs(t) < MinTimeDelta)
{
// Make 0 appear as 0, not random +0 or -0
if (fabs(t) < MinTimeDelta)
@@
-176,9
+182,14
@@
QString format_time(double t, int prefix, TimeUnit unit, unsigned int precision)
return format_time_in_full(t, precision);
}
return format_time_in_full(t, precision);
}
-QString format_second(double second)
+QString format_time(const Timestamp& t, int prefix, TimeUnit unit, unsigned int precision)
+{
+ return format_time(t.convert_to<double>(), prefix, unit, precision);
+}
+
+QString format_second(const Timestamp& second)
{
{
- return format_si_value(second, "s", -1, 0, false);
+ return format_si_value(second
.convert_to<double>()
, "s", -1, 0, false);
}
} // namespace util
}
} // namespace util