#include <extdef.h>
-#include <cassert>
#include <algorithm>
+#include <cassert>
#include <sstream>
-#include <QTextStream>
#include <QDebug>
+#include <QTextStream>
using std::fixed;
using std::max;
return stream << QString::fromStdString(str);
}
-QString format_time_si(
- const Timestamp& v,
- SIPrefix prefix,
- unsigned int precision,
- QString unit,
- bool sign)
+QString format_time_si(const Timestamp& v, SIPrefix prefix,
+ unsigned int precision, QString unit, bool sign)
{
if (prefix == SIPrefix::unspecified) {
// No prefix given, calculate it
QTextStream ts(&s);
if (sign && !v.is_zero())
ts << forcesign;
- ts
- << qSetRealNumberPrecision(precision)
- << (v * multiplier)
- << ' '
- << prefix
- << unit;
+ ts << qSetRealNumberPrecision(precision) << (v * multiplier) << ' '
+ << prefix << unit;
return s;
}
-QString format_time_si_adjusted(
- const Timestamp& t,
- SIPrefix prefix,
- unsigned precision,
- QString unit,
- bool sign)
+QString format_time_si_adjusted(const Timestamp& t, SIPrefix prefix,
+ unsigned precision, QString unit, bool sign)
{
// The precision is always given without taking the prefix into account
// so we need to deduct the number of decimals the prefix might imply
return format_time_si(t, prefix, relative_prec, unit, sign);
}
-
// Helper for 'format_time_minutes()'.
static QString pad_number(unsigned int number, int length)
{
return s;
}
+/**
+ * Split a string into tokens at occurences of the separator.
+ *
+ * @param[in] text The input string to split.
+ * @param[in] separator The delimiter between tokens.
+ *
+ * @return A vector of broken down tokens.
+ */
+vector<string> split_string(string text, string separator)
+{
+ vector<string> result;
+ size_t pos;
+
+ while ((pos = text.find(separator)) != std::string::npos) {
+ result.push_back(text.substr(0, pos));
+ text = text.substr(pos + separator.length());
+ }
+ result.push_back(text);
+
+ return result;
+}
+
} // namespace util
} // namespace pv