mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#8582 Eclipse Case : Make it possible to access RFT data without grid data
This commit is contained in:
parent
65e80ca03f
commit
7f41349b5c
@ -72,6 +72,7 @@ RimEclipseResultCase::RimEclipseResultCase()
|
||||
: m_gridAndWellDataIsReadFromFile( false )
|
||||
, m_activeCellInfoIsReadFromFile( false )
|
||||
, m_useOpmRftReader( true )
|
||||
, m_rftDataIsReadFromFile( false )
|
||||
{
|
||||
CAF_PDM_InitScriptableObject( "Eclipse Case", ":/Case48x48.png", "", "The Regular Eclipse Results Case" );
|
||||
|
||||
@ -205,23 +206,7 @@ bool RimEclipseResultCase::importGridAndResultMetaData( bool showTimeStepFilter
|
||||
m_gridAndWellDataIsReadFromFile = true;
|
||||
m_activeCellInfoIsReadFromFile = true;
|
||||
|
||||
QFileInfo eclipseCaseFileInfo( gridFileName() );
|
||||
QString rftFileName = eclipseCaseFileInfo.path() + "/" + eclipseCaseFileInfo.completeBaseName() + ".RFT";
|
||||
QFileInfo rftFileInfo( rftFileName );
|
||||
|
||||
if ( rftFileInfo.exists() )
|
||||
{
|
||||
RiaLogging::info( QString( "RFT file found" ) );
|
||||
|
||||
if ( m_useOpmRftReader )
|
||||
{
|
||||
m_readerOpmRft = new RifReaderOpmRft( rftFileInfo.filePath() );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_readerEclipseRft = new RifReaderEclipseRft( rftFileInfo.filePath() );
|
||||
}
|
||||
}
|
||||
ensureRftDataIsImported();
|
||||
|
||||
if ( m_flowDiagSolutions.empty() )
|
||||
{
|
||||
@ -358,6 +343,34 @@ void RimEclipseResultCase::loadAndUpdateSourSimData()
|
||||
}
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
void RimEclipseResultCase::ensureRftDataIsImported()
|
||||
{
|
||||
if ( m_rftDataIsReadFromFile ) return;
|
||||
|
||||
QFileInfo eclipseCaseFileInfo( gridFileName() );
|
||||
QString rftFileName = eclipseCaseFileInfo.path() + "/" + eclipseCaseFileInfo.completeBaseName() + ".RFT";
|
||||
QFileInfo rftFileInfo( rftFileName );
|
||||
|
||||
if ( rftFileInfo.exists() )
|
||||
{
|
||||
RiaLogging::info( QString( "RFT file found" ) );
|
||||
|
||||
if ( m_useOpmRftReader )
|
||||
{
|
||||
m_readerOpmRft = new RifReaderOpmRft( rftFileInfo.filePath() );
|
||||
}
|
||||
else
|
||||
{
|
||||
m_readerEclipseRft = new RifReaderEclipseRft( rftFileInfo.filePath() );
|
||||
}
|
||||
}
|
||||
|
||||
m_rftDataIsReadFromFile = true;
|
||||
}
|
||||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
///
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
@ -535,6 +548,8 @@ RigFlowDiagSolverInterface* RimEclipseResultCase::flowDiagSolverInterface()
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
RifReaderRftInterface* RimEclipseResultCase::rftReader()
|
||||
{
|
||||
ensureRftDataIsImported();
|
||||
|
||||
if ( m_useOpmRftReader ) return m_readerOpmRft.p();
|
||||
|
||||
return m_readerEclipseRft.p();
|
||||
|
@ -81,6 +81,7 @@ protected:
|
||||
|
||||
private:
|
||||
void loadAndUpdateSourSimData();
|
||||
void ensureRftDataIsImported();
|
||||
|
||||
private:
|
||||
cvf::ref<RifReaderInterface> createMockModel( QString modelName );
|
||||
@ -100,4 +101,5 @@ private:
|
||||
bool m_gridAndWellDataIsReadFromFile;
|
||||
bool m_activeCellInfoIsReadFromFile;
|
||||
bool m_useOpmRftReader;
|
||||
bool m_rftDataIsReadFromFile;
|
||||
};
|
||||
|
Loading…
Reference in New Issue
Block a user