Fesapi  2.0.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
Public Member Functions | Static Public Attributes | List of all members
resqml2::SealedVolumeFrameworkRepresentation Class Referenceabstract

A strict boundary representation (BREP), which represents the volume region by assembling together shells. More...

#include <SealedVolumeFrameworkRepresentation.h>

Inheritance diagram for resqml2::SealedVolumeFrameworkRepresentation:
resqml2::RepresentationSetRepresentation resqml2::AbstractRepresentation common::AbstractObject resqml2_0_1::SealedVolumeFrameworkRepresentation resqml2_2::SealedVolumeFrameworkRepresentation

Public Member Functions

virtual ~SealedVolumeFrameworkRepresentation ()=default
 
void setSealedSurfaceFramework (SealedSurfaceFrameworkRepresentation *ssf)
 
void setInterpretationOfVolumeRegion (unsigned int regionIndex, StratigraphicUnitInterpretation *stratiUnitInterp)
 
virtual void pushBackVolumeRegion (StratigraphicUnitInterpretation *stratiUnitInterp, unsigned int externalShellFaceCount, unsigned int const *faceRepresentationIndices, unsigned int const *faceRepPatchIndices, bool const *faceSide)=0
 
virtual void pushBackInternalShell (unsigned int regionIndex, unsigned int internalShellFaceCount, unsigned int const *faceRepresentationIndices, unsigned int const *faceRepPatchIndices, bool const *faceSide)=0
 
SealedSurfaceFrameworkRepresentationgetSealedStructuralFramework () const
 
class StratigraphicUnitInterpretationgetStratiUnitInterp (unsigned int regionIndex) const
 
virtual unsigned int getRegionCount () const =0
 
virtual unsigned int getInternalShellCount (unsigned int regionIndex) const =0
 
virtual unsigned int getFaceCountOfExternalShell (unsigned int regionIndex) const =0
 
virtual unsigned int getFaceCountOfInternalShell (unsigned int regionIndex, unsigned int internalShellIndex) const =0
 
virtual resqml2::AbstractRepresentationgetRepOfExternalShellFace (unsigned int regionIndex, unsigned int faceIndex) const =0
 
virtual resqml2::AbstractRepresentationgetRepOfInternalShellFace (unsigned int regionIndex, unsigned int internalShellIndex, unsigned int faceIndex) const =0
 
virtual unsigned int getRepPatchIndexOfExternalShellFace (unsigned int regionIndex, unsigned int faceIndex) const =0
 
virtual unsigned int getRepPatchIndexOfInternalShellFace (unsigned int regionIndex, unsigned int internalShellIndex, unsigned int faceIndex) const =0
 
virtual bool getSideFlagOfExternalShellFace (unsigned int regionIndex, unsigned int faceIndex) const =0
 
virtual bool getSideFlagOfInternalShellFace (unsigned int regionIndex, unsigned int internalShellIndex, unsigned int faceIndex) const =0
 
virtual std::string getXmlTag () const final
 
- Public Member Functions inherited from resqml2::RepresentationSetRepresentation
virtual ~RepresentationSetRepresentation ()=default
 
common::DataObjectReference getHdfProxyDor () const final
 
uint64_t getXyzPointCountOfPatch (unsigned int patchIndex) const override
 
void getXyzPointsOfPatch (unsigned int patchIndex, double *xyzPoints) const override
 
unsigned int getPatchCount () const override
 
bool isHomogeneous () const
 
unsigned int getRepresentationCount () const
 
resqml2::AbstractRepresentationgetRepresentation (unsigned int index) const
 
common::DataObjectReference getRepresentationDor (unsigned int index) const
 
void pushBack (resqml2::AbstractRepresentation *rep)
 
- Public Member Functions inherited from resqml2::AbstractRepresentation
virtual ~AbstractRepresentation ()=default
 
class AbstractLocal3dCrsgetLocalCrs (unsigned int patchIndex) const
 
virtual common::DataObjectReference getLocalCrsDor (unsigned int patchIndex) const
 
std::vector< class AbstractProperty * > getPropertySet () const
 
void setInterpretation (class AbstractFeatureInterpretation *interp)
 
class AbstractFeatureInterpretationgetInterpretation () const
 
common::DataObjectReference getInterpretationDor () const
 
uint64_t getXyzPointCountOfAllPatches () const
 
void getXyzPointsOfPatchInGlobalCrs (unsigned int patchIndex, double *xyzPoints) const
 Gets all the xyz points of a particular patch of this representation. xyz points are given in the global CRS. More...
 
