Faults: Eclipse input case use preferences to control import of faults

This commit is contained in:
Magne Sjaastad
2013-12-20 09:18:52 +01:00
parent b7141dde50
commit 59eeb0894f
8 changed files with 28 additions and 31 deletions

View File

@@ -67,7 +67,7 @@ RifEclipseInputFileTools::~RifEclipseInputFileTools()
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
/// ///
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
bool RifEclipseInputFileTools::openGridFile(const QString& fileName, RigCaseData* eclipseCase) bool RifEclipseInputFileTools::openGridFile(const QString& fileName, RigCaseData* eclipseCase, bool importFaults)
{ {
CVF_ASSERT(eclipseCase); CVF_ASSERT(eclipseCase);
@@ -168,11 +168,14 @@ bool RifEclipseInputFileTools::openGridFile(const QString& fileName, RigCaseData
progress.setProgress(7); progress.setProgress(7);
progress.setProgressDescription("Read faults ..."); progress.setProgressDescription("Read faults ...");
if (importFaults)
{
cvf::Collection<RigFault> faults; cvf::Collection<RigFault> faults;
RifEclipseInputFileTools::readFaults(fileName, faults, keywordsAndFilePos); RifEclipseInputFileTools::readFaults(fileName, faults, keywordsAndFilePos);
RigMainGrid* mainGrid = eclipseCase->mainGrid(); RigMainGrid* mainGrid = eclipseCase->mainGrid();
mainGrid->setFaults(faults); mainGrid->setFaults(faults);
}
progress.setProgress(8); progress.setProgress(8);
progress.setProgressDescription("Cleaning up ..."); progress.setProgressDescription("Cleaning up ...");

View File

@@ -53,7 +53,7 @@ public:
RifEclipseInputFileTools(); RifEclipseInputFileTools();
virtual ~RifEclipseInputFileTools(); virtual ~RifEclipseInputFileTools();
static bool openGridFile(const QString& fileName, RigCaseData* eclipseCase); static bool openGridFile(const QString& fileName, RigCaseData* eclipseCase, bool importFaults);
// Returns map of assigned resultName and Eclipse Keyword. // Returns map of assigned resultName and Eclipse Keyword.
static std::map<QString, QString> readProperties(const QString& fileName, RigCaseData* eclipseCase); static std::map<QString, QString> readProperties(const QString& fileName, RigCaseData* eclipseCase);

View File

@@ -86,7 +86,7 @@ bool RifReaderEclipseInput::open(const QString& fileName, RigCaseData* eclipseCa
bool isOk = false; bool isOk = false;
if (eclipseCase->mainGrid()->gridPointDimensions() == cvf::Vec3st(0,0,0)) if (eclipseCase->mainGrid()->gridPointDimensions() == cvf::Vec3st(0,0,0))
{ {
isOk = RifEclipseInputFileTools::openGridFile(fileName, eclipseCase); isOk = RifEclipseInputFileTools::openGridFile(fileName, eclipseCase, isFaultImportEnabled());
} }
return isOk; return isOk;

View File

@@ -196,8 +196,6 @@ RifReaderEclipseOutput::RifReaderEclipseOutput()
m_ecl_init_file = NULL; m_ecl_init_file = NULL;
m_dynamicResultsAccess = NULL; m_dynamicResultsAccess = NULL;
m_enableFaultsImport = true;
} }
//-------------------------------------------------------------------------------------------------- //--------------------------------------------------------------------------------------------------
@@ -379,7 +377,7 @@ bool RifReaderEclipseOutput::open(const QString& fileName, RigCaseData* eclipseC
progInfo.setProgressDescription("Reading faults"); progInfo.setProgressDescription("Reading faults");
progInfo.setNextProgressIncrement(10); progInfo.setNextProgressIncrement(10);
if (m_enableFaultsImport) if (isFaultImportEnabled())
{ {
if (this->filenamesWithFaults().size() > 0) if (this->filenamesWithFaults().size() > 0)
{ {
@@ -1710,11 +1708,3 @@ std::string RifReaderEclipseOutput::ertGridName(size_t gridNr)
return gridName; return gridName;
} }
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RifReaderEclipseOutput::enableFaultsImport(bool enableFaultsImport)
{
m_enableFaultsImport = enableFaultsImport;
}

View File

@@ -45,7 +45,6 @@ public:
RifReaderEclipseOutput(); RifReaderEclipseOutput();
virtual ~RifReaderEclipseOutput(); virtual ~RifReaderEclipseOutput();
void enableFaultsImport(bool enableFaultsImport);
bool open(const QString& fileName, RigCaseData* eclipseCase); bool open(const QString& fileName, RigCaseData* eclipseCase);
virtual bool openAndReadActiveCellData(const QString& fileName, const std::vector<QDateTime>& mainCaseTimeSteps, RigCaseData* eclipseCase); virtual bool openAndReadActiveCellData(const QString& fileName, const std::vector<QDateTime>& mainCaseTimeSteps, RigCaseData* eclipseCase);
void close(); void close();
@@ -89,6 +88,4 @@ private:
ecl_file_type* m_ecl_init_file; // File access to static results ecl_file_type* m_ecl_init_file; // File access to static results
cvf::ref<RifEclipseRestartDataAccess> m_dynamicResultsAccess; // File access to dynamic results cvf::ref<RifEclipseRestartDataAccess> m_dynamicResultsAccess; // File access to dynamic results
bool m_enableFaultsImport;
}; };

View File

@@ -44,9 +44,12 @@ public:
}; };
public: public:
RifReaderInterface() {} RifReaderInterface() { m_enableFaultsImport = false; }
virtual ~RifReaderInterface() {} virtual ~RifReaderInterface() {}
void enableFaultsImport(bool enableFaultsImport) { m_enableFaultsImport = enableFaultsImport; }
bool isFaultImportEnabled() { return m_enableFaultsImport; }
virtual bool open(const QString& fileName, RigCaseData* eclipseCase) = 0; virtual bool open(const QString& fileName, RigCaseData* eclipseCase) = 0;
virtual void close() = 0; virtual void close() = 0;
@@ -58,6 +61,8 @@ public:
void setFilenamesWithFaults(const std::vector<QString>& filenames) { m_filenamesWithFaults = filenames; } void setFilenamesWithFaults(const std::vector<QString>& filenames) { m_filenamesWithFaults = filenames; }
std::vector<QString> filenamesWithFaults() { return m_filenamesWithFaults; } std::vector<QString> filenamesWithFaults() { return m_filenamesWithFaults; }
private: private:
std::vector<QString> m_filenamesWithFaults; std::vector<QString> m_filenamesWithFaults;
bool m_enableFaultsImport;
}; };

