Fesapi 2.10.1.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
Loading...
Searching...
No Matches
resqml2::GridConnectionSetRepresentation Class Referenceabstract

Proxy class for a grid connection set representation. This representation consists of a list of connections between grid cells, potentially on different grids. More...

#include <GridConnectionSetRepresentation.h>

Inheritance diagram for resqml2::GridConnectionSetRepresentation:
resqml2::AbstractRepresentation common::AbstractObject resqml2_0_1::GridConnectionSetRepresentation resqml2_2::GridConnectionSetRepresentation

Public Member Functions

virtual ~GridConnectionSetRepresentation ()=default
 
virtual uint64_t getCellIndexPairCount () const =0
 
virtual int64_t getCellIndexPairs (int64_t *cellIndexPairs) const =0
 
virtual uint64_t getCellIndexPairCountFromInterpretationIndex (int64_t interpretationIndex) const =0
 Gets the count of cell index pairs which correspond to a particular interpretation or to no interpretation.
 
virtual bool isAssociatedToInterpretations () const =0
 
virtual void getInterpretationIndexCumulativeCount (uint64_t *cumulativeCount) const =0
 
virtual void getInterpretationIndices (int64_t *interpretationIndices) const =0
 
virtual int64_t getInterpretationIndexNullValue () const =0
 
virtual void getGridConnectionSetInformationFromInterpretationIndex (int64_t *cellIndexPairs, unsigned short *gridIndexPairs, int *localFaceIndexPairs, int64_t interpretationIndex) const =0
 
std::string getInterpretationUuidFromIndex (uint64_t interpretationIndex) const
 
virtual common::DataObjectReference getInterpretationDorFromIndex (uint64_t interpretationIndex) const =0
 
class AbstractFeatureInterpretationgetInterpretationFromIndex (uint64_t interpretationIndex) const
 
virtual uint64_t getInterpretationCount () const =0
 
virtual bool hasLocalFacePerCell () const =0
 
virtual int64_t getLocalFacePerCellIndexPairs (int *localFacePerCellIndexPairs) const =0
 
virtual bool isBasedOnMultiGrids () const =0
 
virtual void getGridIndexPairs (unsigned short *gridIndexPairs) const =0
 
virtual void setCellIndexPairsUsingExistingDataset (uint64_t cellIndexPairCount, const std::string &cellIndexPair, int64_t cellIndexPairNullValue, eml2::AbstractHdfProxy *proxy=nullptr, int64_t gridIndexPairNullValue=-1, const std::string &gridIndexPair="")=0
 
void setCellIndexPairs (uint64_t cellIndexPairCount, int64_t const *cellIndexPair, int64_t cellIndexPairNullValue=-1, eml2::AbstractHdfProxy *proxy=nullptr, uint16_t gridIndexPairNullValue=(std::numeric_limits< uint16_t >::max)(), uint16_t const *gridIndexPair=nullptr)
 Sets the cell index pairs of this grid connection set representation. If this instance is supported by a single grid, then optional gridIndex* parameters are not needed. Default cell index null value is set to -1.
 
virtual void setLocalFacePerCellIndexPairsUsingExistingDataset (const std::string &localFacePerCellIndexPair, int64_t nullValue, eml2::AbstractHdfProxy *proxy=nullptr)=0
 Sets the local face per cell index pairs of this grid connection set representation. Local face-per-cell indices are used because global face indices need not have been defined. The numerical values are already stored in an existing hdf5 dataset. Null value = -1 according to documentation.
 
void setLocalFacePerCellIndexPairs (int const *localFacePerCellIndexPair, int nullValue, eml2::AbstractHdfProxy *proxy=nullptr)
 Sets the local face per cell index pairs of this grid connection set representation. Local face-per-cell indices are used because global face indices need not have been defined. The numerical values will be written as a new HDF5 dataset in an existing HDF5 file.
 
virtual void setConnectionInterpretationIndices (uint64_t const *cumulativeInterpCount, int64_t const *interpIndices, eml2::AbstractHdfProxy *proxy=nullptr)=0
 
void pushBackInterpretation (class AbstractFeatureInterpretation *interp)
 
