mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#2766 Bugfix. Import egrid files even though there are no associated summary files
This commit is contained in:
parent
9e40ba39c8
commit
c3ae45e748
@ -64,8 +64,11 @@ bool RiaImportEclipseCaseTools::openEclipseCasesFromFile(const QStringList& file
|
|||||||
// Get list of files to import
|
// Get list of files to import
|
||||||
RifSummaryCaseRestartSelector selector;
|
RifSummaryCaseRestartSelector selector;
|
||||||
if(noDialog) selector.showDialog(false);
|
if(noDialog) selector.showDialog(false);
|
||||||
selector.buildGridCaseFileList(true);
|
std::vector<RifSummaryCaseFileInfo> summaryFileInfos;
|
||||||
std::vector<RifSummaryCaseFileInfo> summaryFileInfos = selector.getFilesToImportFromGridFiles(fileNames);
|
if (selector.getFilesToImportFromGridFiles(fileNames))
|
||||||
|
{
|
||||||
|
summaryFileInfos = selector.summaryFileInfos();
|
||||||
|
}
|
||||||
|
|
||||||
// Import eclipse case files
|
// Import eclipse case files
|
||||||
for (const QString& gridCaseFile : selector.gridCaseFiles())
|
for (const QString& gridCaseFile : selector.gridCaseFiles())
|
||||||
|
@ -116,7 +116,11 @@ bool RicImportSummaryCasesFeature::createSummaryCasesFromFiles(const QStringList
|
|||||||
if (!sumCaseColl) return false;
|
if (!sumCaseColl) return false;
|
||||||
|
|
||||||
RifSummaryCaseRestartSelector fileSelector;
|
RifSummaryCaseRestartSelector fileSelector;
|
||||||
std::vector<RifSummaryCaseFileInfo> importFileInfos = fileSelector.getFilesToImportFromSummaryFiles(fileNames);
|
std::vector<RifSummaryCaseFileInfo> importFileInfos;
|
||||||
|
if (fileSelector.getFilesToImportFromSummaryFiles(fileNames))
|
||||||
|
{
|
||||||
|
importFileInfos = fileSelector.summaryFileInfos();
|
||||||
|
}
|
||||||
|
|
||||||
std::vector<RimSummaryCase*> sumCases = sumCaseColl->createSummaryCasesFromFileInfos(importFileInfos);
|
std::vector<RimSummaryCase*> sumCases = sumCaseColl->createSummaryCasesFromFileInfos(importFileInfos);
|
||||||
|
|
||||||
|
@ -193,17 +193,30 @@ RicSummaryCaseRestartDialog::~RicSummaryCaseRestartDialog()
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RicSummaryCaseRestartDialogResult RicSummaryCaseRestartDialog::openDialog(const QString& summaryHeaderFile,
|
RicSummaryCaseRestartDialogResult RicSummaryCaseRestartDialog::openDialog(const std::pair<QString /*sum*/, QString /*grid*/>& initialFiles,
|
||||||
bool showApplyToAllWidget,
|
bool showApplyToAllWidget,
|
||||||
bool buildGridCaseFileList,
|
|
||||||
ImportOptions defaultSummaryImportOption,
|
ImportOptions defaultSummaryImportOption,
|
||||||
ImportOptions defaultGridImportOption,
|
ImportOptions defaultGridImportOption,
|
||||||
RicSummaryCaseRestartDialogResult *lastResult,
|
RicSummaryCaseRestartDialogResult *lastResult,
|
||||||
QWidget *parent)
|
QWidget *parent)
|
||||||
{
|
{
|
||||||
RicSummaryCaseRestartDialog dialog(parent);
|
RicSummaryCaseRestartDialog dialog(parent);
|
||||||
|
QString initialSummaryFile = initialFiles.first;
|
||||||
|
QString initialGridFile = initialFiles.second;
|
||||||
|
bool handleGridFile = !initialGridFile.isEmpty();
|
||||||
|
|
||||||
RifRestartFileInfo currentFileInfo = dialog.getFileInfo(summaryHeaderFile);
|
// If only grid file is present, return
|
||||||
|
if (initialSummaryFile.isEmpty() && !initialGridFile.isEmpty())
|
||||||
|
{
|
||||||
|
return RicSummaryCaseRestartDialogResult(true,
|
||||||
|
defaultSummaryImportOption,
|
||||||
|
defaultGridImportOption,
|
||||||
|
{},
|
||||||
|
QStringList({ initialGridFile }),
|
||||||
|
lastResult && lastResult->applyToAll);
|
||||||
|
}
|
||||||
|
|
||||||
|
RifRestartFileInfo currentFileInfo = dialog.getFileInfo(initialSummaryFile);
|
||||||
if (!currentFileInfo.valid())
|
if (!currentFileInfo.valid())
|
||||||
{
|
{
|
||||||
return RicSummaryCaseRestartDialogResult();
|
return RicSummaryCaseRestartDialogResult();
|
||||||
@ -211,13 +224,12 @@ RicSummaryCaseRestartDialogResult RicSummaryCaseRestartDialog::openDialog(const
|
|||||||
|
|
||||||
RifReaderEclipseSummary reader;
|
RifReaderEclipseSummary reader;
|
||||||
bool hasWarnings = false;
|
bool hasWarnings = false;
|
||||||
std::vector<RifRestartFileInfo> originFileInfos = reader.getRestartFiles(summaryHeaderFile, &hasWarnings);
|
std::vector<RifRestartFileInfo> originFileInfos = reader.getRestartFiles(initialSummaryFile, &hasWarnings);
|
||||||
|
|
||||||
// If no restart files are found and no warnings, do not show dialog
|
// If no restart files are found and no warnings, do not show dialog
|
||||||
if (originFileInfos.empty() &&!hasWarnings)
|
if (originFileInfos.empty() &&!hasWarnings)
|
||||||
{
|
{
|
||||||
QString gridCaseFile = RifEclipseSummaryTools::findGridCaseFileFromSummaryHeaderFile(summaryHeaderFile);
|
return RicSummaryCaseRestartDialogResult(true, NOT_IMPORT, NOT_IMPORT, QStringList({ initialSummaryFile }), QStringList({ initialGridFile }), false);
|
||||||
return RicSummaryCaseRestartDialogResult(true, NOT_IMPORT, NOT_IMPORT, QStringList({ summaryHeaderFile }), QStringList({ gridCaseFile }), false);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
RicSummaryCaseRestartDialogResult dialogResult;
|
RicSummaryCaseRestartDialogResult dialogResult;
|
||||||
@ -238,12 +250,11 @@ RicSummaryCaseRestartDialogResult RicSummaryCaseRestartDialog::openDialog(const
|
|||||||
std::vector<RifRestartFileInfo> originSummaryFileInfos;
|
std::vector<RifRestartFileInfo> originSummaryFileInfos;
|
||||||
std::vector<RifRestartFileInfo> originGridFileInfos;
|
std::vector<RifRestartFileInfo> originGridFileInfos;
|
||||||
|
|
||||||
// Build lists of files
|
// Grid file
|
||||||
if (buildGridCaseFileList)
|
if (handleGridFile)
|
||||||
{
|
{
|
||||||
dialog.m_currentFilesGroup->setTitle("Current Grid and Summary Files");
|
dialog.m_currentFilesGroup->setTitle("Current Grid and Summary Files");
|
||||||
QString gridFile = RifEclipseSummaryTools::findGridCaseFileFromSummaryHeaderFile(currentFileInfo.fileName);
|
currentFileInfos.push_back(RifRestartFileInfo(initialGridFile, currentFileInfo.startDate, currentFileInfo.endDate));
|
||||||
currentFileInfos.push_back(RifRestartFileInfo(gridFile, currentFileInfo.startDate, currentFileInfo.endDate));
|
|
||||||
|
|
||||||
for (const auto& ofi : originFileInfos)
|
for (const auto& ofi : originFileInfos)
|
||||||
{
|
{
|
||||||
@ -269,7 +280,7 @@ RicSummaryCaseRestartDialogResult RicSummaryCaseRestartDialog::openDialog(const
|
|||||||
case ImportOptions::NOT_IMPORT: dialog.m_summaryNotReadBtn->setChecked(true); break;
|
case ImportOptions::NOT_IMPORT: dialog.m_summaryNotReadBtn->setChecked(true); break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (buildGridCaseFileList)
|
if (handleGridFile)
|
||||||
{
|
{
|
||||||
switch (defaultGridImportOption)
|
switch (defaultGridImportOption)
|
||||||
{
|
{
|
||||||
@ -312,7 +323,7 @@ RicSummaryCaseRestartDialogResult RicSummaryCaseRestartDialog::openDialog(const
|
|||||||
return RicSummaryCaseRestartDialogResult(false, NOT_IMPORT, NOT_IMPORT, QStringList(), QStringList(), false);
|
return RicSummaryCaseRestartDialogResult(false, NOT_IMPORT, NOT_IMPORT, QStringList(), QStringList(), false);
|
||||||
}
|
}
|
||||||
|
|
||||||
dialogResult.summaryFiles.push_back(RiaFilePathTools::toInternalSeparator(summaryHeaderFile));
|
dialogResult.summaryFiles.push_back(RiaFilePathTools::toInternalSeparator(initialSummaryFile));
|
||||||
if (dialogResult.summaryImportOption == SEPARATE_CASES)
|
if (dialogResult.summaryImportOption == SEPARATE_CASES)
|
||||||
{
|
{
|
||||||
for (const auto& ofi : originFileInfos)
|
for (const auto& ofi : originFileInfos)
|
||||||
@ -321,17 +332,16 @@ RicSummaryCaseRestartDialogResult RicSummaryCaseRestartDialog::openDialog(const
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (buildGridCaseFileList)
|
if (handleGridFile)
|
||||||
{
|
{
|
||||||
QString gridCaseFile = RifEclipseSummaryTools::findGridCaseFileFromSummaryHeaderFile(summaryHeaderFile);
|
dialogResult.gridFiles.push_back(initialGridFile);
|
||||||
dialogResult.gridFiles.push_back(gridCaseFile);
|
|
||||||
|
|
||||||
if (dialogResult.gridImportOption == SEPARATE_CASES)
|
if (dialogResult.gridImportOption == SEPARATE_CASES)
|
||||||
{
|
{
|
||||||
for (const auto& ofi : originFileInfos)
|
for (const auto& ofi : originFileInfos)
|
||||||
{
|
{
|
||||||
QString gridFile = RifEclipseSummaryTools::findGridCaseFileFromSummaryHeaderFile(ofi.fileName);
|
QString gridFile = RifEclipseSummaryTools::findGridCaseFileFromSummaryHeaderFile(ofi.fileName);
|
||||||
if (buildGridCaseFileList && !gridCaseFile.isEmpty()) dialogResult.gridFiles.push_back(gridFile);
|
if (handleGridFile) dialogResult.gridFiles.push_back(gridFile);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -52,9 +52,8 @@ public:
|
|||||||
RicSummaryCaseRestartDialog(QWidget* parent);
|
RicSummaryCaseRestartDialog(QWidget* parent);
|
||||||
~RicSummaryCaseRestartDialog();
|
~RicSummaryCaseRestartDialog();
|
||||||
|
|
||||||
static RicSummaryCaseRestartDialogResult openDialog(const QString& summaryHeaderFile,
|
static RicSummaryCaseRestartDialogResult openDialog(const std::pair<QString /*sum*/, QString /*grid*/>& initialFiles,
|
||||||
bool showApplyToAllWidget,
|
bool showApplyToAllWidget,
|
||||||
bool buildGridCaseFileList,
|
|
||||||
ImportOptions defaultSummaryImportOption,
|
ImportOptions defaultSummaryImportOption,
|
||||||
ImportOptions defaultGridImportOption,
|
ImportOptions defaultGridImportOption,
|
||||||
RicSummaryCaseRestartDialogResult *lastResult = nullptr,
|
RicSummaryCaseRestartDialogResult *lastResult = nullptr,
|
||||||
|
@ -70,7 +70,7 @@ RifSummaryCaseRestartSelector::RifSummaryCaseRestartSelector()
|
|||||||
m_defaultSummaryImportMode = mapReadOption(prefs->summaryImportMode());
|
m_defaultSummaryImportMode = mapReadOption(prefs->summaryImportMode());
|
||||||
m_defaultGridImportMode = mapReadOption(prefs->gridImportMode());
|
m_defaultGridImportMode = mapReadOption(prefs->gridImportMode());
|
||||||
|
|
||||||
m_buildGridFileList = false;
|
//m_buildGridFileList = false;
|
||||||
m_gridFiles.clear();
|
m_gridFiles.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -85,52 +85,58 @@ RifSummaryCaseRestartSelector::~RifSummaryCaseRestartSelector()
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
std::vector<RifSummaryCaseFileInfo> RifSummaryCaseRestartSelector::getFilesToImportFromSummaryFiles(const QStringList& initialSummaryFiles)
|
bool RifSummaryCaseRestartSelector::getFilesToImportFromSummaryFiles(const QStringList& initialSummaryFiles)
|
||||||
{
|
{
|
||||||
return getFilesToImport(initialSummaryFiles);
|
std::vector<std::pair<QString, QString>> files;
|
||||||
|
for (QString f : initialSummaryFiles)
|
||||||
|
{
|
||||||
|
files.push_back(std::make_pair(f, ""));
|
||||||
|
}
|
||||||
|
return getFilesToImport(files);
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
std::vector<RifSummaryCaseFileInfo> RifSummaryCaseRestartSelector::getFilesToImportFromGridFiles(const QStringList& initialGridFiles)
|
bool RifSummaryCaseRestartSelector::getFilesToImportFromGridFiles(const QStringList& initialGridFiles)
|
||||||
{
|
{
|
||||||
QStringList summaryFiles = getSummaryFilesFromGridFiles(initialGridFiles);
|
std::vector<std::pair<QString, QString>> files;
|
||||||
return getFilesToImport(summaryFiles);
|
for (QString f : initialGridFiles)
|
||||||
|
{
|
||||||
|
files.push_back(std::make_pair(getSummaryFileFromGridFile(f), f));
|
||||||
|
}
|
||||||
|
return getFilesToImport(files);
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
std::vector<RifSummaryCaseFileInfo> RifSummaryCaseRestartSelector::getFilesToImport(const QStringList& initialSummaryFiles)
|
bool RifSummaryCaseRestartSelector::getFilesToImport(const std::vector<std::pair<QString /*sum*/, QString /*grid*/>>& initialFiles)
|
||||||
{
|
{
|
||||||
std::vector<RifSummaryCaseFileInfo> fileInfos;
|
std::vector<RifSummaryCaseFileInfo> fileInfos;
|
||||||
if (m_showDialog)
|
if (m_showDialog)
|
||||||
{
|
{
|
||||||
bool enableApplyToAllField = initialSummaryFiles.size() > 1;
|
bool enableApplyToAllField = initialFiles.size() > 1;
|
||||||
fileInfos = getFilesToImportByAskingUser(initialSummaryFiles, enableApplyToAllField);
|
return getFilesToImportByAskingUser(initialFiles, enableApplyToAllField);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
fileInfos = getFilesToImportUsingPrefs(initialSummaryFiles);
|
return getFilesToImportUsingPrefs(initialFiles);
|
||||||
}
|
}
|
||||||
return fileInfos;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
std::vector<RifSummaryCaseFileInfo> RifSummaryCaseRestartSelector::getFilesToImportByAskingUser(const QStringList& initialSummaryFiles,
|
bool RifSummaryCaseRestartSelector::getFilesToImportByAskingUser(const std::vector<std::pair<QString /*sum*/, QString /*grid*/>>& initialFiles,
|
||||||
bool enableApplyToAllField)
|
bool enableApplyToAllField)
|
||||||
{
|
{
|
||||||
std::vector<RifSummaryCaseFileInfo> filesToImport;
|
|
||||||
RicSummaryCaseRestartDialogResult lastResult;
|
RicSummaryCaseRestartDialogResult lastResult;
|
||||||
|
|
||||||
for (const QString& summaryFile : initialSummaryFiles)
|
for (const std::pair<QString, QString>& initialFile : initialFiles)
|
||||||
{
|
{
|
||||||
RicSummaryCaseRestartDialogResult result = RicSummaryCaseRestartDialog::openDialog(summaryFile,
|
RicSummaryCaseRestartDialogResult result = RicSummaryCaseRestartDialog::openDialog(initialFile,
|
||||||
enableApplyToAllField,
|
enableApplyToAllField,
|
||||||
m_buildGridFileList,
|
|
||||||
m_defaultSummaryImportMode,
|
m_defaultSummaryImportMode,
|
||||||
m_defaultGridImportMode,
|
m_defaultGridImportMode,
|
||||||
&lastResult);
|
&lastResult);
|
||||||
@ -139,9 +145,9 @@ std::vector<RifSummaryCaseFileInfo> RifSummaryCaseRestartSelector::getFilesToImp
|
|||||||
for (const QString& file : result.summaryFiles)
|
for (const QString& file : result.summaryFiles)
|
||||||
{
|
{
|
||||||
RifSummaryCaseFileInfo fi(file, result.summaryImportOption == RicSummaryCaseRestartDialog::IMPORT_ALL);
|
RifSummaryCaseFileInfo fi(file, result.summaryImportOption == RicSummaryCaseRestartDialog::IMPORT_ALL);
|
||||||
if (!vectorContains(filesToImport, fi))
|
if (!vectorContains(m_summaryFileInfos, fi))
|
||||||
{
|
{
|
||||||
filesToImport.push_back(fi);
|
m_summaryFileInfos.push_back(fi);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
lastResult = result;
|
lastResult = result;
|
||||||
@ -154,42 +160,45 @@ std::vector<RifSummaryCaseFileInfo> RifSummaryCaseRestartSelector::getFilesToImp
|
|||||||
else
|
else
|
||||||
{
|
{
|
||||||
// Cancel pressed, cancel everything
|
// Cancel pressed, cancel everything
|
||||||
|
m_summaryFileInfos.clear();
|
||||||
m_gridFiles.clear();
|
m_gridFiles.clear();
|
||||||
return std::vector<RifSummaryCaseFileInfo>();
|
return false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return std::vector<RifSummaryCaseFileInfo>(filesToImport.begin(), filesToImport.end());
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
std::vector<RifSummaryCaseFileInfo> RifSummaryCaseRestartSelector::getFilesToImportUsingPrefs(const QStringList& initialSummaryFiles)
|
bool RifSummaryCaseRestartSelector::getFilesToImportUsingPrefs(const std::vector<std::pair<QString /*sum*/, QString /*grid*/>>& initialFiles)
|
||||||
{
|
{
|
||||||
std::vector<RifSummaryCaseFileInfo> filesToImport;
|
std::vector<RifSummaryCaseFileInfo> filesToImport;
|
||||||
RicSummaryCaseRestartDialogResult lastResult;
|
RicSummaryCaseRestartDialogResult lastResult;
|
||||||
|
|
||||||
m_gridFiles.clear();
|
m_gridFiles.clear();
|
||||||
|
|
||||||
for (const QString& summaryFile : initialSummaryFiles)
|
for (const std::pair<QString, QString>& initialFile : initialFiles)
|
||||||
{
|
{
|
||||||
QString file = RiaFilePathTools::toInternalSeparator(summaryFile);
|
QString initialSummaryFile = RiaFilePathTools::toInternalSeparator(initialFile.first);
|
||||||
|
QString initialGridFile = RiaFilePathTools::toInternalSeparator(initialFile.second);
|
||||||
|
bool handleGridFile = !initialGridFile.isEmpty();
|
||||||
|
|
||||||
if (m_defaultSummaryImportMode == RicSummaryCaseRestartDialog::IMPORT_ALL)
|
if (m_defaultSummaryImportMode == RicSummaryCaseRestartDialog::IMPORT_ALL)
|
||||||
{
|
{
|
||||||
filesToImport.push_back(RifSummaryCaseFileInfo(file, true));
|
filesToImport.push_back(RifSummaryCaseFileInfo(initialSummaryFile, true));
|
||||||
}
|
}
|
||||||
else if (m_defaultSummaryImportMode == RicSummaryCaseRestartDialog::NOT_IMPORT)
|
else if (m_defaultSummaryImportMode == RicSummaryCaseRestartDialog::NOT_IMPORT)
|
||||||
{
|
{
|
||||||
filesToImport.push_back(RifSummaryCaseFileInfo(file, false));
|
filesToImport.push_back(RifSummaryCaseFileInfo(initialSummaryFile, false));
|
||||||
}
|
}
|
||||||
else if (m_defaultSummaryImportMode == RicSummaryCaseRestartDialog::SEPARATE_CASES)
|
else if (m_defaultSummaryImportMode == RicSummaryCaseRestartDialog::SEPARATE_CASES)
|
||||||
{
|
{
|
||||||
filesToImport.push_back(RifSummaryCaseFileInfo(file, false));
|
filesToImport.push_back(RifSummaryCaseFileInfo(initialSummaryFile, false));
|
||||||
|
|
||||||
RifReaderEclipseSummary reader;
|
RifReaderEclipseSummary reader;
|
||||||
bool hasWarnings = false;
|
bool hasWarnings = false;
|
||||||
std::vector<RifRestartFileInfo> restartFileInfos = reader.getRestartFiles(file, &hasWarnings);
|
std::vector<RifRestartFileInfo> restartFileInfos = reader.getRestartFiles(initialSummaryFile, &hasWarnings);
|
||||||
for (const auto& rfi : restartFileInfos)
|
for (const auto& rfi : restartFileInfos)
|
||||||
{
|
{
|
||||||
RifSummaryCaseFileInfo fi(rfi.fileName, false);
|
RifSummaryCaseFileInfo fi(rfi.fileName, false);
|
||||||
@ -200,15 +209,15 @@ std::vector<RifSummaryCaseFileInfo> RifSummaryCaseRestartSelector::getFilesToImp
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (m_buildGridFileList)
|
if (handleGridFile)
|
||||||
{
|
{
|
||||||
m_gridFiles.push_back(RifEclipseSummaryTools::findGridCaseFileFromSummaryHeaderFile(file));
|
m_gridFiles.push_back(initialGridFile);
|
||||||
|
|
||||||
if (m_defaultGridImportMode == RicSummaryCaseRestartDialog::SEPARATE_CASES)
|
if (m_defaultGridImportMode == RicSummaryCaseRestartDialog::SEPARATE_CASES)
|
||||||
{
|
{
|
||||||
RifReaderEclipseSummary reader;
|
RifReaderEclipseSummary reader;
|
||||||
bool hasWarnings = false;
|
bool hasWarnings = false;
|
||||||
std::vector<RifRestartFileInfo> restartFileInfos = reader.getRestartFiles(file, &hasWarnings);
|
std::vector<RifRestartFileInfo> restartFileInfos = reader.getRestartFiles(initialSummaryFile, &hasWarnings);
|
||||||
for (const auto& rfi : restartFileInfos)
|
for (const auto& rfi : restartFileInfos)
|
||||||
{
|
{
|
||||||
RifSummaryCaseFileInfo fi(RifEclipseSummaryTools::findGridCaseFileFromSummaryHeaderFile(rfi.fileName), false);
|
RifSummaryCaseFileInfo fi(RifEclipseSummaryTools::findGridCaseFileFromSummaryHeaderFile(rfi.fileName), false);
|
||||||
@ -225,7 +234,7 @@ std::vector<RifSummaryCaseFileInfo> RifSummaryCaseRestartSelector::getFilesToImp
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return filesToImport;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -238,6 +247,17 @@ QStringList RifSummaryCaseRestartSelector::getSummaryFilesFromGridFiles(const QS
|
|||||||
// Find summary header file names from eclipse case file names
|
// Find summary header file names from eclipse case file names
|
||||||
for (const auto& gridFile : gridFiles)
|
for (const auto& gridFile : gridFiles)
|
||||||
{
|
{
|
||||||
|
summaryFiles.push_back(getSummaryFileFromGridFile(gridFile));
|
||||||
|
}
|
||||||
|
return summaryFiles;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
QString RifSummaryCaseRestartSelector::getSummaryFileFromGridFile(const QString& gridFile)
|
||||||
|
{
|
||||||
|
// Find summary header file names from eclipse case file names
|
||||||
if (!gridFile.isEmpty())
|
if (!gridFile.isEmpty())
|
||||||
{
|
{
|
||||||
QString summaryHeaderFile;
|
QString summaryHeaderFile;
|
||||||
@ -247,9 +267,8 @@ QStringList RifSummaryCaseRestartSelector::getSummaryFilesFromGridFiles(const QS
|
|||||||
|
|
||||||
if (!summaryHeaderFile.isEmpty())
|
if (!summaryHeaderFile.isEmpty())
|
||||||
{
|
{
|
||||||
summaryFiles.push_back(summaryHeaderFile);
|
return summaryHeaderFile;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
return "";
|
||||||
return summaryFiles;
|
|
||||||
}
|
}
|
||||||
|
@ -41,27 +41,28 @@ public:
|
|||||||
RifSummaryCaseRestartSelector();
|
RifSummaryCaseRestartSelector();
|
||||||
~RifSummaryCaseRestartSelector();
|
~RifSummaryCaseRestartSelector();
|
||||||
|
|
||||||
std::vector<RifSummaryCaseFileInfo> getFilesToImportFromSummaryFiles(const QStringList& initialSummaryFiles);
|
bool getFilesToImportFromSummaryFiles(const QStringList& initialSummaryFiles);
|
||||||
std::vector<RifSummaryCaseFileInfo> getFilesToImportFromGridFiles(const QStringList& initialGridFiles);
|
bool getFilesToImportFromGridFiles(const QStringList& initialGridFiles);
|
||||||
|
|
||||||
void showDialog(bool show) { m_showDialog = show; }
|
void showDialog(bool show) { m_showDialog = show; }
|
||||||
void buildGridCaseFileList(bool build) { m_buildGridFileList = build; }
|
std::vector<RifSummaryCaseFileInfo> summaryFileInfos() const { return m_summaryFileInfos; }
|
||||||
QStringList gridCaseFiles() const { return m_gridFiles; }
|
QStringList gridCaseFiles() const { return m_gridFiles; }
|
||||||
|
|
||||||
static QStringList getSummaryFilesFromGridFiles(const QStringList& gridFiles);
|
static QStringList getSummaryFilesFromGridFiles(const QStringList& gridFiles);
|
||||||
|
static QString getSummaryFileFromGridFile(const QString& gridFile);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
std::vector<RifSummaryCaseFileInfo> getFilesToImport(const QStringList& initialSummaryFiles);
|
bool getFilesToImport(const std::vector<std::pair<QString /*sum*/, QString /*grid*/>>& initialFiles);
|
||||||
|
|
||||||
std::vector<RifSummaryCaseFileInfo> getFilesToImportByAskingUser(const QStringList& initialSummaryFiles,
|
bool getFilesToImportByAskingUser(const std::vector<std::pair<QString /*sum*/, QString /*grid*/>>& initialFiles,
|
||||||
bool enableApplyToAllField);
|
bool enableApplyToAllField);
|
||||||
std::vector<RifSummaryCaseFileInfo> getFilesToImportUsingPrefs(const QStringList& initialSummaryFiles);
|
bool getFilesToImportUsingPrefs(const std::vector<std::pair<QString /*sum*/, QString /*grid*/>>& initialFiles);
|
||||||
|
|
||||||
bool m_showDialog;
|
bool m_showDialog;
|
||||||
RicSummaryCaseRestartDialog::ImportOptions m_defaultSummaryImportMode;
|
RicSummaryCaseRestartDialog::ImportOptions m_defaultSummaryImportMode;
|
||||||
RicSummaryCaseRestartDialog::ImportOptions m_defaultGridImportMode;
|
RicSummaryCaseRestartDialog::ImportOptions m_defaultGridImportMode;
|
||||||
|
|
||||||
bool m_buildGridFileList;
|
std::vector<RifSummaryCaseFileInfo> m_summaryFileInfos;
|
||||||
QStringList m_gridFiles;
|
QStringList m_gridFiles;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user