comparison data/model/RegionModel.h @ 1833:21c792334c2e sensible-delimited-data-strings

Rewrite all the DelimitedDataString stuff so as to return vectors of individual cell strings rather than having the classes add the delimiters themselves. Rename accordingly to names based on StringExport. Take advantage of this in the CSV writer code so as to properly quote cells that contain delimiter characters.
author Chris Cannam
date Fri, 03 Apr 2020 17:11:05 +0100
parents c546429d4c2f
children
comparison
equal deleted inserted replaced
1832:7c92c644db20 1833:21c792334c2e
338 .arg(extraAttributes)); 338 .arg(extraAttributes));
339 339
340 m_events.toXml(out, indent, QString("dimensions=\"3\"")); 340 m_events.toXml(out, indent, QString("dimensions=\"3\""));
341 } 341 }
342 342
343 QString getDelimitedDataHeaderLine(QString delimiter, 343 QVector<QString>
344 DataExportOptions options) const override { 344 getStringExportHeaders(DataExportOptions options) const override {
345 return m_events.getDelimitedDataHeaderLine(delimiter, 345 return m_events.getStringExportHeaders(options, {});
346 options, 346 }
347 Event::ExportNameOptions()); 347
348 } 348 QVector<QVector<QString>>
349 349 toStringExportRows(DataExportOptions options,
350 QString toDelimitedDataString(QString delimiter, 350 sv_frame_t startFrame,
351 DataExportOptions options, 351 sv_frame_t duration) const override {
352 sv_frame_t startFrame, 352 return m_events.toStringExportRows
353 sv_frame_t duration) const override { 353 (options,
354 return m_events.toDelimitedDataString
355 (delimiter,
356 options,
357 startFrame, 354 startFrame,
358 duration, 355 duration,
359 m_sampleRate, 356 m_sampleRate,
360 m_resolution, 357 m_resolution,
361 Event().withValue(0.f).withDuration(m_resolution)); 358 Event().withValue(0.f).withDuration(m_resolution));