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

@@ -23,7 +23,7 @@
#include "cvfObject.h"
#include <vector>
class RigGeoMechCaseData;
class RigFemPartCollection;
//==================================================================================================
@@ -37,7 +37,7 @@ public:
RifGeoMechReaderInterface();
virtual ~RifGeoMechReaderInterface();
virtual bool readFemParts(const std::string& fileName, RigGeoMechCaseData* geoMechCase) = 0;
virtual bool readFemParts(const std::string& fileName, RigFemPartCollection* geoMechCase) = 0;
virtual void close() = 0;
virtual std::vector<double> timeSteps() = 0;

View File

@@ -19,7 +19,7 @@
#include "RifOdbReader.h"
#include "RigGeoMechCaseData.h"
#include "RigFemPartCollection.h"
#include "RigFemPart.h"
#include <odb_API.h>
@@ -53,9 +53,9 @@ RifOdbReader::~RifOdbReader()
}
void readOdbFile(const std::string& fileName, RigGeoMechCaseData* geoMechCase)
void readOdbFile(const std::string& fileName, RigFemPartCollection* femParts)
{
CVF_ASSERT(geoMechCase);
CVF_ASSERT(femParts);
odb_String path = fileName.c_str();
@@ -103,8 +103,8 @@ void readOdbFile(const std::string& fileName, RigGeoMechCaseData* geoMechCase)
femPart->appendElement(elmType, odbElm.label(), odbElm.connectivity(nodeCount));
}
femPart->setElementPartId(geoMechCase->partCount());
geoMechCase->addFemPart(femPart);
femPart->setElementPartId(femParts->partCount());
femParts->addFemPart(femPart);
}
}
@@ -112,7 +112,7 @@ void readOdbFile(const std::string& fileName, RigGeoMechCaseData* geoMechCase)
//--------------------------------------------------------------------------------------------------
///
//--------------------------------------------------------------------------------------------------
bool RifOdbReader::readFemParts(const std::string& fileName, RigGeoMechCaseData* geoMechCase)
bool RifOdbReader::readFemParts(const std::string& fileName, RigFemPartCollection* femParts)
{
odb_initializeAPI();
@@ -120,7 +120,7 @@ bool RifOdbReader::readFemParts(const std::string& fileName, RigGeoMechCaseData*
try
{
readOdbFile(fileName, geoMechCase);
readOdbFile(fileName, femParts);
}
catch (const nex_Exception& nex)

View File

@@ -22,7 +22,7 @@
#include "RifGeoMechReaderInterface.h"
#include <string>
class RigGeoMechCaseData;
class RigFemPartCollection;
//==================================================================================================
//
@@ -36,7 +36,7 @@ public:
RifOdbReader();
virtual ~RifOdbReader();
virtual bool readFemParts(const std::string& fileName, RigGeoMechCaseData* geoMechCase);
virtual bool readFemParts(const std::string& fileName, RigFemPartCollection* femParts);
virtual void close();
virtual std::vector<double> timeSteps();