#7572 Preferences : Move summary settings into separate file

This commit is contained in:
Magne Sjaastad 2021-04-13 13:45:06 +02:00
parent 30687e18bc
commit 6bc6ffda15
7 changed files with 318 additions and 122 deletions

View File

@ -7,6 +7,7 @@ ${CMAKE_CURRENT_LIST_DIR}/RiaCompletionTypeCalculationScheduler.h
${CMAKE_CURRENT_LIST_DIR}/RiaDefines.h
${CMAKE_CURRENT_LIST_DIR}/RiaFractureDefines.h
${CMAKE_CURRENT_LIST_DIR}/RiaPreferences.h
${CMAKE_CURRENT_LIST_DIR}/RiaPreferencesSummary.h
${CMAKE_CURRENT_LIST_DIR}/RiaPorosityModel.h
${CMAKE_CURRENT_LIST_DIR}/RiaSummaryCurveDefinition.h
${CMAKE_CURRENT_LIST_DIR}/RiaCurveSetDefinition.h
@ -31,6 +32,7 @@ ${CMAKE_CURRENT_LIST_DIR}/RiaCompletionTypeCalculationScheduler.cpp
${CMAKE_CURRENT_LIST_DIR}/RiaDefines.cpp
${CMAKE_CURRENT_LIST_DIR}/RiaFractureDefines.cpp
${CMAKE_CURRENT_LIST_DIR}/RiaPreferences.cpp
${CMAKE_CURRENT_LIST_DIR}/RiaPreferencesSummary.cpp
${CMAKE_CURRENT_LIST_DIR}/RiaPorosityModel.cpp
${CMAKE_CURRENT_LIST_DIR}/RiaSummaryCurveDefinition.cpp
${CMAKE_CURRENT_LIST_DIR}/RiaCurveSetDefinition.cpp

View File