View File

@@ -103,9 +103,11 @@ void RimInputCase::openDataFileSet(const QStringList& fileNames)
// First find and read the grid data // First find and read the grid data
if (this->reservoirData()->mainGrid()->gridPointDimensions() == cvf::Vec3st(0,0,0)) if (this->reservoirData()->mainGrid()->gridPointDimensions() == cvf::Vec3st(0,0,0))
{ {
RiaPreferences* prefs = RiaApplication::instance()->preferences();
for (int i = 0; i < fileNames.size(); i++) for (int i = 0; i < fileNames.size(); i++)
{ {
if (RifEclipseInputFileTools::openGridFile(fileNames[i], this->reservoirData())) if (RifEclipseInputFileTools::openGridFile(fileNames[i], this->reservoirData(), prefs->enableFaultsImport()))
{ {
m_gridFileName = fileNames[i]; m_gridFileName = fileNames[i];
@@ -188,8 +190,11 @@ bool RimInputCase::openEclipseGridFile()
} }
else else
{ {
cvf::ref<RigCaseData> eclipseCase = new RigCaseData; RiaPreferences* prefs = RiaApplication::instance()->preferences();
readerInterface = new RifReaderEclipseInput; readerInterface = new RifReaderEclipseInput;
readerInterface->enableFaultsImport(prefs->enableFaultsImport());
cvf::ref<RigCaseData> eclipseCase = new RigCaseData;
if (!readerInterface->open(m_gridFileName, eclipseCase.p())) if (!readerInterface->open(m_gridFileName, eclipseCase.p()))
{ {
return false; return false;

View File

@@ -98,12 +98,9 @@ bool RimResultCase::openEclipseGridFile()
return false; return false;
} }
cvf::ref<RifReaderEclipseOutput> outputInterface = new RifReaderEclipseOutput;
RiaPreferences* prefs = RiaApplication::instance()->preferences(); RiaPreferences* prefs = RiaApplication::instance()->preferences();
outputInterface->enableFaultsImport(prefs->enableFaultsImport()); readerInterface = new RifReaderEclipseOutput;
readerInterface = outputInterface; readerInterface->enableFaultsImport(prefs->enableFaultsImport());
readerInterface->setFilenamesWithFaults(this->filesContainingFaults()); readerInterface->setFilenamesWithFaults(this->filesContainingFaults());
cvf::ref<RigCaseData> eclipseCase = new RigCaseData; cvf::ref<RigCaseData> eclipseCase = new RigCaseData;