mirror of
https://github.com/OPM/ResInsight.git
synced 2025-02-25 18:55:39 -06:00
This commit is contained in:
parent
4c6a56bb52
commit
28278c47ec
@ -31,6 +31,7 @@
|
|||||||
#include "RimEclipseStatisticsCaseEvaluator.h"
|
#include "RimEclipseStatisticsCaseEvaluator.h"
|
||||||
#include "RimEclipseView.h"
|
#include "RimEclipseView.h"
|
||||||
#include "RimIdenticalGridCaseGroup.h"
|
#include "RimIdenticalGridCaseGroup.h"
|
||||||
|
#include "RimIntersectionCollection.h"
|
||||||
#include "RimReservoirCellResultsStorage.h"
|
#include "RimReservoirCellResultsStorage.h"
|
||||||
#include "RimSimWellInViewCollection.h"
|
#include "RimSimWellInViewCollection.h"
|
||||||
|
|
||||||
@ -39,7 +40,6 @@
|
|||||||
#include "cafPdmUiPushButtonEditor.h"
|
#include "cafPdmUiPushButtonEditor.h"
|
||||||
#include "cafPdmUiTextEditor.h"
|
#include "cafPdmUiTextEditor.h"
|
||||||
#include "cafProgressInfo.h"
|
#include "cafProgressInfo.h"
|
||||||
#include "RimIntersectionCollection.h"
|
|
||||||
|
|
||||||
namespace caf {
|
namespace caf {
|
||||||
template<>
|
template<>
|
||||||
@ -183,7 +183,7 @@ void RimEclipseStatisticsCase::reloadEclipseGridFile()
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RimCaseCollection* RimEclipseStatisticsCase::parentStatisticsCaseCollection()
|
RimCaseCollection* RimEclipseStatisticsCase::parentStatisticsCaseCollection() const
|
||||||
{
|
{
|
||||||
return dynamic_cast<RimCaseCollection*>(this->parentField()->ownerObject());
|
return dynamic_cast<RimCaseCollection*>(this->parentField()->ownerObject());
|
||||||
}
|
}
|
||||||
@ -210,9 +210,7 @@ void RimEclipseStatisticsCase::computeStatistics()
|
|||||||
CVF_ASSERT(gridCaseGroup);
|
CVF_ASSERT(gridCaseGroup);
|
||||||
gridCaseGroup->computeUnionOfActiveCells();
|
gridCaseGroup->computeUnionOfActiveCells();
|
||||||
|
|
||||||
std::vector<RimEclipseCase*> sourceCases;
|
std::vector<RimEclipseCase*> sourceCases = getSourceCases();
|
||||||
|
|
||||||
getSourceCases(sourceCases);
|
|
||||||
|
|
||||||
if (sourceCases.size() == 0
|
if (sourceCases.size() == 0
|
||||||
|| !sourceCases.at(0)->results(RiaDefines::MATRIX_MODEL))
|
|| !sourceCases.at(0)->results(RiaDefines::MATRIX_MODEL))
|
||||||
@ -308,8 +306,10 @@ void RimEclipseStatisticsCase::scheduleACTIVEGeometryRegenOnReservoirViews()
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
void RimEclipseStatisticsCase::getSourceCases(std::vector<RimEclipseCase*>& sourceCases)
|
std::vector<RimEclipseCase*> RimEclipseStatisticsCase::getSourceCases() const
|
||||||
{
|
{
|
||||||
|
std::vector<RimEclipseCase*> sourceCases;
|
||||||
|
|
||||||
RimIdenticalGridCaseGroup* gridCaseGroup = caseGroup();
|
RimIdenticalGridCaseGroup* gridCaseGroup = caseGroup();
|
||||||
if (gridCaseGroup)
|
if (gridCaseGroup)
|
||||||
{
|
{
|
||||||
@ -323,12 +323,14 @@ void RimEclipseStatisticsCase::getSourceCases(std::vector<RimEclipseCase*>& sour
|
|||||||
sourceCases.push_back(sourceCase);
|
sourceCases.push_back(sourceCase);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return sourceCases;
|
||||||
}
|
}
|
||||||
|
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
///
|
///
|
||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
RimIdenticalGridCaseGroup* RimEclipseStatisticsCase::caseGroup()
|
RimIdenticalGridCaseGroup* RimEclipseStatisticsCase::caseGroup() const
|
||||||
{
|
{
|
||||||
RimCaseCollection* parentCollection = parentStatisticsCaseCollection();
|
RimCaseCollection* parentCollection = parentStatisticsCaseCollection();
|
||||||
if (parentCollection)
|
if (parentCollection)
|
||||||
@ -722,6 +724,8 @@ void RimEclipseStatisticsCase::clearComputedStatistics()
|
|||||||
//--------------------------------------------------------------------------------------------------
|
//--------------------------------------------------------------------------------------------------
|
||||||
void RimEclipseStatisticsCase::computeStatisticsAndUpdateViews()
|
void RimEclipseStatisticsCase::computeStatisticsAndUpdateViews()
|
||||||
{
|
{
|
||||||
|
if (getSourceCases().empty()) return;
|
||||||
|
|
||||||
computeStatistics();
|
computeStatistics();
|
||||||
scheduleACTIVEGeometryRegenOnReservoirViews();
|
scheduleACTIVEGeometryRegenOnReservoirViews();
|
||||||
updateConnectedEditorsAndReservoirViews();
|
updateConnectedEditorsAndReservoirViews();
|
||||||
|
@ -20,9 +20,10 @@
|
|||||||
|
|
||||||
#pragma once
|
#pragma once
|
||||||
|
|
||||||
#include "RimEclipseCase.h"
|
|
||||||
#include "RiaDefines.h"
|
#include "RiaDefines.h"
|
||||||
|
|
||||||
|
#include "RimEclipseCase.h"
|
||||||
|
|
||||||
#include "cvfBase.h"
|
#include "cvfBase.h"
|
||||||
#include "cvfObject.h"
|
#include "cvfObject.h"
|
||||||
#include "cafPdmField.h"
|
#include "cafPdmField.h"
|
||||||
@ -30,12 +31,11 @@
|
|||||||
#include "cafAppEnum.h"
|
#include "cafAppEnum.h"
|
||||||
#include "cvfCollection.h"
|
#include "cvfCollection.h"
|
||||||
|
|
||||||
|
|
||||||
class RimIdenticalGridCaseGroup;
|
|
||||||
class RimEclipseResultDefinition;
|
|
||||||
class RimEclipseStatisticsCaseCollection;
|
|
||||||
class RigMainGrid;
|
class RigMainGrid;
|
||||||
class RigSimWellData;
|
class RigSimWellData;
|
||||||
|
class RimEclipseResultDefinition;
|
||||||
|
class RimEclipseStatisticsCaseCollection;
|
||||||
|
class RimIdenticalGridCaseGroup;
|
||||||
|
|
||||||
|
|
||||||
//==================================================================================================
|
//==================================================================================================
|
||||||
@ -63,7 +63,7 @@ public:
|
|||||||
virtual bool openEclipseGridFile();
|
virtual bool openEclipseGridFile();
|
||||||
virtual void reloadEclipseGridFile();
|
virtual void reloadEclipseGridFile();
|
||||||
|
|
||||||
RimCaseCollection* parentStatisticsCaseCollection();
|
RimCaseCollection* parentStatisticsCaseCollection() const;
|
||||||
|
|
||||||
enum PercentileCalcType
|
enum PercentileCalcType
|
||||||
{
|
{
|
||||||
@ -80,9 +80,8 @@ public:
|
|||||||
private:
|
private:
|
||||||
void scheduleACTIVEGeometryRegenOnReservoirViews();
|
void scheduleACTIVEGeometryRegenOnReservoirViews();
|
||||||
|
|
||||||
RimIdenticalGridCaseGroup* caseGroup();
|
RimIdenticalGridCaseGroup* caseGroup() const;
|
||||||
|
std::vector<RimEclipseCase*> getSourceCases() const;
|
||||||
void getSourceCases(std::vector<RimEclipseCase*>& sourceCases);
|
|
||||||
|
|
||||||
void populateResultSelection();
|
void populateResultSelection();
|
||||||
|
|
||||||
@ -90,17 +89,15 @@ private:
|
|||||||
void updateSelectionSummaryLabel();
|
void updateSelectionSummaryLabel();
|
||||||
void updatePercentileUiVisibility();
|
void updatePercentileUiVisibility();
|
||||||
|
|
||||||
|
|
||||||
void setWellResultsAndUpdateViews(const cvf::Collection<RigSimWellData>& sourceCaseSimWellData);
|
void setWellResultsAndUpdateViews(const cvf::Collection<RigSimWellData>& sourceCaseSimWellData);
|
||||||
|
|
||||||
// Pdm system overrides
|
|
||||||
virtual void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) ;
|
virtual void defineUiOrdering( QString uiConfigName, caf::PdmUiOrdering& uiOrdering ) ;
|
||||||
virtual QList<caf::PdmOptionItemInfo> calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions, bool * useOptionsOnly );
|
virtual QList<caf::PdmOptionItemInfo> calculateValueOptions( const caf::PdmFieldHandle* fieldNeedingOptions, bool * useOptionsOnly );
|
||||||
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue);
|
virtual void fieldChangedByUi(const caf::PdmFieldHandle* changedField, const QVariant& oldValue, const QVariant& newValue);
|
||||||
|
|
||||||
virtual void defineEditorAttribute( const caf::PdmFieldHandle* field, QString uiConfigName, caf::PdmUiEditorAttribute * attribute );
|
virtual void defineEditorAttribute( const caf::PdmFieldHandle* field, QString uiConfigName, caf::PdmUiEditorAttribute * attribute );
|
||||||
// Fields
|
|
||||||
|
|
||||||
|
private:
|
||||||
caf::PdmField< caf::AppEnum< RiaDefines::ResultCatType > > m_resultType;
|
caf::PdmField< caf::AppEnum< RiaDefines::ResultCatType > > m_resultType;
|
||||||
caf::PdmField< caf::AppEnum< RiaDefines::PorosityModelType > > m_porosityModel;
|
caf::PdmField< caf::AppEnum< RiaDefines::PorosityModelType > > m_porosityModel;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user