void getXyzPointsOfAllPatches (double *xyzPoints) const
 Gets all the xyz points of all patches of this representation. xyz points are given in the local CRS. More...
 
bool isInSingleLocalCrs () const
 
bool isInSingleGlobalCrs () const
 
void getXyzPointsOfAllPatchesInGlobalCrs (double *xyzPoints) const
 
AbstractRepresentationgetSeismicSupportOfPatch (const unsigned int &patchIndex) const
 
std::set< AbstractRepresentation * > getAllSeismicSupport () const
 
void pushBackIntoRepresentationSet (class RepresentationSetRepresentation *repSet)
 
void addSeismic3dCoordinatesToPatch (unsigned int patchIndex, double *inlines, double *crosslines, unsigned int pointCount, resqml2::AbstractRepresentation *seismicSupport, eml2::AbstractHdfProxy *proxy)
 
void addSeismic3dCoordinatesToPatch (unsigned int patchIndex, double startInline, double incrInline, unsigned int countInline, double startCrossline, double incrCrossline, unsigned int countCrossline, resqml2::AbstractRepresentation *seismicSupport)
 
void addSeismic2dCoordinatesToPatch (unsigned int patchIndex, double *lineAbscissa, resqml2::AbstractRepresentation *seismicSupport, eml2::AbstractHdfProxy *proxy)
 
void getSeismicLineAbscissaOfPointsOfPatch (unsigned int patchIndex, double *values) const
 
void getInlinesOfPointsOfPatch (unsigned int patchIndex, double *values) const
 
void getCrosslinesOfPointsOfPatch (unsigned int patchIndex, double *values) const
 
- Public Member Functions inherited from common::AbstractObject
bool isPartial () const
 
virtual bool isTopLevelElement () const
 
std::string getUuid () const
 
std::string getTitle () const
 
std::string getEditor () const
 
time_t getCreation () const
 
tm getCreationAsTimeStructure () const
 
std::string getOriginator () const
 
std::string getDescription () const
 
time_t getLastUpdate () const
 
tm getLastUpdateAsTimeStructure () const
 
std::string getFormat () const
 
std::string getDescriptiveKeywords () const
 
std::string getVersion () const
 
void setTitle (const std::string &title)
 
void setEditor (const std::string &editor)
 
void setCreation (time_t creation)
 
void setCreation (const tm &creation)
 
void setOriginator (const std::string &originator)
 
void setDescription (const std::string &description)
 
void setLastUpdate (time_t lastUpdate)
 
void setLastUpdate (const tm &lastUpdate)
 
void setDescriptiveKeywords (const std::string &descriptiveKeywords)
 
void setVersion (const std::string &version)
 
void setMetadata (const std::string &title, const std::string &editor, time_t creation, const std::string &originator, const std::string &description, time_t lastUpdate, const std::string &descriptiveKeywords)
 
void serializeIntoStream (std::ostream *stream)
 
void setGsoapProxy (gsoap_resqml2_0_1::eml20__AbstractCitedDataObject *gsoapProxy)
 
void setGsoapProxy (gsoap_eml2_1::eml21__AbstractObject *gsoapProxy)
 
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * getEml20GsoapProxy () const
 
gsoap_eml2_1::eml21__AbstractObject * getEml21GsoapProxy () const
 
gsoap_eml2_2::eml22__AbstractObject * getEml22GsoapProxy () const
 
void setGsoapProxy (gsoap_eml2_2::eml22__AbstractObject *gsoapProxy)
 
gsoap_eml2_3::eml23__AbstractObject * getEml23GsoapProxy () const
 
void setGsoapProxy (gsoap_eml2_3::eml23__AbstractObject *gsoapProxy)
 
soap * getGsoapContext () const
 
int getGsoapType () const
 
gsoap_resqml2_0_1::eml20__DataObjectReference * newResqmlReference () const
 
gsoap_eml2_1::eml21__DataObjectReference * newEmlReference () const
 
gsoap_eml2_2::eml22__DataObjectReference * newEml22Reference () const
 
gsoap_eml2_3::eml23__DataObjectReference * newEml23Reference () const
 
gsoap_resqml2_0_1::resqml20__ContactElementReference * newContactElementReference2_0_1 () const
 
gsoap_eml2_3::resqml22__ContactElement * newContactElementReference2_2 () const
 
common::DataObjectRepositorygetRepository () const
 
virtual std::string getXmlNamespace () const =0
 
virtual std::string getXmlNamespaceVersion () const
 
virtual std::string getContentType () const
 
virtual std::string getQualifiedType () const
 
