mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
#4114 Regression Test : Remove cached pointer to eclipse case
This commit is contained in:
@@ -178,8 +178,6 @@ void RimEclipseResultDefinition::simpleCopy(const RimEclipseResultDefinition* ot
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
void RimEclipseResultDefinition::setEclipseCase(RimEclipseCase* eclipseCase)
|
void RimEclipseResultDefinition::setEclipseCase(RimEclipseCase* eclipseCase)
|
||||||
{
|
{
|
||||||
m_eclipseCase = eclipseCase;
|
|
||||||
|
|
||||||
assignFlowSolutionFromCase();
|
assignFlowSolutionFromCase();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -188,9 +186,9 @@ void RimEclipseResultDefinition::setEclipseCase(RimEclipseCase* eclipseCase)
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RigCaseCellResultsData* RimEclipseResultDefinition::currentGridCellResults() const
|
RigCaseCellResultsData* RimEclipseResultDefinition::currentGridCellResults() const
|
||||||
{
|
{
|
||||||
if (!m_eclipseCase) return nullptr;
|
if (!ownerEclipseCase()) return nullptr;
|
||||||
|
|
||||||
return m_eclipseCase->results(m_porosityModel());
|
return ownerEclipseCase()->results(m_porosityModel());
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@@ -499,7 +497,7 @@ QList<caf::PdmOptionItemInfo> RimEclipseResultDefinition::calculateValueOptions(
|
|||||||
if (fieldNeedingOptions == &m_resultTypeUiField)
|
if (fieldNeedingOptions == &m_resultTypeUiField)
|
||||||
{
|
{
|
||||||
bool hasSourSimRLFile = false;
|
bool hasSourSimRLFile = false;
|
||||||
RimEclipseResultCase* eclResCase = dynamic_cast<RimEclipseResultCase*>(m_eclipseCase.p());
|
RimEclipseResultCase* eclResCase = dynamic_cast<RimEclipseResultCase*>(ownerEclipseCase());
|
||||||
if (eclResCase && eclResCase->eclipseCaseData())
|
if (eclResCase && eclResCase->eclipseCaseData())
|
||||||
{
|
{
|
||||||
hasSourSimRLFile = eclResCase->hasSourSimFile();
|
hasSourSimRLFile = eclResCase->hasSourSimFile();
|
||||||
@@ -514,9 +512,9 @@ QList<caf::PdmOptionItemInfo> RimEclipseResultDefinition::calculateValueOptions(
|
|||||||
bool enableSouring = false;
|
bool enableSouring = false;
|
||||||
|
|
||||||
#ifdef ENABLE_SOURING
|
#ifdef ENABLE_SOURING
|
||||||
if (m_eclipseCase.notNull())
|
if (ownerEclipseCase())
|
||||||
{
|
{
|
||||||
RigCaseCellResultsData* cellResultsData = m_eclipseCase->results(this->porosityModel());
|
RigCaseCellResultsData* cellResultsData = ownerEclipseCase()->results(this->porosityModel());
|
||||||
|
|
||||||
if (cellResultsData->hasFlowDiagUsableFluxes())
|
if (cellResultsData->hasFlowDiagUsableFluxes())
|
||||||
{
|
{
|
||||||
@@ -571,7 +569,7 @@ QList<caf::PdmOptionItemInfo> RimEclipseResultDefinition::calculateValueOptions(
|
|||||||
}
|
}
|
||||||
else if (fieldNeedingOptions == &m_flowSolutionUiField)
|
else if (fieldNeedingOptions == &m_flowSolutionUiField)
|
||||||
{
|
{
|
||||||
RimEclipseResultCase* eclCase = dynamic_cast<RimEclipseResultCase*>(m_eclipseCase.p());
|
RimEclipseResultCase* eclCase = dynamic_cast<RimEclipseResultCase*>(ownerEclipseCase());
|
||||||
if (eclCase)
|
if (eclCase)
|
||||||
{
|
{
|
||||||
std::vector<RimFlowDiagSolution*> flowSols = eclCase->flowDiagSolutions();
|
std::vector<RimFlowDiagSolution*> flowSols = eclCase->flowDiagSolutions();
|
||||||
@@ -902,11 +900,11 @@ void RimEclipseResultDefinition::loadResult()
|
|||||||
{
|
{
|
||||||
if (isFlowDiagOrInjectionFlooding()) return; // Will load automatically on access
|
if (isFlowDiagOrInjectionFlooding()) return; // Will load automatically on access
|
||||||
|
|
||||||
if (m_eclipseCase)
|
if (ownerEclipseCase())
|
||||||
{
|
{
|
||||||
if (!m_eclipseCase->ensureReservoirCaseIsOpen())
|
if (!ownerEclipseCase()->ensureReservoirCaseIsOpen())
|
||||||
{
|
{
|
||||||
RiaLogging::error("Could not open the Eclipse Grid file: " + m_eclipseCase->gridFileName());
|
RiaLogging::error("Could not open the Eclipse Grid file: " + ownerEclipseCase()->gridFileName());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -915,7 +913,7 @@ void RimEclipseResultDefinition::loadResult()
|
|||||||
{
|
{
|
||||||
if (!m_differenceCase->ensureReservoirCaseIsOpen())
|
if (!m_differenceCase->ensureReservoirCaseIsOpen())
|
||||||
{
|
{
|
||||||
RiaLogging::error("Could not open the Eclipse Grid file: " + m_eclipseCase->gridFileName());
|
RiaLogging::error("Could not open the Eclipse Grid file: " + m_differenceCase->gridFileName());
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -930,6 +928,7 @@ void RimEclipseResultDefinition::loadResult()
|
|||||||
|
|
||||||
gridCellResults->ensureKnownResultLoaded(this->eclipseResultAddress());
|
gridCellResults->ensureKnownResultLoaded(this->eclipseResultAddress());
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
@@ -1178,8 +1177,8 @@ bool RimEclipseResultDefinition::isCompletionTypeSelected() const
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
bool RimEclipseResultDefinition::hasCategoryResult() const
|
bool RimEclipseResultDefinition::hasCategoryResult() const
|
||||||
{
|
{
|
||||||
if (this->m_resultType() == RiaDefines::FORMATION_NAMES && m_eclipseCase && m_eclipseCase->eclipseCaseData() &&
|
if (this->m_resultType() == RiaDefines::FORMATION_NAMES && ownerEclipseCase() && ownerEclipseCase()->eclipseCaseData() &&
|
||||||
m_eclipseCase->eclipseCaseData()->activeFormationNames())
|
ownerEclipseCase()->eclipseCaseData()->activeFormationNames())
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
if (this->m_resultType() == RiaDefines::DYNAMIC_NATIVE && this->resultVariable() == RiaDefines::completionTypeResultName())
|
if (this->m_resultType() == RiaDefines::DYNAMIC_NATIVE && this->resultVariable() == RiaDefines::completionTypeResultName())
|
||||||
@@ -1378,7 +1377,7 @@ void RimEclipseResultDefinition::assignFlowSolutionFromCase()
|
|||||||
{
|
{
|
||||||
RimFlowDiagSolution* defaultFlowDiagSolution = nullptr;
|
RimFlowDiagSolution* defaultFlowDiagSolution = nullptr;
|
||||||
|
|
||||||
RimEclipseResultCase* eclCase = dynamic_cast<RimEclipseResultCase*>(m_eclipseCase.p());
|
RimEclipseResultCase* eclCase = dynamic_cast<RimEclipseResultCase*>(ownerEclipseCase());
|
||||||
|
|
||||||
if (eclCase)
|
if (eclCase)
|
||||||
{
|
{
|
||||||
@@ -1387,14 +1386,25 @@ void RimEclipseResultDefinition::assignFlowSolutionFromCase()
|
|||||||
this->setFlowSolution(defaultFlowDiagSolution);
|
this->setFlowSolution(defaultFlowDiagSolution);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
///
|
||||||
|
//--------------------------------------------------------------------------------------------------
|
||||||
|
RimEclipseCase* RimEclipseResultDefinition::ownerEclipseCase() const
|
||||||
|
{
|
||||||
|
RimEclipseCase* eclipseCase = nullptr;
|
||||||
|
this->firstAncestorOrThisOfType(eclipseCase);
|
||||||
|
|
||||||
|
return eclipseCase;
|
||||||
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
bool RimEclipseResultDefinition::hasDualPorFractureResult()
|
bool RimEclipseResultDefinition::hasDualPorFractureResult()
|
||||||
{
|
{
|
||||||
if (m_eclipseCase && m_eclipseCase->eclipseCaseData())
|
if (ownerEclipseCase() && ownerEclipseCase()->eclipseCaseData())
|
||||||
{
|
{
|
||||||
return m_eclipseCase->eclipseCaseData()->hasFractureResults();
|
return ownerEclipseCase()->eclipseCaseData()->hasFractureResults();
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
|||||||
@@ -166,9 +166,6 @@ protected:
|
|||||||
|
|
||||||
caf::PdmField<std::vector<QString> > m_selectedSouringTracersUiField;
|
caf::PdmField<std::vector<QString> > m_selectedSouringTracersUiField;
|
||||||
|
|
||||||
|
|
||||||
caf::PdmPointer<RimEclipseCase> m_eclipseCase;
|
|
||||||
|
|
||||||
caf::PdmField<std::vector<QString> > m_selectedTracers_OBSOLETE;
|
caf::PdmField<std::vector<QString> > m_selectedTracers_OBSOLETE;
|
||||||
private:
|
private:
|
||||||
struct TracerComp
|
struct TracerComp
|
||||||
@@ -178,6 +175,7 @@ private:
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
void assignFlowSolutionFromCase();
|
void assignFlowSolutionFromCase();
|
||||||
|
RimEclipseCase* ownerEclipseCase() const;
|
||||||
|
|
||||||
bool hasDualPorFractureResult();
|
bool hasDualPorFractureResult();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user