mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#1918 Observed Data : Stripped down SummaryReaderInterface
This commit is contained in:
parent
30a77e4f68
commit
8f158510f9
@ -82,6 +82,8 @@ bool RifReaderEclipseSummary::open(const std::string& headerFileName, const std:
|
|||||||
m_timeSteps.push_back(sim_time);
|
m_timeSteps.push_back(sim_time);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
buildMetaData();
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -288,8 +290,6 @@ const std::vector<time_t>& RifReaderEclipseSummary::timeSteps(const RifEclipseSu
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
int RifReaderEclipseSummary::indexFromAddress(const RifEclipseSummaryAddress& resultAddress)
|
int RifReaderEclipseSummary::indexFromAddress(const RifEclipseSummaryAddress& resultAddress)
|
||||||
{
|
{
|
||||||
this->buildMetaData();
|
|
||||||
|
|
||||||
auto it = m_resultAddressToErtNodeIdx.find(resultAddress);
|
auto it = m_resultAddressToErtNodeIdx.find(resultAddress);
|
||||||
if (it != m_resultAddressToErtNodeIdx.end())
|
if (it != m_resultAddressToErtNodeIdx.end())
|
||||||
{
|
{
|
||||||
@ -304,7 +304,10 @@ int RifReaderEclipseSummary::indexFromAddress(const RifEclipseSummaryAddress& re
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
void RifReaderEclipseSummary::buildMetaData()
|
void RifReaderEclipseSummary::buildMetaData()
|
||||||
{
|
{
|
||||||
if(m_allResultAddresses.size() == 0 && m_ecl_SmSpec)
|
m_allResultAddresses.clear();
|
||||||
|
m_resultAddressToErtNodeIdx.clear();
|
||||||
|
|
||||||
|
if(m_ecl_SmSpec)
|
||||||
{
|
{
|
||||||
int varCount = ecl_smspec_num_nodes(m_ecl_SmSpec);
|
int varCount = ecl_smspec_num_nodes(m_ecl_SmSpec);
|
||||||
for(int i = 0; i < varCount; i++)
|
for(int i = 0; i < varCount; i++)
|
||||||
|
@ -36,7 +36,7 @@ public:
|
|||||||
RifReaderEclipseSummary();
|
RifReaderEclipseSummary();
|
||||||
~RifReaderEclipseSummary();
|
~RifReaderEclipseSummary();
|
||||||
|
|
||||||
virtual bool open(const std::string& headerFileName, const std::vector<std::string>& dataFileNames) override;
|
bool open(const std::string& headerFileName, const std::vector<std::string>& dataFileNames);
|
||||||
|
|
||||||
virtual const std::vector<time_t>& timeSteps(const RifEclipseSummaryAddress& resultAddress) const override;
|
virtual const std::vector<time_t>& timeSteps(const RifEclipseSummaryAddress& resultAddress) const override;
|
||||||
|
|
||||||
@ -44,10 +44,10 @@ public:
|
|||||||
std::string unitName(const RifEclipseSummaryAddress& resultAddress) override;
|
std::string unitName(const RifEclipseSummaryAddress& resultAddress) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual int timeStepCount() const;
|
int timeStepCount() const;
|
||||||
int indexFromAddress(const RifEclipseSummaryAddress& resultAddress);
|
int indexFromAddress(const RifEclipseSummaryAddress& resultAddress);
|
||||||
|
void buildMetaData();
|
||||||
|
|
||||||
virtual void buildMetaData() override;
|
|
||||||
private:
|
private:
|
||||||
// Taken from ecl_sum.h
|
// Taken from ecl_sum.h
|
||||||
typedef struct ecl_sum_struct ecl_sum_type;
|
typedef struct ecl_sum_struct ecl_sum_type;
|
||||||
|
@ -47,7 +47,7 @@ RifReaderObservedData::~RifReaderObservedData()
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
bool RifReaderObservedData::open(const std::string& headerFileName, const std::vector<std::string>& dataFileNames)
|
bool RifReaderObservedData::open(const std::string& headerFileName)
|
||||||
{
|
{
|
||||||
|
|
||||||
if (headerFileName.empty()) return false;
|
if (headerFileName.empty()) return false;
|
||||||
@ -83,17 +83,6 @@ const std::vector<time_t>& RifReaderObservedData::timeSteps(const RifEclipseSumm
|
|||||||
return m_timeStepsTime_t;
|
return m_timeStepsTime_t;
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
///
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
void RifReaderObservedData::buildMetaData()
|
|
||||||
{
|
|
||||||
if (m_allResultAddresses.size() == 0)
|
|
||||||
{
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
|
@ -42,7 +42,7 @@ public:
|
|||||||
RifReaderObservedData();
|
RifReaderObservedData();
|
||||||
~RifReaderObservedData();
|
~RifReaderObservedData();
|
||||||
|
|
||||||
virtual bool open(const std::string& headerFileName, const std::vector<std::string>& dataFileNames) override;
|
bool open(const std::string& headerFileName);
|
||||||
|
|
||||||
virtual const std::vector<time_t>& timeSteps(const RifEclipseSummaryAddress& resultAddress) const override;
|
virtual const std::vector<time_t>& timeSteps(const RifEclipseSummaryAddress& resultAddress) const override;
|
||||||
|
|
||||||
@ -50,8 +50,6 @@ public:
|
|||||||
std::string unitName(const RifEclipseSummaryAddress& resultAddress) override;
|
std::string unitName(const RifEclipseSummaryAddress& resultAddress) override;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
virtual void buildMetaData() override;
|
|
||||||
|
|
||||||
RifEclipseSummaryAddress address(const AsciiData& asciiData, std::string identifierName, RifEclipseSummaryAddress::SummaryVarCategory summaryCategor);
|
RifEclipseSummaryAddress address(const AsciiData& asciiData, std::string identifierName, RifEclipseSummaryAddress::SummaryVarCategory summaryCategor);
|
||||||
private:
|
private:
|
||||||
RifColumnBasedAsciiParser* m_asciiParser;
|
RifColumnBasedAsciiParser* m_asciiParser;
|
||||||
|
@ -28,8 +28,6 @@
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
const std::vector<RifEclipseSummaryAddress>& RifSummaryReaderInterface::allResultAddresses()
|
const std::vector<RifEclipseSummaryAddress>& RifSummaryReaderInterface::allResultAddresses()
|
||||||
{
|
{
|
||||||
this->buildMetaData();
|
|
||||||
|
|
||||||
return m_allResultAddresses;
|
return m_allResultAddresses;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -54,8 +52,6 @@ std::vector<QDateTime> RifSummaryReaderInterface::fromTimeT(const std::vector<ti
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
bool RifSummaryReaderInterface::hasAddress(const RifEclipseSummaryAddress& resultAddress)
|
bool RifSummaryReaderInterface::hasAddress(const RifEclipseSummaryAddress& resultAddress)
|
||||||
{
|
{
|
||||||
this->buildMetaData();
|
|
||||||
|
|
||||||
for (RifEclipseSummaryAddress summaryAddress : m_allResultAddresses)
|
for (RifEclipseSummaryAddress summaryAddress : m_allResultAddresses)
|
||||||
{
|
{
|
||||||
if (summaryAddress == resultAddress)
|
if (summaryAddress == resultAddress)
|
||||||
|
@ -37,21 +37,17 @@ class QDateTime;
|
|||||||
class RifSummaryReaderInterface : public cvf::Object
|
class RifSummaryReaderInterface : public cvf::Object
|
||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
virtual bool open(const std::string& headerFileName, const std::vector<std::string>& dataFileNames) = 0;
|
|
||||||
|
|
||||||
bool hasAddress(const RifEclipseSummaryAddress& resultAddress);
|
bool hasAddress(const RifEclipseSummaryAddress& resultAddress);
|
||||||
const std::vector<RifEclipseSummaryAddress>& allResultAddresses();
|
const std::vector<RifEclipseSummaryAddress>& allResultAddresses();
|
||||||
virtual const std::vector<time_t>& timeSteps(const RifEclipseSummaryAddress& resultAddress) const = 0;
|
virtual const std::vector<time_t>& timeSteps(const RifEclipseSummaryAddress& resultAddress) const = 0;
|
||||||
|
virtual bool values(const RifEclipseSummaryAddress& resultAddress,
|
||||||
|
std::vector<double>* values) = 0;
|
||||||
|
|
||||||
virtual bool values(const RifEclipseSummaryAddress& resultAddress, std::vector<double>* values) = 0;
|
|
||||||
virtual std::string unitName(const RifEclipseSummaryAddress& resultAddress) = 0;
|
virtual std::string unitName(const RifEclipseSummaryAddress& resultAddress) = 0;
|
||||||
|
|
||||||
// TODO: Move this to a tools class with static members
|
// TODO: Move this to a tools class with static members
|
||||||
static std::vector<QDateTime> fromTimeT(const std::vector<time_t>& timeSteps);
|
static std::vector<QDateTime> fromTimeT(const std::vector<time_t>& timeSteps);
|
||||||
|
|
||||||
protected:
|
|
||||||
virtual void buildMetaData() = 0;
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
std::vector<RifEclipseSummaryAddress> m_allResultAddresses;
|
std::vector<RifEclipseSummaryAddress> m_allResultAddresses;
|
||||||
};
|
};
|
||||||
|
Loading…
Reference in New Issue
Block a user