virtual std::string getPartNameInEpcDocument () const
 
std::string serializeIntoString ()
 
void addAlias (const std::string &authority, const std::string &title)
 
unsigned int getAliasCount () const
 
std::string getAliasAuthorityAtIndex (unsigned int index) const
 
std::string getAliasTitleAtIndex (unsigned int index) const
 
std::vector< eml2::Activity * > getActivitySet () const
 
unsigned int getActivityCount () const
 
eml2::ActivitygetActivity (unsigned int index) const
 
void pushBackExtraMetadata (const std::string &key, const std::string &value)
 
std::unordered_map< std::string, std::string > getExtraMetadataSet () const
 
std::vector< std::string > getExtraMetadata (const std::string &key) const
 
unsigned int getExtraMetadataCount () const
 
std::string getExtraMetadataKeyAtIndex (unsigned int index) const
 
std::string getExtraMetadataStringValueAtIndex (unsigned int index) const
 

Static Public Attributes

static const char * XML_TAG
 
- Static Public Attributes inherited from resqml2::RepresentationSetRepresentation
static const char * XML_TAG
 
- Static Public Attributes inherited from resqml2::AbstractRepresentation
static const char * XML_TAG
 

Additional Inherited Members

- Public Types inherited from resqml2::AbstractRepresentation
enum  indexableElement {
  NODE = 0 , EDGE = 1 , FACE = 2 , VOLUME = 3 ,
  PILLAR = 4
}
 
- Public Types inherited from common::AbstractObject
enum  hdfDatatypeEnum {
  UNKNOWN = 0 , DOUBLE = 1 , FLOAT = 2 , LONG_64 = 3 ,
  ULONG_64 = 4 , INT = 5 , UINT = 6 , SHORT = 7 ,
  USHORT = 8 , CHAR = 9 , UCHAR = 10
}
 
- Static Public Member Functions inherited from common::AbstractObject
static void setFormat (const std::string &vendor, const std::string &applicationName, const std::string &applicationVersionNumber)
 

Detailed Description

A strict boundary representation (BREP), which represents the volume region by assembling together shells.

BUSINESS RULE: The sealed structural framework must be part of the same earth model as this sealed volume framework.

Constructor & Destructor Documentation

◆ ~SealedVolumeFrameworkRepresentation()

virtual resqml2::SealedVolumeFrameworkRepresentation::~SealedVolumeFrameworkRepresentation ( )
virtualdefault

Destructor does nothing since the memory is managed by the gSOAP context.

Reimplemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

Member Function Documentation

◆ getFaceCountOfExternalShell()

virtual unsigned int resqml2::SealedVolumeFrameworkRepresentation::getFaceCountOfExternalShell ( unsigned int  regionIndex) const
pure virtual

Gets the count of faces in a particular region external shell.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::range_errorIf the count of faces is strictly greater than unsigned int max.
Parameters
regionIndexZero-based index of the framework region.
Returns
The count of faces in the external shell of the region at position regionIndex.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ getFaceCountOfInternalShell()

virtual unsigned int resqml2::SealedVolumeFrameworkRepresentation::getFaceCountOfInternalShell ( unsigned int  regionIndex,
unsigned int  internalShellIndex 
) const
pure virtual

Gets the count of faces in a particular region internal shell.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::out_of_rangeIf internalShellIndex >= getInternalShellCount(regionIndex).
std::range_errorIf the count of faces is strictly greater than unsigned int max.
Parameters
regionIndexZero-based index of the region.
internalShellIndexZero-based index of the internal shell.
Returns
The count of faces of the region regionIndex internal shell internalShellIndex.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ getInternalShellCount()

virtual unsigned int resqml2::SealedVolumeFrameworkRepresentation::getInternalShellCount ( unsigned int  regionIndex) const
pure virtual

Gets the count of internal shells in a particular region.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::range_errorIf the count of internal shells is strictly greater than unsigned int max.
Parameters
regionIndexZero-based index of the framework region.
Returns
The count of internal shells in the region at position regionIndex.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ getRegionCount()

virtual unsigned int resqml2::SealedVolumeFrameworkRepresentation::getRegionCount ( ) const
pure virtual

Gets the count of regions in this framework.

Exceptions
std::range_errorIf the count of regions is strictly greater than unsigned int.
Returns
The count of regions in this framework.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ getRepOfExternalShellFace()

virtual resqml2::AbstractRepresentation* resqml2::SealedVolumeFrameworkRepresentation::getRepOfExternalShellFace ( unsigned int  regionIndex,
unsigned int  faceIndex 
) const
pure virtual

Gets the representation (for instance the triangulated surface) which contains a particular face of the external shell of a particular region of this framework.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::out_of_rangeIf faceIndex >= getFaceCountOfExternalShell(regionIndex).
Parameters
regionIndexZero-based index of the region.
faceIndexZero-base index of the external shell face.
Returns
The representation which contains the face faceIndex of the external shell of the region regionIndex of this framework.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ getRepOfInternalShellFace()

virtual resqml2::AbstractRepresentation* resqml2::SealedVolumeFrameworkRepresentation::getRepOfInternalShellFace ( unsigned int  regionIndex,
unsigned int  internalShellIndex,
unsigned int  faceIndex 
) const
pure virtual

Gets the representation (for instance the triangulated surface) which contains a particular face of a particular internal shell of a particular region of this framework.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::out_of_rangeIf internalShellIndex >= getInternalShellCount(regionIndex).
std::out_of_rangeIf faceIndex >= getFaceCountOfInternalShell(regionIndex, internalShellIndex).
Parameters
regionIndexZero-based index of the framework region.
internalShellIndexZero-based index of the internal shell.
faceIndexZero-based index of the face of the framework region internal shell.
Returns
The representation which contains the face faceIndex of the internal shell internalShellIndex of the region regionIndex of this framework.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ getRepPatchIndexOfExternalShellFace()

virtual unsigned int resqml2::SealedVolumeFrameworkRepresentation::getRepPatchIndexOfExternalShellFace ( unsigned int  regionIndex,
unsigned int  faceIndex 
) const
pure virtual

Get the representation patch index corresponding to a particular face of the external shell of a particular region of this framework.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::out_of_rangeIf faceIndex >= getFaceCountOfExternalShell(regionIndex).
Parameters
regionIndexZero-based index of the framework region.
faceIndexZero-based index of the external shell face.
Returns
The representation patch index (on representation getRepOfExternalShellFace(regionIndex, faceIndex)) which is the face faceIndex of the external shell of the region regionIndex of this framework.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ getRepPatchIndexOfInternalShellFace()

virtual unsigned int resqml2::SealedVolumeFrameworkRepresentation::getRepPatchIndexOfInternalShellFace ( unsigned int  regionIndex,
unsigned int  internalShellIndex,
unsigned int  faceIndex 
) const
pure virtual

Get the representation patch index corresponding to a particular face of particular internal shell of a particular region of this framework.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::out_of_rangeIf internalShellIndex >= getInternalShellCount(regionIndex).
std::out_of_rangeIf faceIndex >= getFaceCountOfInternalShell(regionIndex, internalShellIndex).
Parameters
regionIndexZero-based index of the framework region.
internalShellIndexZero-based index of the internal shell.
faceIndexZero-based index of the face.
Returns
The representation patch index (on representation getRepOfInternalShellFace(regionIndex, internalShellIndex, faceIndex)) which is the face faceIndex of the internal shell internalShellIndex of the region regionIndex of this framework.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ getSealedStructuralFramework()

SealedSurfaceFrameworkRepresentation* resqml2::SealedVolumeFrameworkRepresentation::getSealedStructuralFramework ( ) const

Gets the sealed structural framework this sealed volume framework is based on.

Returns
The sealed structural framework this sealed volume framework is based on.

◆ getSideFlagOfExternalShellFace()

virtual bool resqml2::SealedVolumeFrameworkRepresentation::getSideFlagOfExternalShellFace ( unsigned int  regionIndex,
unsigned int  faceIndex 
) const
pure virtual

Get the orientation (the side flag) of a particular face of the external shell of a particular region of this framework.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::out_of_rangeIf faceIndex >= getFaceCountOfExternalShell(regionIndex).
Parameters
regionIndexZero-based index of the framework region.
faceIndexZero-based index of the external shell face.
Returns
The side flag of the face faceIndex of the external shell of the region regionIndex of this framework.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ getSideFlagOfInternalShellFace()

virtual bool resqml2::SealedVolumeFrameworkRepresentation::getSideFlagOfInternalShellFace ( unsigned int  regionIndex,
unsigned int  internalShellIndex,
unsigned int  faceIndex 
) const
pure virtual

Get the orientation (the side flag) of a particular face of a particular internal shell of a particular region of this framework.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::out_of_rangeIf internalShellIndex >= getInternalShellCount(regionIndex).
std::out_of_rangeIf faceIndex >= getFaceCountOfInternalShell(regionIndex, internalShellIndex).
Parameters
regionIndexZero-based index of the framework region.
internalShellIndexZero-based index of the internal shell.
faceIndexZero-based index of the face.
Returns
The side flag of the face faceIndex of the internal shell internalShellIndex of the region regionIndex of this framework.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ getStratiUnitInterp()

