Mercurial > hg > svcore
diff data/model/BoxModel.h @ 1835:804dd0c06f0e
Merge from branch sensible-delimited-data-strings
author | Chris Cannam |
---|---|
date | Mon, 06 Apr 2020 13:55:44 +0100 |
parents | 21c792334c2e |
children |
line wrap: on
line diff
--- a/data/model/BoxModel.h Fri Apr 03 12:12:02 2020 +0100 +++ b/data/model/BoxModel.h Mon Apr 06 13:55:44 2020 +0100 @@ -348,8 +348,9 @@ m_events.toXml(out, indent, QString("dimensions=\"2\""), options); } - QString getDelimitedDataHeaderLine(QString delimiter, - DataExportOptions opts) const override { + QVector<QString> + getStringExportHeaders(DataExportOptions opts) const override { + QStringList list; // These are considered API rather than human-readable text - @@ -363,23 +364,27 @@ list << "extent start" << "extent end" << "label"; - return list.join(delimiter).toUpper(); + QVector<QString> sv; + for (QString s: list) { + sv.push_back(s.toUpper()); + } + return sv; } - QString toDelimitedDataString(QString delimiter, - DataExportOptions opts, - sv_frame_t startFrame, - sv_frame_t duration) const override { + QVector<QVector<QString>> + toStringExportRows(DataExportOptions opts, + sv_frame_t startFrame, + sv_frame_t duration) const override { // We need a custom format here EventVector ee = m_events.getEventsSpanning(startFrame, duration); - QString s; + QVector<QVector<QString>> rows; for (auto e: ee) { - QStringList list; + QVector<QString> list; if (opts & DataExportWriteTimeInFrames) { @@ -405,10 +410,10 @@ list << e.getLabel(); } - s += list.join(delimiter) + "\n"; + rows.push_back(list); } - return s; + return rows; } protected: