Fesapi 2.10.1.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
|
#include <GridConnectionSetRepresentation.h>
Public Member Functions | |
GridConnectionSetRepresentation (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject) | |
GridConnectionSetRepresentation (resqml2::AbstractFeatureInterpretation *interp, const std::string &guid, const std::string &title) | |
Creates an instance of this class in a gsoap context. | |
GridConnectionSetRepresentation (common::DataObjectRepository *repo, const std::string &guid, const std::string &title) | |
GridConnectionSetRepresentation (gsoap_resqml2_0_1::_resqml20__GridConnectionSetRepresentation *fromGsoap) | |
~GridConnectionSetRepresentation ()=default | |
common::DataObjectReference | getHdfProxyDor () const final |
Gets the data object reference of the HDF proxy which is used for storing the numerical values of this representation (i.e. its geometry). | |
uint64_t | getCellIndexPairCount () const final |
int64_t | getCellIndexPairs (int64_t *cellIndexPairs) const final |
uint64_t | getCellIndexPairCountFromInterpretationIndex (int64_t interpretationIndex) const final |
Gets the count of cell index pairs which correspond to a particular interpretation or to no interpretation. | |
bool | isAssociatedToInterpretations () const final |
void | getInterpretationIndexCumulativeCount (uint64_t *cumulativeCount) const final |
void | getInterpretationIndices (int64_t *interpretationIndices) const final |
int64_t | getInterpretationIndexNullValue () const final |
void | getGridConnectionSetInformationFromInterpretationIndex (int64_t *cellIndexPairs, unsigned short *gridIndexPairs, int *localFaceIndexPairs, int64_t interpretationIndex) const final |
common::DataObjectReference | getInterpretationDorFromIndex (uint64_t interpretationIndex) const final |
uint64_t | getInterpretationCount () const final |
bool | hasLocalFacePerCell () const final |
int64_t | getLocalFacePerCellIndexPairs (int *localFacePerCellIndexPairs) const final |
bool | isBasedOnMultiGrids () const final |
void | getGridIndexPairs (unsigned short *gridIndexPairs) const final |
void | setCellIndexPairsUsingExistingDataset (uint64_t cellIndexPairCount, const std::string &cellIndexPair, int64_t cellIndexPairNullValue, eml2::AbstractHdfProxy *proxy=nullptr, int64_t gridIndexPairNullValue=-1, const std::string &gridIndexPair="") final |
void | setInterpretationForAllConnections (resqml2::AbstractFeatureInterpretation *interp, eml2::AbstractHdfProxy *proxy=nullptr) final |
void | setLocalFacePerCellIndexPairsUsingExistingDataset (const std::string &localFacePerCellIndexPair, int64_t nullValue, eml2::AbstractHdfProxy *proxy=nullptr) final |
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 | setConnectionInterpretationIndices (uint64_t const *cumulativeInterpCount, int64_t const *interpIndices, eml2::AbstractHdfProxy *proxy=nullptr) final |
uint64_t | getSupportingGridRepresentationCount () const final |
common::DataObjectReference | getSupportingGridRepresentationDor (uint64_t index) const final |
virtual std::string | getXmlNamespace () const final |
Public Member Functions inherited from resqml2::GridConnectionSetRepresentation | |
std::string | getInterpretationUuidFromIndex (uint64_t interpretationIndex) const |
class AbstractFeatureInterpretation * | getInterpretationFromIndex (uint64_t interpretationIndex) const |
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. | |
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. | |
void | pushBackInterpretation (class AbstractFeatureInterpretation *interp) |
void | pushBackSupportingGridRepresentation (class AbstractGridRepresentation *supportingGridRep) |
class AbstractGridRepresentation * | getSupportingGridRepresentation (uint64_t index) const |
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::AbstractLocal3dCrs * | getLocalCrs (uint64_t patchIndex) const |
virtual common::DataObjectReference | getLocalCrsDor (uint64_t patchIndex) const |
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::TimeSeries * | getTimeSeries () 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 AbstractFeatureInterpretation * | getInterpretation () 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 |
AbstractRepresentation * | getSeismicSupportOfPatch (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::DataObjectRepository * | getRepository () const |
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::Activity * | getActivity (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_NS |
Static Public Attributes inherited from resqml2::GridConnectionSetRepresentation | |
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) |
A grid connection set representation.
|
inline |
Only to be used in partial transfer context
[in,out] | partialObject | If non-null, the partial object. |
resqml2_0_1::GridConnectionSetRepresentation::GridConnectionSetRepresentation | ( | resqml2::AbstractFeatureInterpretation * | interp, |
const std::string & | guid, | ||
const std::string & | title ) |
Creates an instance of this class in a gsoap context.
std::invalid_argument | If interp == nullptr . |
[in] | interp | The interpretation the instance represents. |
guid | A guid for the instance to create. | |
title | A title for the instance to create. |
resqml2_0_1::GridConnectionSetRepresentation::GridConnectionSetRepresentation | ( | common::DataObjectRepository * | repo, |
const std::string & | guid, | ||
const std::string & | title ) |
Creates an instance of this class in a gsoap context.
[in,out] | repo | The repo where this instance will be stored. |
guid | A guid for the instance to create. | |
title | A title for the instance to create. |
|
inline |
Creates an instance of this class by wrapping a gsoap instance.
[in,out] | fromGsoap | If non-null, from gsoap. |
|
virtualdefault |
Destructor does nothing since the memory is managed by the gsoap context.
Reimplemented from resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Gets the cell index pair count of this grid connection set representation.
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Gets the count of cell index pairs which correspond to a particular interpretation or to no interpretation.
std::invalid_argument | If the HDF5 library could not read the count of interpretation indices associated to this grid connection set representation. |
std::logic_error | If the intepretation indices are not stored in a HDF5 integer array. |
std::out_of_range | If interpretationIndex is out of range. |
interpretationIndex | The 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. |
interpretationIndex
or to no interpretation. Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Gets the cell index pairs of this grid connection set representation
logic_error | If the cell index pairs are not stored in a HDF5 integer array. |
[out] | cellIndexPairs | A 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. |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
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.
std::logic_error | If the intepretation indices or interpretation indices cumulative counts are not stored in a HDF5 integer array. |
std::out_of_range | If interpretationIndex is out of range. |
[out] | cellIndexPairs | Mandatory buffer to receive the cell index pairs. Must be preallocated with 2 * getCellIndexPairCountFromInterpretationIndex(interpretationIndex) . |
[in,out] | gridIndexPairs | Optional 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] | localFaceIndexPairs | Optional 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. |
interpretationIndex | The 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. |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
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.
std::invalid_argument | If this representation is not based on several grids. |
std::logic_error | If the grid index pairs are not stored in a HDF5 integer array. |
[out] | gridIndexPairs | A buffer for receiving the grid index pairs. It must be preallocated with a size getCellIndexPairCount()*2 and won't be freed by fesapi. |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Gets the data object reference of the HDF proxy which is used for storing the numerical values of this representation (i.e. its geometry).
std::logic_error | If this representation is partial. |
Implements resqml2::AbstractRepresentation.
|
finalvirtual |
Get the count of interpretations in this grid connection set.
range_error | If the count of associated interpretations is strictly greater than unsigned int. |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Gets the DOR of a particular (fault) interpretation of this grid connection set.
std::invalid_argument | If this grid connection set representation does not contain fault interpretation association. |
std::invalid_argument | If the associated feature interpretation at position interpretationIndex is not a fault one. This is legal but not yet implemented. |
std::out_of_range | If interpretationIndex is out of range. |
interpretationIndex | The index of a (fault) interpretation in the collection of feature interpretation of this grid connection set. |
interpretationIndex
. Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Gets the (fault) interpretation index cumulative counts of this grid connection representation.
std::invalid_argument | If this grid connection set representation does not contain any (fault) interpretation association. |
std::logic_error | If the intepretation indices cumulative counts are not stored in a HDF5 integer array. |
[out] | cumulativeCount | A 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] . |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Gets the null value for interpretation index.
std::invalid_argument | If this grid connection set representation does not contain any (fault) interpretation association. |
std::logic_error | If the intepretation indices are not stored in a HDF5 integer array. |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Gets the (fault) interpretation indices of this grid connection representation.
std::invalid_argument | If this grid connection set representation does not contain any (fault) interpretation association. |
std::logic_error | If the intepretation indices are not stored in a HDF5 integer array. |
[out] | interpretationIndices | A buffer for receiving the interpretation indices. It must be preallocated with a size equals to the last value of cumulativeCount after calling getInterpretationIndexCumulativeCount(cumulativeCount). |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
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.
std::invalid_argument | If this representation has no local face per cell pair. |
std::logic_error | If the local face per cell index pairs are not stored in a HDF5 integer array. |
[out] | localFacePerCellIndexPairs | A 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. |
localFacePerCellIndexPairs
. Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Gets the count of supporting grid representations of this grid connection representation.
std::range_error | If the count of supporting grid representations is strictly greater than unsigned int maximum value. |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Gets the data object reference of the supporting grid representation located at a specific index of this grid connection set representation.
std::out_of_range | If index is out of range. |
index | Zero-based index of the supporting grid representation we look for. |
index
. Implements resqml2::GridConnectionSetRepresentation.
|
inlinefinalvirtual |
Get the standard XML namespace for serializing this data object.
Implements common::AbstractObject.
|
finalvirtual |
Indicates if this grid connection set representation contains information on the connected faces of the cell pairs.
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Indicates whether the cell connections are associated to interpretation or not.
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Indicates if this grid connection set representation is based on several grids.
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
Sets the cell index pairs of this grid connection set representation using some existing HDF datasets.
std::invalid_argument | If cellIndexPairCount is 0. |
std::invalid_argument | If proxy is nullptr and no default HDF proxy is defined in the repository. |
cellIndexPairCount | The 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). | |
cellIndexPair | The 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. | |
cellIndexPairNullValue | The 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. |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
For each connection in this grid connection set representation, allows to map zero to several feature interpretation.
std::logic_error | If getCellIndexPairs() == 0 . |
std::invalid_argument | If proxy is nullptr and no default HDF proxy is defined in the repository. |
[in] | cumulativeInterpCount | For each connection, the cumulative count of the associated interpretations. Count must be equal to getCellIndexPairs(). |
[in] | interpIndices | The 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] | proxy | The Hdf proxy where the numerical values will be stored. |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
For each connection in this grid connection set representation, associate the same interpretation.
std::logic_error | If getCellIndexPairs() == 0 . |
std::logic_error | If interpretation has already been pushed into this instance. |
[in] | interp | The interpretation to associate to all connections. |
[in,out] | proxy | The Hdf proxy where the numerical values will be stored. |
Implements resqml2::GridConnectionSetRepresentation.
|
finalvirtual |
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.
std::invalid_argument | If 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. |
localFacePerCellIndexPair | The 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. | |
nullValue | The null value. | |
[in,out] | proxy | The HDF proxy where the numerical values (cell indices) are stored. if nullptr , then the repository default HDF proxy will be used. |
Implements resqml2::GridConnectionSetRepresentation.
|
static |
The standard XML namespace for serializing this data object.