@ -22,6 +22,7 @@
#include "RiaPreferences.h"
#include "RiaColorTables.h"
#include "RiaPreferencesSummary.h"
#include "RiaValidRegExpValidator.h"
#include "RifReaderSettings.h"
#include "RiuGuiTheme.h"
@ -82,14 +83,6 @@ void RiaPreferences::PageOrientationEnum::setUp()
setDefault( QPageLayout::Portrait );
}
template <>
void RiaPreferences::SummaryReaderModeType::setUp()
{
addItem( RiaPreferences::SummaryReaderMode::LIBECL, "LIBECL", "Default Reader (ecl)" );
addItem( RiaPreferences::SummaryReaderMode::HDF5_OPM_COMMON, "HDF5_OPM_COMMON", "[BETA] H5 Reader (HDF5 Eclipse)" );
addItem( RiaPreferences::SummaryReaderMode::OPM_COMMON, "OPM_COMMON", "[BETA] Performance Reader (omp-common)" );
setDefault( RiaPreferences::SummaryReaderMode::LIBECL );
}
} // namespace caf
CAF_PDM_SOURCE_INIT( RiaPreferences, "RiaPreferences" );
@ -413,34 +406,8 @@ RiaPreferences::RiaPreferences()
CAF_PDM_InitFieldNoDefault( &m_guiTheme, "guiTheme", "GUI theme", "", "", "" );
CAF_PDM_InitField( &m_createOptimizedSummaryDataFile,
"createOptimizedSummaryDataFile",
true,
"Create Optimized Summary Data Files [BETA]",
"",
"If not present, create optimized file with extension '*.LODSMRY'",
"" );
m_createOptimizedSummaryDataFile.uiCapability()->setUiLabelPosition( caf::PdmUiItemInfo::HIDDEN );
CAF_PDM_InitField( &m_useOptimizedSummaryDataFile,
"useOptimizedSummaryDataFile",
true,
"Use Optimized Summary Data Files [BETA]",
"",
"If not present, read optimized file with extension '*.LODSMRY'",
"" );
m_useOptimizedSummaryDataFile.uiCapability()->setUiLabelPosition( caf::PdmUiItemInfo::HIDDEN );
CAF_PDM_InitField( &m_createH5SummaryDataFile,
"createH5SummaryDataFile",
false,
"Create H5 Summary Data Files [BETA]",
"",
"If not present, create summary file with extension '*.H5'",
"" );
m_createH5SummaryDataFile.uiCapability()->setUiLabelPosition( caf::PdmUiItemInfo::HIDDEN );
CAF_PDM_InitFieldNoDefault( &m_summaryReader, "summaryReaderType", "Summary Data File Reader", "", "", "" );
CAF_PDM_InitFieldNoDefault( &m_summaryPreferences, "summaryPreferences", "summaryPreferences", "", "", "" );
m_summaryPreferences = new RiaPreferencesSummary;
}
//--------------------------------------------------------------------------------------------------
@ -482,15 +449,14 @@ void RiaPreferences::defineEditorAttribute( const caf::PdmFieldHandle* field,
if ( field == &octaveShowHeaderInfoWhenExecutingScripts || field == &autocomputeDepthRelatedProperties ||
field == &loadAndShowSoil || field == &m_useShaders || field == &m_showHud ||
field == &m_appendClassNameToUiText || field == &m_appendFieldKeywordToToolTipText || field == &m_showTestToolbar ||
field == &m_includeFractureDebugInfoFile || field == &showLasCurveWithoutTvdWarning ||
field == &holoLensDisableCertificateVerification || field == &m_showProjectChangedDialog ||
field == &m_searchPlotTemplateFoldersRecursively || field == &m_showLegendBackground ||
field == &m_showSummaryTimeAsLongString || field == &m_showViewIdInProjectTree ||
field == &m_useMultipleThreadsWhenLoadingSummaryData || field == &m_enableFaultsByDefault ||
field == &m_showProgressBar || field == &m_openExportedPdfInViewer || field == &m_showInfoBox ||
field == &m_showGridBox || field == &m_useUndoRedo || field == &m_createOptimizedSummaryDataFile ||
field == &m_useOptimizedSummaryDataFile || field == &m_createH5SummaryDataFile )
field == &m_appendClassNameToUiText || field == &m_appendFieldKeywordToToolTipText ||
field == &m_showTestToolbar || field == &m_includeFractureDebugInfoFile ||
field == &showLasCurveWithoutTvdWarning || field == &holoLensDisableCertificateVerification ||
field == &m_showProjectChangedDialog || field == &m_searchPlotTemplateFoldersRecursively ||
field == &m_showLegendBackground || field == &m_showSummaryTimeAsLongString ||
field == &m_showViewIdInProjectTree || field == &m_useMultipleThreadsWhenLoadingSummaryData ||
field == &m_enableFaultsByDefault || field == &m_showProgressBar || field == &m_openExportedPdfInViewer ||
field == &m_showInfoBox || field == &m_showGridBox || field == &m_useUndoRedo )
{
caf::PdmUiCheckBoxEditorAttribute* myAttr = dynamic_cast<caf::PdmUiCheckBoxEditorAttribute*>( attribute );
if ( myAttr )
@ -619,17 +585,19 @@ void RiaPreferences::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering&
{
caf::PdmUiGroup* group = uiOrdering.addNewGroup( "[BETA] Optimized Summary Reader" );
group->setCollapsedByDefault( true );
group->add( &m_summaryReader );
if ( m_summaryReader == SummaryReaderMode::OPM_COMMON )
{
group->add( &m_createOptimizedSummaryDataFile );
group->add( &m_useOptimizedSummaryDataFile );
}
else if ( m_summaryReader == SummaryReaderMode::HDF5_OPM_COMMON )
{
group->add( &m_createH5SummaryDataFile );
}
m_summaryPreferences()->uiOrdering( uiConfigName, *group );
// group->add( &m_summaryReader );
//
// if ( m_summaryReader == SummaryReaderMode::OPM_COMMON )
// {
// group->add( &m_createOptimizedSummaryDataFile );
// group->add( &m_useOptimizedSummaryDataFile );
// }
// else if ( m_summaryReader == SummaryReaderMode::HDF5_OPM_COMMON )
// {
// group->add( &m_createH5SummaryDataFile );
// }
}
}
@ -742,21 +710,7 @@ QList<caf::PdmOptionItemInfo> RiaPreferences::calculateValueOptions( const caf::
options.push_back( caf::PdmOptionItemInfo( uiText, QVariant::fromValue( timeFormat ) ) );
}
}
else if ( fieldNeedingOptions == &m_summaryReader )
{
std::vector<SummaryReaderMode> availableModes;
availableModes.push_back( SummaryReaderMode::LIBECL );
#ifdef USE_HDF5
availableModes.push_back( SummaryReaderMode::HDF5_OPM_COMMON );
#endif // USE_HDF5
availableModes.push_back( SummaryReaderMode::OPM_COMMON );
for ( auto enumValue : availableModes )
{
options.push_back( caf::PdmOptionItemInfo( SummaryReaderModeType::uiText( enumValue ), enumValue ) );
}
}
return options;
}
@ -1243,33 +1197,9 @@ QString RiaPreferences::octaveExecutable() const
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RiaPreferences::SummaryReaderMode RiaPreferences::summaryDataReader() const
RiaPreferencesSummary* RiaPreferences::summaryPreferences() const
{
return m_summaryReader();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RiaPreferences::useOptimizedSummaryDataFiles() const
{
return m_useOptimizedSummaryDataFile();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RiaPreferences::createOptimizedSummaryDataFiles() const
{
return m_createOptimizedSummaryDataFile();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RiaPreferences::createH5SummaryDataFiles() const
{
return m_createH5SummaryDataFile();
return m_summaryPreferences();
}
//--------------------------------------------------------------------------------------------------

View File

@ -41,6 +41,7 @@
#include <map>
class RifReaderSettings;
class RiaPreferencesSummary;
//--------------------------------------------------------------------------------------------------
///
@ -70,14 +71,6 @@ public:
};
typedef caf::AppEnum<SummaryHistoryCurveStyleMode> SummaryHistoryCurveStyleModeType;
enum class SummaryReaderMode
{
LIBECL,
OPM_COMMON,
HDF5_OPM_COMMON
};
typedef caf::AppEnum<SummaryReaderMode> SummaryReaderModeType;
typedef caf::AppEnum<QPageSize::PageSizeId> PageSizeEnum;
typedef caf::AppEnum<QPageLayout::Orientation> PageOrientationEnum;
@ -146,13 +139,9 @@ public:
QString pythonExecutable() const;
QString octaveExecutable() const;
// Summary readers
SummaryReaderMode summaryDataReader() const;
bool useOptimizedSummaryDataFiles() const;
bool createOptimizedSummaryDataFiles() const;
bool createH5SummaryDataFiles() const;
RiaPreferencesSummary* summaryPreferences() const;
public: // Pdm Fields
public:
caf::PdmField<bool> enableGrpcServer;
caf::PdmField<int> defaultGrpcPortNumber;
@ -258,11 +247,7 @@ private:
caf::PdmField<QString> m_multiLateralWellPattern;
// Summary data
caf::PdmField<bool> m_createOptimizedSummaryDataFile;
caf::PdmField<bool> m_createH5SummaryDataFile;
caf::PdmField<bool> m_useOptimizedSummaryDataFile;
caf::PdmField<SummaryReaderModeType> m_summaryReader;
caf::PdmChildField<RiaPreferencesSummary*> m_summaryPreferences;
// 3d view
caf::PdmField<caf::AppEnum<RiaDefines::MeshModeType>> m_defaultMeshModeType;

View File

@ -0,0 +1,210 @@
#include "RiaPreferencesSummary.h"
#include "cafPdmUiCheckBoxEditor.h"
// #include "RiaColorTables.h"
// #include "RiaValidRegExpValidator.h"
// #include "RifReaderSettings.h"
// #include "RiuGuiTheme.h"
//
// #include "cafPdmFieldCvfColor.h"
// #include "cafPdmSettings.h"
// #include "cafPdmUiCheckBoxEditor.h"
// #include "cafPdmUiComboBoxEditor.h"
// #include "cafPdmUiFieldHandle.h"
// #include "cafPdmUiFilePathEditor.h"
// #include "cafPdmUiLineEditor.h"
//
// #include <QDate>
// #include <QDir>
// #include <QLocale>
// #include <QRegExp>
// #include <QStandardPaths>
namespace caf
{
/*
template <>
void RiaPreferences::SummaryRestartFilesImportModeType::setUp()
{
addItem(RiaPreferences::SummaryRestartFilesImportMode::IMPORT, "IMPORT", "Unified");
addItem(RiaPreferences::SummaryRestartFilesImportMode::SEPARATE_CASES, "SEPARATE_CASES", "Separate Cases");
addItem(RiaPreferences::SummaryRestartFilesImportMode::NOT_IMPORT, "NOT_IMPORT", "Skip");
setDefault(RiaPreferences::SummaryRestartFilesImportMode::IMPORT);
}
template <>
void RiaPreferences::SummaryHistoryCurveStyleModeType::setUp()
{
addItem(RiaPreferences::SummaryHistoryCurveStyleMode::SYMBOLS, "SYMBOLS", "Symbols");
addItem(RiaPreferences::SummaryHistoryCurveStyleMode::LINES, "LINES", "Lines");
addItem(RiaPreferences::SummaryHistoryCurveStyleMode::SYMBOLS_AND_LINES, "SYMBOLS_AND_LINES", "Symbols and
Lines"); setDefault(RiaPreferences::SummaryHistoryCurveStyleMode::SYMBOLS);
}
template <>
void RiaPreferences::PageSizeEnum::setUp()
{
addItem(QPageSize::A3, "A3", "A3");
addItem(QPageSize::A4, "A4", "A4");
addItem(QPageSize::A5, "A5", "A5");
addItem(QPageSize::A6, "A6", "A6");
addItem(QPageSize::Letter, "LETTER", "US Letter");
addItem(QPageSize::Legal, "LEGAL", "US Legal");
addItem(QPageSize::Ledger, "LEDGER", "US Ledger");
addItem(QPageSize::Tabloid, "TABLOID", "US Tabloid");
setDefault(QPageSize::A4);
}
template <>
void RiaPreferences::PageOrientationEnum::setUp()
{
addItem(QPageLayout::Portrait, "PORTRAIT", "Portrait");
addItem(QPageLayout::Landscape, "LANDSCAPE", "Landscape");
setDefault(QPageLayout::Portrait);
}
*/
template <>
void RiaPreferencesSummary::SummaryReaderModeType::setUp()
{
addItem( RiaPreferencesSummary::SummaryReaderMode::LIBECL, "LIBECL", "Default Reader (ecl)" );
addItem( RiaPreferencesSummary::SummaryReaderMode::HDF5_OPM_COMMON, "HDF5_OPM_COMMON", "[BETA] H5 Reader (HDF5 Eclipse)" );
addItem( RiaPreferencesSummary::SummaryReaderMode::OPM_COMMON, "OPM_COMMON", "[BETA] Performance Reader (omp-common)" );
setDefault( RiaPreferencesSummary::SummaryReaderMode::LIBECL );
}
} // namespace caf
CAF_PDM_SOURCE_INIT( RiaPreferencesSummary, "RiaPreferencesSummary" );
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RiaPreferencesSummary::RiaPreferencesSummary()
{
CAF_PDM_InitField( &m_createOptimizedSummaryDataFile,
"createOptimizedSummaryDataFile",
true,
"Create Optimized Summary Data Files [BETA]",
"",
"If not present, create optimized file with extension '*.LODSMRY'",
"" );
m_createOptimizedSummaryDataFile.uiCapability()->setUiLabelPosition( caf::PdmUiItemInfo::HIDDEN );
CAF_PDM_InitField( &m_useOptimizedSummaryDataFile,
"useOptimizedSummaryDataFile",
true,
"Use Optimized Summary Data Files [BETA]",
"",
"If not present, read optimized file with extension '*.LODSMRY'",
"" );
m_useOptimizedSummaryDataFile.uiCapability()->setUiLabelPosition( caf::PdmUiItemInfo::HIDDEN );
CAF_PDM_InitField( &m_createH5SummaryDataFile,
"createH5SummaryDataFile",
false,
"Create H5 Summary Data Files [BETA]",
"",
"If not present, create summary file with extension '*.H5'",
"" );
m_createH5SummaryDataFile.uiCapability()->setUiLabelPosition( caf::PdmUiItemInfo::HIDDEN );
CAF_PDM_InitFieldNoDefault( &m_summaryReader, "summaryReaderType", "Summary Data File Reader", "", "", "" );
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RiaPreferencesSummary::SummaryReaderMode RiaPreferencesSummary::summaryDataReader() const
{
return m_summaryReader();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RiaPreferencesSummary::useOptimizedSummaryDataFiles() const
{
return m_useOptimizedSummaryDataFile();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RiaPreferencesSummary::createOptimizedSummaryDataFiles() const
{
return m_createOptimizedSummaryDataFile();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RiaPreferencesSummary::createH5SummaryDataFiles() const
{
return m_createH5SummaryDataFile();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RiaPreferencesSummary::defineEditorAttribute( const caf::PdmFieldHandle* field,
QString uiConfigName,
caf::PdmUiEditorAttribute* attribute )
{
if ( field == &m_createOptimizedSummaryDataFile || field == &m_useOptimizedSummaryDataFile ||
field == &m_createH5SummaryDataFile )
{
auto myAttr = dynamic_cast<caf::PdmUiCheckBoxEditorAttribute*>( attribute );
if ( myAttr )
{
myAttr->m_useNativeCheckBoxLabel = true;
}
}
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RiaPreferencesSummary::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering )
{
uiOrdering.add( &m_summaryReader );
if ( m_summaryReader == SummaryReaderMode::OPM_COMMON )
{
uiOrdering.add( &m_createOptimizedSummaryDataFile );
uiOrdering.add( &m_useOptimizedSummaryDataFile );
}
else if ( m_summaryReader == SummaryReaderMode::HDF5_OPM_COMMON )
{
uiOrdering.add( &m_createH5SummaryDataFile );
}
uiOrdering.skipRemainingFields();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
QList<caf::PdmOptionItemInfo>
RiaPreferencesSummary::calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions, bool* useOptionsOnly )
{
QList<caf::PdmOptionItemInfo> options;
*useOptionsOnly = true;
if ( fieldNeedingOptions == &m_summaryReader )
{
std::vector<SummaryReaderMode> availableModes;
availableModes.push_back( SummaryReaderMode::LIBECL );
#ifdef USE_HDF5
availableModes.push_back( SummaryReaderMode::HDF5_OPM_COMMON );
#endif // USE_HDF5
availableModes.push_back( SummaryReaderMode::OPM_COMMON );
for ( auto enumValue : availableModes )
{
options.push_back( caf::PdmOptionItemInfo( SummaryReaderModeType::uiText( enumValue ), enumValue ) );
}
}
return options;
}

View File

@ -0,0 +1,63 @@
#pragma once
// #include "RiaDefines.h"
// #include "RiaFontCache.h"
// #include "RiaGuiApplication.h"
// #include "RiaQDateTimeTools.h"
//
// #include "cafAppEnum.h"
// #include "cafPdmChildField.h"
// #include "cafPdmField.h"
// #include "cafPdmObject.h"
//
// // Include to make Pdm work for cvf::Color
// #include "cafPdmFieldCvfColor.h"
//
// #include <QPageLayout>
// #include <QPageSize>
// #include <QStringList>
//
// #include <map>
//
// class RifReaderSettings;
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
class RiaPreferencesSummary : public caf::PdmObject
{
CAF_PDM_HEADER_INIT;
public:
enum class SummaryReaderMode
{
LIBECL,
OPM_COMMON,
HDF5_OPM_COMMON
};
typedef caf::AppEnum<SummaryReaderMode> SummaryReaderModeType;
public:
RiaPreferencesSummary();
SummaryReaderMode summaryDataReader() const;
bool useOptimizedSummaryDataFiles() const;
bool createOptimizedSummaryDataFiles() const;
bool createH5SummaryDataFiles() const;
protected:
void defineEditorAttribute( const caf::PdmFieldHandle* field,
QString uiConfigName,
caf::PdmUiEditorAttribute* attribute ) override;
void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) override;
QList<caf::PdmOptionItemInfo> calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions,
bool* useOptionsOnly ) override;
private:
caf::PdmField<bool> m_createOptimizedSummaryDataFile;
caf::PdmField<bool> m_useOptimizedSummaryDataFile;
caf::PdmField<bool> m_createH5SummaryDataFile;
caf::PdmField<SummaryReaderModeType> m_summaryReader;
};

View File

@ -21,6 +21,7 @@
#include "RiaFilePathTools.h"
#include "RiaLogging.h"
#include "RiaPreferences.h"
#include "RiaPreferencesSummary.h"
#include "RiaStdStringTools.h"
#include "RiaStringEncodingTools.h"
@ -160,10 +161,12 @@ bool RifReaderEclipseSummary::open( const QString& headerFileName,
// Try to create readers. If HDF5 or Opm readers fails to create, use ecllib reader
if ( RiaPreferences::current()->summaryDataReader() == RiaPreferences::SummaryReaderMode::HDF5_OPM_COMMON )
RiaPreferencesSummary* prefSummary = RiaPreferences::current()->summaryPreferences();
if ( prefSummary->summaryDataReader() == RiaPreferencesSummary::SummaryReaderMode::HDF5_OPM_COMMON )
{
#ifdef USE_HDF5
if ( RiaPreferences::current()->createH5SummaryDataFiles() )
if ( prefSummary->createH5SummaryDataFiles() )
{
QFileInfo fi( headerFileName );
QString h5FilenameCandidate = fi.absolutePath() + "/" + fi.baseName() + ".h5";
@ -181,9 +184,9 @@ bool RifReaderEclipseSummary::open( const QString& headerFileName,
}
#endif
}
else if ( RiaPreferences::current()->summaryDataReader() == RiaPreferences::SummaryReaderMode::OPM_COMMON )
else if ( prefSummary->summaryDataReader() == RiaPreferencesSummary::SummaryReaderMode::OPM_COMMON )
{
bool useLodsmryFiles = RiaPreferences::current()->useOptimizedSummaryDataFiles();
bool useLodsmryFiles = prefSummary->useOptimizedSummaryDataFiles();
if ( useLodsmryFiles && includeRestartFiles )
{
QString txt = "LODSMRY file loading for summary restart files is not supported. Disable one of the options";
@ -194,13 +197,13 @@ bool RifReaderEclipseSummary::open( const QString& headerFileName,
m_opmCommonReader = std::make_unique<RifOpmCommonEclipseSummary>();
m_opmCommonReader->useLodsmaryFiles( RiaPreferences::current()->useOptimizedSummaryDataFiles() );
m_opmCommonReader->createLodsmaryFiles( RiaPreferences::current()->createOptimizedSummaryDataFiles() );
m_opmCommonReader->useLodsmaryFiles( prefSummary->useOptimizedSummaryDataFiles() );
m_opmCommonReader->createLodsmaryFiles( prefSummary->createOptimizedSummaryDataFiles() );
isValid = m_opmCommonReader->open( headerFileName, includeRestartFiles, threadSafeLogger );
if ( !isValid ) m_opmCommonReader.reset();
}
if ( !isValid || RiaPreferences::current()->summaryDataReader() == RiaPreferences::SummaryReaderMode::LIBECL )
if ( !isValid || prefSummary->summaryDataReader() == RiaPreferencesSummary::SummaryReaderMode::LIBECL )
{
assert( m_ecl_sum == nullptr );

View File

@ -19,6 +19,7 @@
#include "RimSummaryCaseMainCollection.h"
#include "RiaLogging.h"
#include "RiaPreferencesSummary.h"
#include "RiaSummaryTools.h"
#include "RifCaseRealizationParametersReader.h"
@ -443,9 +444,11 @@ void RimSummaryCaseMainCollection::loadFileSummaryCaseData( std::vector<RimFileS
RiaThreadSafeLogger threadSafeLogger;
auto prefSummary = RiaPreferences::current()->summaryPreferences();
// The HDF5 reader requires a special configuration to be thread safe. Disable threading for HDF reader creation.
bool canUseMultipleTreads =
( RiaPreferences::current()->summaryDataReader() != RiaPreferences::SummaryReaderMode::HDF5_OPM_COMMON );
( prefSummary->summaryDataReader() != RiaPreferencesSummary::SummaryReaderMode::HDF5_OPM_COMMON );
#pragma omp parallel for schedule( dynamic ) if ( canUseMultipleTreads )
for ( int cIdx = 0; cIdx < static_cast<int>( fileSummaryCases.size() ); ++cIdx )