virtual void setInterpretationForAllConnections (class AbstractFeatureInterpretation *interp, eml2::AbstractHdfProxy *proxy=nullptr)=0
 
void pushBackSupportingGridRepresentation (class AbstractGridRepresentation *supportingGridRep)
 
virtual uint64_t getSupportingGridRepresentationCount () const =0
 
class AbstractGridRepresentationgetSupportingGridRepresentation (uint64_t index) const
 
virtual common::DataObjectReference getSupportingGridRepresentationDor (uint64_t index) const =0
 
uint64_t getXyzPointCountOfPatch (unsigned int patchIndex) const override
 
void getXyzPointsOfPatch (unsigned int patchIndex, double *xyzPoints) const override
 
uint64_t getPatchCount () const override
 
virtual std::string getXmlTag () const override
 
- Public Member Functions inherited from resqml2::AbstractRepresentation
virtual ~AbstractRepresentation ()=default
 
eml2::AbstractLocal3dCrsgetLocalCrs (uint64_t patchIndex) const
 
virtual common::DataObjectReference getLocalCrsDor (uint64_t patchIndex) const
 
virtual common::DataObjectReference getHdfProxyDor () const =0
 Gets the data object reference of the HDF proxy which is used for storing the numerical values of this representation (i.e. its geometry).
 
void setTimeIndex (uint64_t timeIndex, eml2::TimeSeries *timeSeries)
 
uint64_t getTimeIndex () const
 Gets the time index of this representation in the associated TimeSeries. Be sure to first check that a TimeSeries is associated this representation by calling getTimeSeriesDor or getTimeSeries;.
 
eml2::TimeSeriesgetTimeSeries () const
 
common::DataObjectReference getTimeSeriesDor () const
 Gets the data object reference of the TimeSeries containing the time of this representation at a particular index. For now, this method only look for a TimeSeries at the first patch containing a point geometry.
 
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.
 
void getXyzPointsOfAllPatches (double *xyzPoints) const
 Gets all the xyz points of all patches of this representation. xyz points are given in the local CRS.
 
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, uint64_t 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)
 
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * getEml20GsoapProxy () const
 
void setGsoapProxy (gsoap_resqml2_0_1::eml20__AbstractCitedDataObject *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_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)
 
uint64_t getAliasCount () const
 
std::string getAliasAuthorityAtIndex (uint64_t index) const
 
std::string getAliasTitleAtIndex (uint64_t index) const
 
std::vector< eml2::Activity * > getActivitySet () const
 
uint64_t getActivityCount () const
 