class StratigraphicUnitInterpretation* resqml2::SealedVolumeFrameworkRepresentation::getStratiUnitInterp ( unsigned int  regionIndex) const

Gets the stratigraphic unit interpretation a particular region of this framework represents.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
Parameters
regionIndexZero-based index of the region.
Returns
The stratigraphic unit interpretation represented by the region at position regionIndex.

◆ getXmlTag()

virtual std::string resqml2::SealedVolumeFrameworkRepresentation::getXmlTag ( ) const
inlinefinalvirtual

Gets the standard XML tag without XML namespace for serializing this data object.

Returns
The XML tag.

Reimplemented from resqml2::RepresentationSetRepresentation.

◆ pushBackInternalShell()

virtual void resqml2::SealedVolumeFrameworkRepresentation::pushBackInternalShell ( unsigned int  regionIndex,
unsigned int  internalShellFaceCount,
unsigned int const *  faceRepresentationIndices,
unsigned int const *  faceRepPatchIndices,
bool const *  faceSide 
)
pure virtual

Pushes back an internal shell in a particular volume region of this sealed volume framework.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::invalid_argumentIf externalShellFaceCount == 0.
Parameters
regionIndexZero-base index of the volume region where to push back the internal shell.
internalShellFaceCountThe count of faces composing the region internal shell.
faceRepresentationIndicesAn array containing, for each internal shell face, the index of the corresponding representation in the representation list of this organization. The size of this array is internalShellFaceCount.
faceRepPatchIndicesAn array containing, for each internal shell face, the index of the corresponding patch in the corresponding representation. The size of this array is internalShellFaceCount.
faceSideAn array containing the orientation of each internal shell face. The positive orientation is defined with true while the negative one is defined with false. The size of this array is internalShellFaceCount.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ pushBackVolumeRegion()

virtual void resqml2::SealedVolumeFrameworkRepresentation::pushBackVolumeRegion ( StratigraphicUnitInterpretation stratiUnitInterp,
unsigned int  externalShellFaceCount,
unsigned int const *  faceRepresentationIndices,
unsigned int const *  faceRepPatchIndices,
bool const *  faceSide 
)
pure virtual

Pushes back a volume region in this sealed volume framework.

Exceptions
std::invalid_argumentIf stratiUnitInterp == nullptr.
std::invalid_argumentIf externalShellFaceCount == 0.
Parameters
[in]stratiUnitInterpThe stratigraphic unit interpretation represented by this region.
externalShellFaceCountThe count of faces composing the region external shell.
faceRepresentationIndicesAn array containing, for each external shell face, the index of the corresponding representation in the representation list of this organization. The size of this array is externalShellFaceCount.
faceRepPatchIndicesAn array containing, for each external shell face, the index of the corresponding patch in the corresponding representation. The size of this array is externalShellFaceCount.
faceSideAn array containing the orientation of each external shell face. The positive orientation is defined with true while the negative one is defined with false. The size of this array is externalShellFaceCount.

Implemented in resqml2_2::SealedVolumeFrameworkRepresentation, and resqml2_0_1::SealedVolumeFrameworkRepresentation.

◆ setInterpretationOfVolumeRegion()

void resqml2::SealedVolumeFrameworkRepresentation::setInterpretationOfVolumeRegion ( unsigned int  regionIndex,
StratigraphicUnitInterpretation stratiUnitInterp 
)

Sets the stratigraphic unit interpretation of a particular volume region.

Exceptions
std::out_of_rangeIf regionIndex >= getRegionCount().
std::invalid_argumentIf stratiUnitInterp == nullptr.
Parameters
regionIndexZero-base index of the volume region.
[in]stratiUnitInterpThe stratigraphic unit interpretation represented by the region at position regionIndex.

◆ setSealedSurfaceFramework()

void resqml2::SealedVolumeFrameworkRepresentation::setSealedSurfaceFramework ( SealedSurfaceFrameworkRepresentation ssf)

Sets the sealed surface framework representation this sealed volume framework representation is based on.

Exceptions
std::invalid_argumentIf ssf == nullptr.
Parameters
[in]ssfThe sealed surface framework representation to set.

Member Data Documentation

◆ XML_TAG

const char* resqml2::SealedVolumeFrameworkRepresentation::XML_TAG
static

The standard XML tag without XML namespace for serializing this data object.


The documentation for this class was generated from the following file: