#5757 Python : Add access to summary addresses

This commit is contained in:
Magne Sjaastad
2020-04-01 14:26:36 +02:00
committed by Gaute Lindkvist
parent 6adffe5050
commit 27def6c132
7 changed files with 146 additions and 0 deletions

View File

@@ -22,6 +22,7 @@
#include "RimSummaryCase.h"
#include "RimcDataContainerDouble.h"
#include "RimcDataContainerString.h"
#include "cafPdmFieldIOScriptability.h"
CAF_PDM_OBJECT_METHOD_SOURCE_INIT( RimSummaryCase, RimcSummaryCase_summaryVectorValues, "SummaryVectorValues" );
@@ -82,3 +83,52 @@ std::unique_ptr<caf::PdmObjectHandle> RimcSummaryCase_summaryVectorValues::defau
{
return std::unique_ptr<caf::PdmObjectHandle>( new RimcDataContainerDouble );
}
CAF_PDM_OBJECT_METHOD_SOURCE_INIT( RimSummaryCase, RimcSummaryCase_AvailableAddresses, "AvailableAddresses" );
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RimcSummaryCase_AvailableAddresses::RimcSummaryCase_AvailableAddresses( caf::PdmObjectHandle* self )
: caf::PdmObjectMethod( self )
{
CAF_PDM_InitObject( "Available Addresses", "", "", "" );
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
caf::PdmObjectHandle* RimcSummaryCase_AvailableAddresses::execute()
{
auto* summaryCase = self<RimSummaryCase>();
RifSummaryReaderInterface* sumReader = summaryCase->summaryReader();
const std::set<RifEclipseSummaryAddress>& addresses = sumReader->allResultAddresses();
std::vector<QString> adr;
for ( const auto& a : addresses )
{
adr.push_back( QString::fromStdString( a.uiText() ) );
}
auto dataObject = new RimcDataContainerString();
dataObject->m_stringValues = adr;
return dataObject;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RimcSummaryCase_AvailableAddresses::resultIsPersistent() const
{
return false;
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
std::unique_ptr<caf::PdmObjectHandle> RimcSummaryCase_AvailableAddresses::defaultResult() const
{
return std::unique_ptr<caf::PdmObjectHandle>( new RimcDataContainerString );
}