eml2::ActivitygetActivity (uint64_t 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
 
std::string buildEtp12Uri () const
 
void setUriSource (const std::string &uriSource)
 
const std::string & getUriSource () const
 
std::string getEpcSourceFolder () const
 
void changeToPartialObject ()
 

Static Public Attributes

static const char * XML_TAG
 
- Static Public Attributes inherited from resqml2::AbstractRepresentation
static constexpr char const * XML_TAG = "AbstractRepresentation"
 

Additional Inherited Members

- Public Types inherited from common::AbstractObject
enum class  numericalDatatypeEnum {
  UNKNOWN = 0 , DOUBLE = 1 , FLOAT = 2 , INT64 = 3 ,
  UINT64 = 4 , INT32 = 5 , UINT32 = 6 , INT16 = 7 ,
  UINT16 = 8 , INT8 = 9 , UINT8 = 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

Proxy class for a grid connection set representation. This representation consists of a list of connections between grid cells, potentially on different grids.

Connections are in the form of (Grid,Cell,Face)1<=>(Grid,Cell,Face)2 and are stored as three integer pair arrays (one grid index pair array, one cell index pair array and one face index pair array) corresponding to these six elements.

Grid connection sets are the preferred means of representing faults on a grid. The use of cell-face-pairs is more complete than single cell- faces, which are missing a corresponding cell face entry, and only provide an incomplete representation of the topology of a fault. Unlike what is sometimes the case in reservoir simulation software, RESQML does not distinguish between standard and non-standard connections. Within RESQML, if a grid connection corresponds to a "nearest neighbor" as defined by the cell indices, then it is never additive to the implicit nearest neighbor connection.

BUSINESS RULE: A single cell- face-pair should not appear within more than a single grid connection set. This rule is designed to simplify the interpretation of properties assigned to multiple grid connection sets, which might otherwise have the same property defined more than once on a single connection, with no clear means of resolving the multiple values.

Constructor & Destructor Documentation

◆ ~GridConnectionSetRepresentation()

virtual resqml2::GridConnectionSetRepresentation::~GridConnectionSetRepresentation ( )
virtualdefault

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

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

Member Function Documentation

◆ getCellIndexPairCount()

virtual uint64_t resqml2::GridConnectionSetRepresentation::getCellIndexPairCount ( ) const
pure virtual

Gets the cell index pair count of this grid connection set representation.

Returns
The cell index pair count.

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

◆ getCellIndexPairCountFromInterpretationIndex()

virtual uint64_t resqml2::GridConnectionSetRepresentation::getCellIndexPairCountFromInterpretationIndex ( int64_t interpretationIndex) const
pure virtual

Gets the count of cell index pairs which correspond to a particular interpretation or to no interpretation.

Exceptions
std::invalid_argumentIf the HDF5 library could not read the count of interpretation indices associated to this grid connection set representation.
std::logic_errorIf the intepretation indices are not stored in a HDF5 integer array.
std::out_of_rangeIf interpretationIndex is out of range.
Parameters
interpretationIndexThe index of an interpretation in the collection of feature interpretation of this grid connection set. Or -1 for having cell index pair count which are not associated to any interpretation at all.
Returns
The count of cell index pairs which correspond to the interpretation at index interpretationIndex or to no interpretation.

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

◆ getCellIndexPairs()

virtual int64_t resqml2::GridConnectionSetRepresentation::getCellIndexPairs ( int64_t * cellIndexPairs) const
pure virtual

Gets the cell index pairs of this grid connection set representation

Exceptions
logic_errorIf the cell index pairs are not stored in a HDF5 integer array.
Parameters
[out]cellIndexPairsA buffer for receiving the cell index pairs. It must be preallocated with a size of 2 * getCellIndexPairCount(). Two consecutive values cellIndexPairs[i] and cellIndexPairs[i+1] constitute a pair of cell index.
Returns
The null value.

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

◆ getGridConnectionSetInformationFromInterpretationIndex()

virtual void resqml2::GridConnectionSetRepresentation::getGridConnectionSetInformationFromInterpretationIndex ( int64_t * cellIndexPairs,
unsigned short * gridIndexPairs,
int * localFaceIndexPairs,
int64_t interpretationIndex ) const
pure virtual

Gets the cell index pairs, the grid index pairs (optional) and the local face index pairs (optional) which correspond to a particular interpretation or to no interpretation.

Exceptions
std::logic_errorIf the intepretation indices or interpretation indices cumulative counts are not stored in a HDF5 integer array.
std::out_of_rangeIf interpretationIndex is out of range.
Parameters
[out]cellIndexPairsMandatory buffer to receive the cell index pairs. Must be preallocated with 2 * getCellIndexPairCountFromInterpretationIndex(interpretationIndex).
[in,out]gridIndexPairsOptional buffer to receive the grid index pairs. Please set to nullptr for not collecting these pairs. Must be preallocated with 2 * getCellIndexPairCountFromInterpretationIndex(interpretationIndex).
[in,out]localFaceIndexPairsOptional buffer to receive the local face index pairs. Please set to nullptr for not collecting these pairs. Must be preallocated with 2 * getCellIndexPairCountFromInterpretationIndex(interpretationIndex). See http://docs.energistics.org/#RESQML/RESQML_TOPICS/RESQML-000-252-0-C-sv2010.html for IJK cell face index convention.
interpretationIndexThe index of an interpretation in the collection of feature interpretation of this grid connection set. Or -1 for having information for cells which are not associated to any interpretation at all.

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

◆ getGridIndexPairs()

virtual void resqml2::GridConnectionSetRepresentation::getGridIndexPairs ( unsigned short * gridIndexPairs) const
pure virtual

Gets the grid index pairs of this grid connection representation. Please check that this grid connection set representation is based on several grids thanks to isBasedOnMultiGrids() before calling this method.

Exceptions
std::invalid_argumentIf this representation is not based on several grids.
std::logic_errorIf the grid index pairs are not stored in a HDF5 integer array.
Parameters
[out]gridIndexPairsA buffer for receiving the grid index pairs. It must be preallocated with a size getCellIndexPairCount()*2 and won't be freed by fesapi.

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

◆ getInterpretationCount()

virtual uint64_t resqml2::GridConnectionSetRepresentation::getInterpretationCount ( ) const
pure virtual

Get the count of interpretations in this grid connection set.

Exceptions
range_errorIf the count of associated interpretations is strictly greater than unsigned int.
Returns
The interpretation count.

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

◆ getInterpretationDorFromIndex()

virtual common::DataObjectReference resqml2::GridConnectionSetRepresentation::getInterpretationDorFromIndex ( uint64_t interpretationIndex) const
pure virtual

Gets the DOR of a particular (fault) interpretation of this grid connection set.

Exceptions
std::invalid_argumentIf this grid connection set representation does not contain fault interpretation association.
std::invalid_argumentIf the associated feature interpretation at position interpretationIndex is not a fault one. This is legal but not yet implemented.
std::out_of_rangeIf interpretationIndex is out of range.
Parameters
interpretationIndexThe index of a (fault) interpretation in the collection of feature interpretation of this grid connection set.
Returns
The DOR of the (fault) interpretation at index interpretationIndex.

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

◆ getInterpretationFromIndex()

class AbstractFeatureInterpretation * resqml2::GridConnectionSetRepresentation::getInterpretationFromIndex ( uint64_t interpretationIndex) const

Gets a particular (fault) interpretation of this grid connection set.

Exceptions
std::invalid_argumentIf this grid connection set representation does not contain fault interpretation association.
std::invalid_argumentIf the associated feature interpretation at position interpretationIndex is not a fault one. This is legal but not yet implemented.
std::out_of_rangeIf interpretationIndex is out of range.
Parameters
interpretationIndexThe index of a (fault) interpretation in the collection of feature interpretation of this grid connection set.
Returns
The (fault) interpretation at index interpretationIndex.

◆ getInterpretationIndexCumulativeCount()

virtual void resqml2::GridConnectionSetRepresentation::getInterpretationIndexCumulativeCount ( uint64_t * cumulativeCount) const
pure virtual

Gets the (fault) interpretation index cumulative counts of this grid connection representation.

Exceptions
std::invalid_argumentIf this grid connection set representation does not contain any (fault) interpretation association.
std::logic_errorIf the intepretation indices cumulative counts are not stored in a HDF5 integer array.
Parameters
[out]cumulativeCountA buffer for receiving the cumulative counts. Must be preallocated with a size of getCellIndexPairCount(). The number of interpretations associated to the connection at index i is cumulativeCount[i].

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

◆ getInterpretationIndexNullValue()

virtual int64_t resqml2::GridConnectionSetRepresentation::getInterpretationIndexNullValue ( ) const
pure virtual

Gets the null value for interpretation index.

Exceptions
std::invalid_argumentIf this grid connection set representation does not contain any (fault) interpretation association.
std::logic_errorIf the intepretation indices are not stored in a HDF5 integer array.
Returns
The interpretation index null value.

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

◆ getInterpretationIndices()

virtual void resqml2::GridConnectionSetRepresentation::getInterpretationIndices ( int64_t * interpretationIndices) const
pure virtual

Gets the (fault) interpretation indices of this grid connection representation.

Exceptions
std::invalid_argumentIf this grid connection set representation does not contain any (fault) interpretation association.
std::logic_errorIf the intepretation indices are not stored in a HDF5 integer array.
Parameters
[out]interpretationIndicesA buffer for receiving the interpretation indices. It must be preallocated with a size equals to the last value of cumulativeCount after calling getInterpretationIndexCumulativeCount(cumulativeCount).

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

◆ getInterpretationUuidFromIndex()

std::string resqml2::GridConnectionSetRepresentation::getInterpretationUuidFromIndex ( uint64_t interpretationIndex) const
inline

Gets the UUID of a particular (fault) interpretation of this grid connection set.

Exceptions
std::invalid_argumentIf this grid connection set representation does not contain fault interpretation association.
std::invalid_argumentIf the associated feature interpretation at position interpretationIndex is not a fault one. This is legal but not yet implemented.
std::out_of_rangeIf interpretationIndex is out of range.
Parameters
interpretationIndexThe index of a (fault) interpretation in the collection of feature interpretation of this grid connection set.
Returns
The UUID of the (fault) interpretation at index interpretationIndex.

◆ getLocalFacePerCellIndexPairs()

virtual int64_t resqml2::GridConnectionSetRepresentation::getLocalFacePerCellIndexPairs ( int * localFacePerCellIndexPairs) const
pure virtual

Gets the local face per cell index pairs of this grid connection representation. Please check that this grid connection set representation has local face per cell index pairs thanks to hasLocalFacePerCell() before calling this method.

Exceptions
std::invalid_argumentIf this representation has no local face per cell pair.
std::logic_errorIf the local face per cell index pairs are not stored in a HDF5 integer array.
Parameters
[out]localFacePerCellIndexPairsA buffer for receiving the local face per cell index pairs. It must be preallocated with a size of getCellIndexPairCount()*2 and won't be freed by FESAPI. See http://docs.energistics.org/#RESQML/RESQML_TOPICS/RESQML-000-252-0-C-sv2010.html for IJK cell face index convention.
Returns
The null value used in localFacePerCellIndexPairs.

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

◆ getPatchCount()

uint64_t resqml2::GridConnectionSetRepresentation::getPatchCount ( ) const
inlineoverridevirtual

Gets the patch count.

Returns
The patch count.

Implements resqml2::AbstractRepresentation.

◆ getSupportingGridRepresentation()

class AbstractGridRepresentation * resqml2::GridConnectionSetRepresentation::getSupportingGridRepresentation ( uint64_t index) const

Gets the supporting grid representation located at a specific index of this grid connection set representation.

Exceptions
std::out_of_rangeIf index is out of range.
Parameters
indexZero-based index of the supporting grid representation we look for.
Returns
The supporting grid representation at position index.

◆ getSupportingGridRepresentationCount()

virtual uint64_t resqml2::GridConnectionSetRepresentation::getSupportingGridRepresentationCount ( ) const
pure virtual

Gets the count of supporting grid representations of this grid connection representation.

Exceptions
std::range_errorIf the count of supporting grid representations is strictly greater than unsigned int maximum value.
Returns
The supporting grid representation count.

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

◆ getSupportingGridRepresentationDor()

virtual common::DataObjectReference resqml2::GridConnectionSetRepresentation::getSupportingGridRepresentationDor ( uint64_t index) const
pure virtual

Gets the data object reference of the supporting grid representation located at a specific index of this grid connection set representation.

Exceptions
std::out_of_rangeIf index is out of range.
Parameters
indexZero-based index of the supporting grid representation we look for.
Returns
The data object reference of the supporting grid representation at position index.

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

◆ getXmlTag()

virtual std::string resqml2::GridConnectionSetRepresentation::getXmlTag ( ) const
inlineoverridevirtual

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

Returns
The XML tag.

Implements common::AbstractObject.

◆ getXyzPointCountOfPatch()

uint64_t resqml2::GridConnectionSetRepresentation::getXyzPointCountOfPatch ( unsigned int patchIndex) const
overridevirtual

Please do note use: not implemented yet.

Implements resqml2::AbstractRepresentation.

◆ getXyzPointsOfPatch()

void resqml2::GridConnectionSetRepresentation::getXyzPointsOfPatch ( unsigned int patchIndex,
double * xyzPoints ) const
overridevirtual

Please do note use: not implemented yet.

Implements resqml2::AbstractRepresentation.

◆ hasLocalFacePerCell()

virtual bool resqml2::GridConnectionSetRepresentation::hasLocalFacePerCell ( ) const
pure virtual

Indicates if this grid connection set representation contains information on the connected faces of the cell pairs.

Returns
True if there exists information on connected faces, false if not.

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

◆ isAssociatedToInterpretations()

virtual bool resqml2::GridConnectionSetRepresentation::isAssociatedToInterpretations ( ) const
pure virtual

Indicates whether the cell connections are associated to interpretation or not.

Returns
True if associated to interpretations, false if not.

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

◆ isBasedOnMultiGrids()

virtual bool resqml2::GridConnectionSetRepresentation::isBasedOnMultiGrids ( ) const
pure virtual

Indicates if this grid connection set representation is based on several grids.

Returns
True if it is based on several grids, false if not.

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

◆ pushBackInterpretation()

void resqml2::GridConnectionSetRepresentation::pushBackInterpretation ( class AbstractFeatureInterpretation * interp)

Pushes back an interpretation which can be mapped with some connections. Do not use this method when you assign a single interpreation to all connections. Use

Exceptions
std::invalid_argumentIf interp is nullptr.
Parameters
[in]interpThe interpretation to push back.

◆ pushBackSupportingGridRepresentation()

void resqml2::GridConnectionSetRepresentation::pushBackSupportingGridRepresentation ( class AbstractGridRepresentation * supportingGridRep)

Pushes back a grid representation which is one of the support of this representation. Pushes back this representation as a grid connection information of the grid representation as well.

Exceptions
std::invalid_argumentIf supportingGridRep is nullptr.
Parameters
[in]supportingGridRepThe supporting grid representation to push back.

◆ setCellIndexPairs()

void resqml2::GridConnectionSetRepresentation::setCellIndexPairs ( uint64_t cellIndexPairCount,
int64_t const * cellIndexPair,
int64_t cellIndexPairNullValue = -1,
eml2::AbstractHdfProxy * proxy = nullptr,
uint16_t gridIndexPairNullValue = (std::numeric_limits< uint16_t >::max)(),
uint16_t const * gridIndexPair = nullptr )

Sets the cell index pairs of this grid connection set representation. If this instance is supported by a single grid, then optional gridIndex* parameters are not needed. Default cell index null value is set to -1.

Exceptions
std::invalid_argumentIf cellIndexPairCount is 0.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
std::invalid_argumentIf cellIndexPairNullValue is strictly greater than uint64_t max. The XML null value cannot be greater than a 64 bits signed integer cause of gSOAP mappings.
Parameters
cellIndexPairCountThe count of cell index pairs. It is half the size of cellIndexPair (and of gridIndexPair if used).
[in]cellIndexPairAll the cell index pair in a 1d array where the cell indices go faster than the pair.
cellIndexPairNullValue(Optional) The integer null value used in cellIndexPair.
[in,out]proxy(Optional) The HDF proxy where the numerical values (cell indices) are stored. If nullptr, then the default HDF proxy of the repository will be used.
gridIndexPairNullValue(Optional) The integer null value used in gridIndexPair.
[in]gridIndexPair(Optional) All the grid index pair in a 1d array where the grid indices go faster than the pair. The grid at an index must correspond to the cell at the same index in the cellIndexPair array.

◆ setCellIndexPairsUsingExistingDataset()

virtual void resqml2::GridConnectionSetRepresentation::setCellIndexPairsUsingExistingDataset ( uint64_t cellIndexPairCount,
const std::string & cellIndexPair,
int64_t cellIndexPairNullValue,
eml2::AbstractHdfProxy * proxy = nullptr,
int64_t gridIndexPairNullValue = -1,
const std::string & gridIndexPair = "" )
pure virtual

Sets the cell index pairs of this grid connection set representation using some existing HDF datasets.

Exceptions
std::invalid_argumentIf cellIndexPairCount is 0.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
cellIndexPairCountThe count of cell index pairs. It is half the size of the 1d array containing the cell index pairs (and of the one containing grid index pairs if there is one).
cellIndexPairThe HDF dataset path where we can find all the cell index pairs in a 1d array where the cell indices go faster than the pair.
cellIndexPairNullValueThe integer null value used in the HDF cell index pair dataset.
[in]proxy(Optional) The HDF proxy where the numerical values (cell indices) are stored. If nullptr, then the default HDF proxy of the repository will be used.
gridIndexPairNullValue(Optional) The integer null value used in the HDF grid index pair dataset.
gridIndexPair(Optional) The HDF dataset path where we can find all the grid index pairs in a 1d array where the grid indices go faster than the pair. The grid at an index must correspond to the cell at the same index in the cellIndexPair array. If empty string (default), then no grid index pair will be set and parameter gridIndexPairNullValue will be unused.

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

◆ setConnectionInterpretationIndices()

virtual void resqml2::GridConnectionSetRepresentation::setConnectionInterpretationIndices ( uint64_t const * cumulativeInterpCount,
int64_t const * interpIndices,
eml2::AbstractHdfProxy * proxy = nullptr )
pure virtual

For each connection in this grid connection set representation, allows to map zero to several feature interpretation.

Exceptions
std::logic_errorIf getCellIndexPairs() == 0.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
[in]cumulativeInterpCountFor each connection, the cumulative count of the associated interpretations. Count must be equal to getCellIndexPairs().
[in]interpIndicesThe index of the interpretation associated to cell index pairs. The count of this array is cumulativeInterpCount[cumulativeInterpCount.size() - 1]. The nullValue is -1. Interpretation index is related to pushBackInterpretation.
[in,out]proxyThe Hdf proxy where the numerical values will be stored.

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

◆ setInterpretationForAllConnections()

virtual void resqml2::GridConnectionSetRepresentation::setInterpretationForAllConnections ( class AbstractFeatureInterpretation * interp,
eml2::AbstractHdfProxy * proxy = nullptr )
pure virtual

For each connection in this grid connection set representation, associate the same interpretation.

Exceptions
std::logic_errorIf getCellIndexPairs() == 0.
std::logic_errorIf interpretation has already been pushed into this instance.
Parameters
[in]interpThe interpretation to associate to all connections.
[in,out]proxyThe Hdf proxy where the numerical values will be stored.

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

◆ setLocalFacePerCellIndexPairs()

void resqml2::GridConnectionSetRepresentation::setLocalFacePerCellIndexPairs ( int const * localFacePerCellIndexPair,
int nullValue,
eml2::AbstractHdfProxy * proxy = nullptr )

Sets the local face per cell index pairs of this grid connection set representation. Local face-per-cell indices are used because global face indices need not have been defined. The numerical values will be written as a new HDF5 dataset in an existing HDF5 file.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository. std::logic_error If the cell index pairs have not been set yet.
Parameters
[in]localFacePerCellIndexPairAll the local face per cell index pairs in a 1d array where the local face per cell indices go faster than the pair. The local face per cell at an index must correspond to the cell at the same index in the 1d array containing the cell index pairs. See http://docs.energistics.org/#RESQML/RESQML_TOPICS/RESQML-000-252-0-C-sv2010.html for IJK cell face index convention.
nullValueThe null value in localFacePerCellIndexPair.
[in,out]proxyThe HDF proxy where the numerical values (cell indices) are stored. If nullptr, then the default HDF proxy of the repository will be used.

◆ setLocalFacePerCellIndexPairsUsingExistingDataset()

virtual void resqml2::GridConnectionSetRepresentation::setLocalFacePerCellIndexPairsUsingExistingDataset ( const std::string & localFacePerCellIndexPair,
int64_t nullValue,
eml2::AbstractHdfProxy * proxy = nullptr )
pure virtual

Sets the local face per cell index pairs of this grid connection set representation. Local face-per-cell indices are used because global face indices need not have been defined. The numerical values are already stored in an existing hdf5 dataset. Null value = -1 according to documentation.

Exceptions
std::invalid_argumentIf proxy == nullptr and no default HDF proxy is defined in the repository. std::logic_error If the cell index pairs have not been set yet.
Parameters
localFacePerCellIndexPairThe HDF dataset path where we can find all the local Face Per CellIndex Pair in a 1d array. The size of the numerical values is 2 times the number of connections array of local face-per- cell indices for (Cell1,Cell2) for each connection. See http://docs.energistics.org/#RESQML/RESQML_TOPICS/RESQML-000-252-0-C-sv2010.html for IJK cell face index convention.
nullValueThe null value.
[in,out]proxyThe HDF proxy where the numerical values (cell indices) are stored. if nullptr, then the repository default HDF proxy will be used.

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

Member Data Documentation

◆ XML_TAG

const char* resqml2::GridConnectionSetRepresentation::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: