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::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 uint64_t getCellIndexPairs (uint64_t *cellIndexPairs) const =0
 
virtual unsigned int getCellIndexPairCountFromInterpretationIndex (unsigned int interpretationIndex) const =0
 Gets the count of cell index pairs which correspond to a particular interpretation. More...
 
virtual bool isAssociatedToInterpretations () const =0
 
virtual void getInterpretationIndexCumulativeCount (unsigned int *cumulativeCount) const =0
 
virtual void getInterpretationIndices (unsigned int *interpretationIndices) const =0
 
virtual int64_t getInterpretationIndexNullValue () const =0
 
virtual void getGridConnectionSetInformationFromInterpretationIndex (uint64_t *cellIndexPairs, unsigned short *gridIndexPairs, int *localFaceIndexPairs, unsigned int interpretationIndex) const =0
 
virtual std::string getInterpretationUuidFromIndex (unsigned int interpretationIndex) const =0
 
class AbstractFeatureInterpretationgetInterpretationFromIndex (unsigned int interpretationIndex) const
 
virtual unsigned int 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, int64_t gridIndexPairNullValue=-1, const std::string &gridIndexPair="")=0
 
void setCellIndexPairs (uint64_t cellIndexPairCount, uint64_t const *cellIndexPair, uint64_t cellIndexPairNullValue, eml2::AbstractHdfProxy *proxy, unsigned short gridIndexPairNullValue=(std::numeric_limits< unsigned short >::max)(), unsigned short *gridIndexPair=nullptr)
 Sets the cell index pairs of this grid connection set representation. More...
 
virtual void setLocalFacePerCellIndexPairsUsingExistingDataset (const std::string &localFacePerCellIndexPair, int64_t nullValue, eml2::AbstractHdfProxy *proxy)=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. More...
 
void setLocalFacePerCellIndexPairs (uint64_t cellIndexPairCount, int const *localFacePerCellIndexPair, int nullValue, eml2::AbstractHdfProxy *proxy)
 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. More...
 
virtual void setConnectionInterpretationIndices (unsigned int const *interpretationIndices, unsigned int interpretationIndiceCount, unsigned int nullValue, eml2::AbstractHdfProxy *proxy)=0
 
void pushBackInterpretation (class AbstractFeatureInterpretation *interp)
 
void pushBackSupportingGridRepresentation (class AbstractGridRepresentation *supportingGridRep)
 
virtual unsigned int getSupportingGridRepresentationCount () const =0
 
class AbstractGridRepresentationgetSupportingGridRepresentation (unsigned int index) const
 
virtual common::DataObjectReference getSupportingGridRepresentationDor (unsigned int index) const =0
 
uint64_t getXyzPointCountOfPatch (unsigned int patchIndex) const override
 
void getXyzPointsOfPatch (unsigned int patchIndex, double *xyzPoints) const override
 
unsigned int getPatchCount () const override
 
virtual std::string getXmlTag () const override
 
- Public Member Functions inherited from resqml2::AbstractRepresentation
virtual ~AbstractRepresentation ()=default
 
class AbstractLocal3dCrsgetLocalCrs (unsigned int patchIndex) const
 
virtual common::DataObjectReference getLocalCrsDor (unsigned int 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). More...
 
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::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

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_2::GridConnectionSetRepresentation, and resqml2_0_1::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_2::GridConnectionSetRepresentation, and resqml2_0_1::GridConnectionSetRepresentation.

◆ getCellIndexPairCountFromInterpretationIndex()

virtual unsigned int resqml2::GridConnectionSetRepresentation::getCellIndexPairCountFromInterpretationIndex ( unsigned int  interpretationIndex) const
pure virtual

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

Exceptions
std::invalid_argumentIf this grid connection set representation does not contain any (fault) interpretation association.
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.
Returns
The count of cell index pairs which correspond to the interpretation at index interpretationIndex.

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

◆ getCellIndexPairs()

virtual uint64_t resqml2::GridConnectionSetRepresentation::getCellIndexPairs ( uint64_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_2::GridConnectionSetRepresentation, and resqml2_0_1::GridConnectionSetRepresentation.

◆ getGridConnectionSetInformationFromInterpretationIndex()

virtual void resqml2::GridConnectionSetRepresentation::getGridConnectionSetInformationFromInterpretationIndex ( uint64_t *  cellIndexPairs,
unsigned short *  gridIndexPairs,
int *  localFaceIndexPairs,
unsigned int  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.

Exceptions
std::invalid_argumentIf this grid connection set representation does not contain any (fault) interpretation association.
std::logic_errorIf the intepretation indices or interpretation indices cumulative counts are not stored in a HDF5 integer array.
Parameters
[out]cellIndexPairsMandatory buffer to receive the cell index pairs. Must be preallocated with 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 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 getCellIndexPairCountFromInterpretationIndex(interpretationIndex).
interpretationIndexThe index of an interpretation in the collection of feature interpretation of this grid connection set.

Implemented in resqml2_2::GridConnectionSetRepresentation, and resqml2_0_1::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_2::GridConnectionSetRepresentation, and resqml2_0_1::GridConnectionSetRepresentation.

◆ getInterpretationCount()

virtual unsigned int 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_2::GridConnectionSetRepresentation, and resqml2_0_1::GridConnectionSetRepresentation.

◆ getInterpretationFromIndex()

class AbstractFeatureInterpretation* resqml2::GridConnectionSetRepresentation::getInterpretationFromIndex ( unsigned int  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 ( unsigned int *  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_2::GridConnectionSetRepresentation, and resqml2_0_1::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_2::GridConnectionSetRepresentation, and resqml2_0_1::GridConnectionSetRepresentation.

◆ getInterpretationIndices()

virtual void resqml2::GridConnectionSetRepresentation::getInterpretationIndices ( unsigned int *  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_2::GridConnectionSetRepresentation, and resqml2_0_1::GridConnectionSetRepresentation.

◆ getInterpretationUuidFromIndex()

virtual std::string resqml2::GridConnectionSetRepresentation::getInterpretationUuidFromIndex ( unsigned int  interpretationIndex) const
pure virtual

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.

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

◆ 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.
Returns
The null value used in localFacePerCellIndexPairs.

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

◆ getPatchCount()

unsigned int resqml2::GridConnectionSetRepresentation::getPatchCount ( ) const
inlineoverridevirtual

Gets the patch count.

Returns
The patch count.

Implements resqml2::AbstractRepresentation.

◆ getSupportingGridRepresentation()

class AbstractGridRepresentation* resqml2::GridConnectionSetRepresentation::getSupportingGridRepresentation ( unsigned int  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 unsigned int 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_2::GridConnectionSetRepresentation, and resqml2_0_1::GridConnectionSetRepresentation.

◆ getSupportingGridRepresentationDor()

virtual common::DataObjectReference resqml2::GridConnectionSetRepresentation::getSupportingGridRepresentationDor ( unsigned int  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_2::GridConnectionSetRepresentation, and resqml2_0_1::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_2::GridConnectionSetRepresentation, and resqml2_0_1::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_2::GridConnectionSetRepresentation, and resqml2_0_1::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_2::GridConnectionSetRepresentation, and resqml2_0_1::GridConnectionSetRepresentation.

◆ pushBackInterpretation()

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

Pushes back an interpretation which can be mapped with some connections.

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,
uint64_t const *  cellIndexPair,
uint64_t  cellIndexPairNullValue,
eml2::AbstractHdfProxy proxy,
unsigned short  gridIndexPairNullValue = (std::numeric_limits< unsigned short >::max)(),
unsigned short *  gridIndexPair = nullptr 
)

Sets the cell index pairs of this grid connection set representation.

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.
cellIndexPairNullValueThe integer null value used in cellIndexPair.
[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.
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,
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]proxyThe 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_2::GridConnectionSetRepresentation, and resqml2_0_1::GridConnectionSetRepresentation.

◆ setConnectionInterpretationIndices()

virtual void resqml2::GridConnectionSetRepresentation::setConnectionInterpretationIndices ( unsigned int const *  interpretationIndices,
unsigned int  interpretationIndiceCount,
unsigned int  nullValue,
eml2::AbstractHdfProxy proxy 
)
pure virtual

For each connection in this grid connection set representation, allows to map zero or one feature interpretation. RESQML allows to map with more than one feature interpretation but this feature is not implemented yet.

Exceptions
std::invalid_argumentIf proxy == nullptr.
Parameters
[in]interpretationIndicesFor each connection, the index of the corresponding interpretation in the interpretation set of this grid connection set. The count of this array is interpretationIndiceCount.
interpretationIndiceCountThe count of interpretation indices.
nullValueThe null value must be used as the corresponding interpretation index for each connection which is not associated to any interpretation.
[in,out]proxyThe Hdf proxy where the numerical values will be stored.

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

◆ setLocalFacePerCellIndexPairs()

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

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.
Parameters
cellIndexPairCountThe count of cell index pair. It is half the size of localFacePerCellIndexPair.
[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.
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 
)
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.
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.
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_2::GridConnectionSetRepresentation, and resqml2_0_1::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: