mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#7572 Preferences : Move summary settings into separate file
This commit is contained in:
parent
30687e18bc
commit
6bc6ffda15
@ -7,6 +7,7 @@ ${CMAKE_CURRENT_LIST_DIR}/RiaCompletionTypeCalculationScheduler.h
|
|||||||
${CMAKE_CURRENT_LIST_DIR}/RiaDefines.h
|
${CMAKE_CURRENT_LIST_DIR}/RiaDefines.h
|
||||||
${CMAKE_CURRENT_LIST_DIR}/RiaFractureDefines.h
|
${CMAKE_CURRENT_LIST_DIR}/RiaFractureDefines.h
|
||||||
${CMAKE_CURRENT_LIST_DIR}/RiaPreferences.h
|
${CMAKE_CURRENT_LIST_DIR}/RiaPreferences.h
|
||||||
|
${CMAKE_CURRENT_LIST_DIR}/RiaPreferencesSummary.h
|
||||||
${CMAKE_CURRENT_LIST_DIR}/RiaPorosityModel.h
|
${CMAKE_CURRENT_LIST_DIR}/RiaPorosityModel.h
|
||||||
${CMAKE_CURRENT_LIST_DIR}/RiaSummaryCurveDefinition.h
|
${CMAKE_CURRENT_LIST_DIR}/RiaSummaryCurveDefinition.h
|
||||||
${CMAKE_CURRENT_LIST_DIR}/RiaCurveSetDefinition.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}/RiaDefines.cpp
|
||||||
${CMAKE_CURRENT_LIST_DIR}/RiaFractureDefines.cpp
|
${CMAKE_CURRENT_LIST_DIR}/RiaFractureDefines.cpp
|
||||||
${CMAKE_CURRENT_LIST_DIR}/RiaPreferences.cpp
|
${CMAKE_CURRENT_LIST_DIR}/RiaPreferences.cpp
|
||||||
|
${CMAKE_CURRENT_LIST_DIR}/RiaPreferencesSummary.cpp
|
||||||
${CMAKE_CURRENT_LIST_DIR}/RiaPorosityModel.cpp
|
${CMAKE_CURRENT_LIST_DIR}/RiaPorosityModel.cpp
|
||||||
${CMAKE_CURRENT_LIST_DIR}/RiaSummaryCurveDefinition.cpp
|
${CMAKE_CURRENT_LIST_DIR}/RiaSummaryCurveDefinition.cpp
|
||||||
${CMAKE_CURRENT_LIST_DIR}/RiaCurveSetDefinition.cpp
|
${CMAKE_CURRENT_LIST_DIR}/RiaCurveSetDefinition.cpp
|
||||||
|
@ -22,6 +22,7 @@
|
|||||||
#include "RiaPreferences.h"
|
#include "RiaPreferences.h"
|
||||||
|
|
||||||
#include "RiaColorTables.h"
|
#include "RiaColorTables.h"
|
||||||
|
#include "RiaPreferencesSummary.h"
|
||||||
#include "RiaValidRegExpValidator.h"
|
#include "RiaValidRegExpValidator.h"
|
||||||
#include "RifReaderSettings.h"
|
#include "RifReaderSettings.h"
|
||||||
#include "RiuGuiTheme.h"
|
#include "RiuGuiTheme.h"
|
||||||
@ -82,14 +83,6 @@ void RiaPreferences::PageOrientationEnum::setUp()
|
|||||||
setDefault( QPageLayout::Portrait );
|
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
|
} // namespace caf
|
||||||
|
|
||||||
CAF_PDM_SOURCE_INIT( RiaPreferences, "RiaPreferences" );
|
CAF_PDM_SOURCE_INIT( RiaPreferences, "RiaPreferences" );
|
||||||
@ -413,34 +406,8 @@ RiaPreferences::RiaPreferences()
|
|||||||
|
|
||||||
CAF_PDM_InitFieldNoDefault( &m_guiTheme, "guiTheme", "GUI theme", "", "", "" );
|
CAF_PDM_InitFieldNoDefault( &m_guiTheme, "guiTheme", "GUI theme", "", "", "" );
|
||||||
|
|
||||||
CAF_PDM_InitField( &m_createOptimizedSummaryDataFile,
|
CAF_PDM_InitFieldNoDefault( &m_summaryPreferences, "summaryPreferences", "summaryPreferences", "", "", "" );
|
||||||
"createOptimizedSummaryDataFile",
|
m_summaryPreferences = new RiaPreferencesSummary;
|
||||||
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", "", "", "" );
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@ -482,15 +449,14 @@ void RiaPreferences::defineEditorAttribute( const caf::PdmFieldHandle* field,
|
|||||||
|
|
||||||
if ( field == &octaveShowHeaderInfoWhenExecutingScripts || field == &autocomputeDepthRelatedProperties ||
|
if ( field == &octaveShowHeaderInfoWhenExecutingScripts || field == &autocomputeDepthRelatedProperties ||
|
||||||
field == &loadAndShowSoil || field == &m_useShaders || field == &m_showHud ||
|
field == &loadAndShowSoil || field == &m_useShaders || field == &m_showHud ||
|
||||||
field == &m_appendClassNameToUiText || field == &m_appendFieldKeywordToToolTipText || field == &m_showTestToolbar ||
|
field == &m_appendClassNameToUiText || field == &m_appendFieldKeywordToToolTipText ||
|
||||||
field == &m_includeFractureDebugInfoFile || field == &showLasCurveWithoutTvdWarning ||
|
field == &m_showTestToolbar || field == &m_includeFractureDebugInfoFile ||
|
||||||
field == &holoLensDisableCertificateVerification || field == &m_showProjectChangedDialog ||
|
field == &showLasCurveWithoutTvdWarning || field == &holoLensDisableCertificateVerification ||
|
||||||
field == &m_searchPlotTemplateFoldersRecursively || field == &m_showLegendBackground ||
|
field == &m_showProjectChangedDialog || field == &m_searchPlotTemplateFoldersRecursively ||
|
||||||
field == &m_showSummaryTimeAsLongString || field == &m_showViewIdInProjectTree ||
|
field == &m_showLegendBackground || field == &m_showSummaryTimeAsLongString ||
|
||||||
field == &m_useMultipleThreadsWhenLoadingSummaryData || field == &m_enableFaultsByDefault ||
|
field == &m_showViewIdInProjectTree || field == &m_useMultipleThreadsWhenLoadingSummaryData ||
|
||||||
field == &m_showProgressBar || field == &m_openExportedPdfInViewer || field == &m_showInfoBox ||
|
field == &m_enableFaultsByDefault || field == &m_showProgressBar || field == &m_openExportedPdfInViewer ||
|
||||||
field == &m_showGridBox || field == &m_useUndoRedo || field == &m_createOptimizedSummaryDataFile ||
|
field == &m_showInfoBox || field == &m_showGridBox || field == &m_useUndoRedo )
|
||||||
field == &m_useOptimizedSummaryDataFile || field == &m_createH5SummaryDataFile )
|
|
||||||
{
|
{
|
||||||
caf::PdmUiCheckBoxEditorAttribute* myAttr = dynamic_cast<caf::PdmUiCheckBoxEditorAttribute*>( attribute );
|
caf::PdmUiCheckBoxEditorAttribute* myAttr = dynamic_cast<caf::PdmUiCheckBoxEditorAttribute*>( attribute );
|
||||||
if ( myAttr )
|
if ( myAttr )
|
||||||
@ -619,17 +585,19 @@ void RiaPreferences::defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering&
|
|||||||
{
|
{
|
||||||
caf::PdmUiGroup* group = uiOrdering.addNewGroup( "[BETA] Optimized Summary Reader" );
|
caf::PdmUiGroup* group = uiOrdering.addNewGroup( "[BETA] Optimized Summary Reader" );
|
||||||
group->setCollapsedByDefault( true );
|
group->setCollapsedByDefault( true );
|
||||||
group->add( &m_summaryReader );
|
|
||||||
|
|
||||||
if ( m_summaryReader == SummaryReaderMode::OPM_COMMON )
|
m_summaryPreferences()->uiOrdering( uiConfigName, *group );
|
||||||
{
|
// group->add( &m_summaryReader );
|
||||||
group->add( &m_createOptimizedSummaryDataFile );
|
//
|
||||||
group->add( &m_useOptimizedSummaryDataFile );
|
// if ( m_summaryReader == SummaryReaderMode::OPM_COMMON )
|
||||||
}
|
// {
|
||||||
else if ( m_summaryReader == SummaryReaderMode::HDF5_OPM_COMMON )
|
// group->add( &m_createOptimizedSummaryDataFile );
|
||||||
{
|
// group->add( &m_useOptimizedSummaryDataFile );
|
||||||
group->add( &m_createH5SummaryDataFile );
|
// }
|
||||||
}
|
// 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 ) ) );
|
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;
|
return options;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1243,33 +1197,9 @@ QString RiaPreferences::octaveExecutable() const
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RiaPreferences::SummaryReaderMode RiaPreferences::summaryDataReader() const
|
RiaPreferencesSummary* RiaPreferences::summaryPreferences() const
|
||||||
{
|
{
|
||||||
return m_summaryReader();
|
return m_summaryPreferences();
|
||||||
}
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
///
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
bool RiaPreferences::useOptimizedSummaryDataFiles() const
|
|
||||||
{
|
|
||||||
return m_useOptimizedSummaryDataFile();
|
|
||||||
}
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
///
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
bool RiaPreferences::createOptimizedSummaryDataFiles() const
|
|
||||||
{
|
|
||||||
return m_createOptimizedSummaryDataFile();
|
|
||||||
}
|
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
///
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
|
||||||
bool RiaPreferences::createH5SummaryDataFiles() const
|
|
||||||
{
|
|
||||||
return m_createH5SummaryDataFile();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
@ -41,6 +41,7 @@
|
|||||||
#include <map>
|
#include <map>
|
||||||
|
|
||||||
class RifReaderSettings;
|
class RifReaderSettings;
|
||||||
|
class RiaPreferencesSummary;
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
@ -70,14 +71,6 @@ public:
|
|||||||
};
|
};
|
||||||
typedef caf::AppEnum<SummaryHistoryCurveStyleMode> SummaryHistoryCurveStyleModeType;
|
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<QPageSize::PageSizeId> PageSizeEnum;
|
||||||
typedef caf::AppEnum<QPageLayout::Orientation> PageOrientationEnum;
|
typedef caf::AppEnum<QPageLayout::Orientation> PageOrientationEnum;
|
||||||
|
|
||||||
@ -146,13 +139,9 @@ public:
|
|||||||
QString pythonExecutable() const;
|
QString pythonExecutable() const;
|
||||||
QString octaveExecutable() const;
|
QString octaveExecutable() const;
|
||||||
|
|
||||||
// Summary readers
|
RiaPreferencesSummary* summaryPreferences() const;
|
||||||
SummaryReaderMode summaryDataReader() const;
|
|
||||||
bool useOptimizedSummaryDataFiles() const;
|
|
||||||
bool createOptimizedSummaryDataFiles() const;
|
|
||||||
bool createH5SummaryDataFiles() const;
|
|
||||||
|
|
||||||
public: // Pdm Fields
|
public:
|
||||||
caf::PdmField<bool> enableGrpcServer;
|
caf::PdmField<bool> enableGrpcServer;
|
||||||
caf::PdmField<int> defaultGrpcPortNumber;
|
caf::PdmField<int> defaultGrpcPortNumber;
|
||||||
|
|
||||||
@ -258,11 +247,7 @@ private:
|
|||||||
caf::PdmField<QString> m_multiLateralWellPattern;
|
caf::PdmField<QString> m_multiLateralWellPattern;
|
||||||
|
|
||||||
// Summary data
|
// Summary data
|
||||||
caf::PdmField<bool> m_createOptimizedSummaryDataFile;
|
caf::PdmChildField<RiaPreferencesSummary*> m_summaryPreferences;
|
||||||
caf::PdmField<bool> m_createH5SummaryDataFile;
|
|
||||||
caf::PdmField<bool> m_useOptimizedSummaryDataFile;
|
|
||||||
|
|
||||||
caf::PdmField<SummaryReaderModeType> m_summaryReader;
|
|
||||||
|
|
||||||
// 3d view
|
// 3d view
|
||||||
caf::PdmField<caf::AppEnum<RiaDefines::MeshModeType>> m_defaultMeshModeType;
|
caf::PdmField<caf::AppEnum<RiaDefines::MeshModeType>> m_defaultMeshModeType;
|
||||||
|
210
ApplicationLibCode/Application/RiaPreferencesSummary.cpp
Normal file
210
ApplicationLibCode/Application/RiaPreferencesSummary.cpp
Normal 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;
|
||||||
|
}
|
63
ApplicationLibCode/Application/RiaPreferencesSummary.h
Normal file
63
ApplicationLibCode/Application/RiaPreferencesSummary.h
Normal 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;
|
||||||
|
};
|
@ -21,6 +21,7 @@
|
|||||||
#include "RiaFilePathTools.h"
|
#include "RiaFilePathTools.h"
|
||||||
#include "RiaLogging.h"
|
#include "RiaLogging.h"
|
||||||
#include "RiaPreferences.h"
|
#include "RiaPreferences.h"
|
||||||
|
#include "RiaPreferencesSummary.h"
|
||||||
#include "RiaStdStringTools.h"
|
#include "RiaStdStringTools.h"
|
||||||
#include "RiaStringEncodingTools.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
|
// 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
|
#ifdef USE_HDF5
|
||||||
if ( RiaPreferences::current()->createH5SummaryDataFiles() )
|
if ( prefSummary->createH5SummaryDataFiles() )
|
||||||
{
|
{
|
||||||
QFileInfo fi( headerFileName );
|
QFileInfo fi( headerFileName );
|
||||||
QString h5FilenameCandidate = fi.absolutePath() + "/" + fi.baseName() + ".h5";
|
QString h5FilenameCandidate = fi.absolutePath() + "/" + fi.baseName() + ".h5";
|
||||||
@ -181,9 +184,9 @@ bool RifReaderEclipseSummary::open( const QString& headerFileName,
|
|||||||
}
|
}
|
||||||
#endif
|
#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 )
|
if ( useLodsmryFiles && includeRestartFiles )
|
||||||
{
|
{
|
||||||
QString txt = "LODSMRY file loading for summary restart files is not supported. Disable one of the options";
|
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 = std::make_unique<RifOpmCommonEclipseSummary>();
|
||||||
|
|
||||||
m_opmCommonReader->useLodsmaryFiles( RiaPreferences::current()->useOptimizedSummaryDataFiles() );
|
m_opmCommonReader->useLodsmaryFiles( prefSummary->useOptimizedSummaryDataFiles() );
|
||||||
m_opmCommonReader->createLodsmaryFiles( RiaPreferences::current()->createOptimizedSummaryDataFiles() );
|
m_opmCommonReader->createLodsmaryFiles( prefSummary->createOptimizedSummaryDataFiles() );
|
||||||
isValid = m_opmCommonReader->open( headerFileName, includeRestartFiles, threadSafeLogger );
|
isValid = m_opmCommonReader->open( headerFileName, includeRestartFiles, threadSafeLogger );
|
||||||
if ( !isValid ) m_opmCommonReader.reset();
|
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 );
|
assert( m_ecl_sum == nullptr );
|
||||||
|
|
||||||
|
@ -19,6 +19,7 @@
|
|||||||
#include "RimSummaryCaseMainCollection.h"
|
#include "RimSummaryCaseMainCollection.h"
|
||||||
|
|
||||||
#include "RiaLogging.h"
|
#include "RiaLogging.h"
|
||||||
|
#include "RiaPreferencesSummary.h"
|
||||||
#include "RiaSummaryTools.h"
|
#include "RiaSummaryTools.h"
|
||||||
|
|
||||||
#include "RifCaseRealizationParametersReader.h"
|
#include "RifCaseRealizationParametersReader.h"
|
||||||
@ -443,9 +444,11 @@ void RimSummaryCaseMainCollection::loadFileSummaryCaseData( std::vector<RimFileS
|
|||||||
|
|
||||||
RiaThreadSafeLogger threadSafeLogger;
|
RiaThreadSafeLogger threadSafeLogger;
|
||||||
|
|
||||||
|
auto prefSummary = RiaPreferences::current()->summaryPreferences();
|
||||||
|
|
||||||
// The HDF5 reader requires a special configuration to be thread safe. Disable threading for HDF reader creation.
|
// The HDF5 reader requires a special configuration to be thread safe. Disable threading for HDF reader creation.
|
||||||
bool canUseMultipleTreads =
|
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 )
|
#pragma omp parallel for schedule( dynamic ) if ( canUseMultipleTreads )
|
||||||
for ( int cIdx = 0; cIdx < static_cast<int>( fileSummaryCases.size() ); ++cIdx )
|
for ( int cIdx = 0; cIdx < static_cast<int>( fileSummaryCases.size() ); ++cIdx )
|
||||||
|
Loading…
Reference in New Issue
Block a user