#1816 Observed data: Only one timesteps-vector in ascii parser

This commit is contained in:
Rebecca Cox 2017-09-21 12:21:43 +02:00
parent 62d9978504
commit 2966412bce
2 changed files with 36 additions and 10 deletions

View File

@ -51,11 +51,33 @@ const std::vector<QDateTime>& RifColumnBasedAsciiParser::timeSteps() const
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
const std::vector<double>& RifColumnBasedAsciiParser::columnValues(size_t columnIndex) const
const std::vector<double> RifColumnBasedAsciiParser::columnValues(size_t columnIndex) const
{
if (m_data.m_values.size() <= columnIndex)
{
std::vector<double> dummy;
return dummy;
}
return m_data.m_values[columnIndex];
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
const std::vector< std::vector<double> >& RifColumnBasedAsciiParser::values() const
{
return m_data.m_values;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
const size_t RifColumnBasedAsciiParser::columnCount() const
{
return m_data.m_values.size();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------

View File

@ -24,12 +24,6 @@
#include <vector>
struct AsciiData
{
std::vector<QString> m_headers;
std::vector<QDateTime> m_timeSteps;
std::vector< std::vector<double> > m_values;
};
//==================================================================================================
///
@ -39,13 +33,23 @@ class RifColumnBasedAsciiParser
public:
RifColumnBasedAsciiParser(QString& data, const QString dateFormat, QLocale decimalLocale, QString cellSeparator);
const std::vector<QString>& headers() const;
const std::vector<QDateTime>& timeSteps() const;
const std::vector<double>& columnValues(size_t columnIndex) const;
const std::vector<QString>& headers() const;
const std::vector<QDateTime>& timeSteps() const;
const std::vector<double> columnValues(size_t columnIndex) const;
const std::vector<std::vector<double>>& values() const;
const size_t columnCount() const;
private:
void parseData(QString& data, QString dateFormat, QLocale decimalLocale, QString cellSeparator);
private:
struct AsciiData
{
std::vector<QString> m_headers;
std::vector<QDateTime> m_timeSteps;
std::vector< std::vector<double> > m_values;
};
AsciiData m_data;
};