Created FemPartCollection

Used that instead against reader to make a "results free" interface
regarding reading the element models.
This commit is contained in:
Jacob Støren
2015-04-27 10:25:04 +02:00
parent b94ba6ca0b
commit 2b967d9ca1
10 changed files with 133 additions and 43 deletions

View File

@@ -13,6 +13,8 @@ add_library( ${PROJECT_NAME}
RigFemTypes.h
RigGeoMechCaseData.cpp
RigGeoMechCaseData.h
RigFemPartCollection.cpp
RigFemPartCollection.h
)

View File

@@ -0,0 +1,65 @@
/////////////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2015- Statoil ASA
// Copyright (C) 2015- Ceetron Solutions AS
//
// ResInsight is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
// FITNESS FOR A PARTICULAR PURPOSE.
//
// See the GNU General Public License at <http://www.gnu.org/licenses/gpl.html>
// for more details.
//
/////////////////////////////////////////////////////////////////////////////////
#include "RigFemPartCollection.h"
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RigFemPartCollection::RigFemPartCollection()
{
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RigFemPartCollection::~RigFemPartCollection()
{
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RigFemPartCollection::addFemPart(RigFemPart* part)
{
m_femParts.push_back(part);
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RigFemPart* RigFemPartCollection::part(size_t index)
{
return m_femParts[index].p();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
size_t RigFemPartCollection::partCount()
{
return m_femParts.size();
}

View File

@@ -0,0 +1,42 @@
/////////////////////////////////////////////////////////////////////////////////
//
// Copyright (C) 2015- Statoil ASA
// Copyright (C) 2015- Ceetron Solutions AS
//
// ResInsight is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
//
// ResInsight is distributed in the hope that it will be useful, but WITHOUT ANY
// WARRANTY; without even the implied warranty of MERCHANTABILITY or
// FITNESS FOR A PARTICULAR PURPOSE.
//
// See the GNU General Public License at <http://www.gnu.org/licenses/gpl.html>
// for more details.
//
/////////////////////////////////////////////////////////////////////////////////
#pragma once
#include "RigFemPart.h"
#include "cvfCollection.h"
class RigFemPartCollection: public cvf::Object
{
public:
RigFemPartCollection();
~RigFemPartCollection();
void addFemPart(RigFemPart* part);
RigFemPart* part(size_t index);
size_t partCount();
private:
cvf::Collection<RigFemPart> m_femParts;
};

View File

@@ -18,17 +18,13 @@
/////////////////////////////////////////////////////////////////////////////////
#include "RigGeoMechCaseData.h"
#include "RigFemPart.h"
#include <math.h>
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RigGeoMechCaseData::RigGeoMechCaseData()
{
m_femParts = new RigFemPartCollection();
}
//--------------------------------------------------------------------------------------------------
@@ -42,23 +38,7 @@ RigGeoMechCaseData::~RigGeoMechCaseData()
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
void RigGeoMechCaseData::addFemPart(RigFemPart* part)
RigFemPartCollection* RigGeoMechCaseData::femParts()
{
m_femParts.push_back(part);
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
RigFemPart* RigGeoMechCaseData::part(size_t index)
{
return m_femParts[index].p();
}
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
size_t RigGeoMechCaseData::partCount()
{
return m_femParts.size();
return m_femParts.p();
}

View File

@@ -19,8 +19,8 @@
#pragma once
#include "RigFemPart.h"
#include "cvfCollection.h"
#include "RigFemPartCollection.h"
class RigGeoMechCaseData: public cvf::Object
{
@@ -28,11 +28,11 @@ public:
RigGeoMechCaseData();
~RigGeoMechCaseData();
void addFemPart(RigFemPart* part);
RigFemPart* part(size_t index);
size_t partCount();
RigFemPartCollection* femParts();
private:
cvf::Collection<RigFemPart> m_femParts;
cvf::ref<RigFemPartCollection> m_femParts;
};