Fesapi 2.13.0.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
|
This class is dedicated to IJK grids with undefined IjkGridGeometry. There are two main use cases. A first one is block-centered grid, where no geometry is attached to nodes but a property should spatialize cells centers. A second one is LGRs (local refinement grids), where the refined geometry is given thanks to refinement parameters. More...
#include <IjkGridNoGeometryRepresentation.h>
Public Member Functions | |
virtual | ~IjkGridNoGeometryRepresentation ()=default |
uint64_t | getXyzPointCountOfPatch (unsigned int patchIndex) const final |
void | getXyzPointsOfPatch (unsigned int patchIndex, double *xyzPoints) const final |
geometryKind | getGeometryKind () const final |
Public Member Functions inherited from resqml2::AbstractIjkGridRepresentation | |
AbstractIjkGridRepresentation (common::DataObjectRepository *repo, const std::string &guid, const std::string &title, unsigned int iCount, unsigned int jCount, unsigned int kCount, bool *kGaps=nullptr, eml2::AbstractHdfProxy *proxy=nullptr) | |
AbstractIjkGridRepresentation (resqml2::AbstractFeatureInterpretation *interp, const std::string &guid, const std::string &title, unsigned int iCount, unsigned int jCount, unsigned int kCount, bool *kGaps=nullptr, eml2::AbstractHdfProxy *proxy=nullptr) | |
AbstractIjkGridRepresentation (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject, bool withTruncatedPillars=false) | |
virtual | ~AbstractIjkGridRepresentation () |
unsigned int | getICellCount () const |
void | setICellCount (unsigned int iCount) |
unsigned int | getJCellCount () const |
void | setJCellCount (unsigned int jCount) |
Sets the count of cells in the J direction. | |
uint64_t | getCellCount () const final |
unsigned int | getColumnCount () const |
unsigned int | getPillarCount () const |
uint64_t | getKGapsCount () const |
void | getKGaps (bool *kGaps) const |
uint64_t | getFaceCount () const |
unsigned int | getIPillarFromGlobalIndex (unsigned int globalIndex) const |
unsigned int | getJPillarFromGlobalIndex (unsigned int globalIndex) const |
unsigned int | getGlobalIndexPillarFromIjIndex (unsigned int iPillar, unsigned int jPillar) const |
unsigned int | getIColumnFromGlobalIndex (unsigned int globalIndex) const |
unsigned int | getJColumnFromGlobalIndex (unsigned int globalIndex) const |
unsigned int | getGlobalIndexColumnFromIjIndex (unsigned int iColumn, unsigned int jColumn) const |
unsigned int | getGlobalIndexCellFromIjkIndex (unsigned int iCell, unsigned int jCell, unsigned int kCell) const |
bool | isRightHanded () const |
void | getPillarsOfSplitCoordinateLines (unsigned int *pillarIndices, bool reverseIAxis=false, bool reverseJAxis=false) const |
void | getColumnsOfSplitCoordinateLines (unsigned int *columnIndices, bool reverseIAxis=false, bool reverseJAxis=false) const |
void | getColumnCountOfSplitCoordinateLines (unsigned int *columnIndexCountPerSplitCoordinateLine) const |
uint64_t | getSplitCoordinateLineCount () const |
uint64_t | getBlockSplitCoordinateLineCount () const |
uint64_t | getSplitNodeCount () const |
void | getPillarGeometryIsDefined (bool *pillarGeometryIsDefined, bool reverseIAxis=false, bool reverseJAxis=false) const |
bool | hasCellGeometryIsDefinedFlags () const |
void | getCellGeometryIsDefinedFlags (bool *cellGeometryIsDefinedFlags, bool reverseIAxis=false, bool reverseJAxis=false, bool reverseKAxis=false) const |
void | setCellGeometryIsDefinedFlags (uint8_t *cellGeometryIsDefinedFlags, eml2::AbstractHdfProxy *proxy=nullptr) |
void | setAllCellGeometryFlagsToDefined () |
void | loadSplitInformation () |
void | loadBlockInformation (unsigned int iInterfaceStart, unsigned int iInterfaceEnd, unsigned int jInterfaceStart, unsigned int jInterfaceEnd, unsigned int kInterfaceStart, unsigned int kInterfaceEnd) |
void | unloadSplitInformation () |
bool | isColumnEdgeSplitted (unsigned int iColumn, unsigned int jColumn, unsigned int edge) const |
Checks either a given column edge is splitted or not. This method requires that you have already loaded the split information. | |
uint64_t | getXyzPointIndexFromCellCorner (unsigned int iCell, unsigned int jCell, unsigned int kCell, unsigned int corner) const |
Gets the XYZ point index in the HDF dataset from the corner of a cell. This method requires that you have already loaded the split information. | |
void | getXyzPointOfBlockFromCellCorner (unsigned int iCell, unsigned int jCell, unsigned int kCell, unsigned int corner, const double *xyzPoints, double &x, double &y, double &z) const |
Gets the x, y and z values of the corner of a cell of a given block. This method requires that you have already both loaded the block information and get the geometry of the block thanks to getXyzPointsOfBlock(). | |
uint64_t | getXyzPointCountOfKInterface () const |
uint64_t | getXyzPointCountOfBlock () const |
void | getXyzPointsOfKInterface (unsigned int kInterface, double *xyzPoints) |
virtual void | getXyzPointsOfKInterfaceSequence (unsigned int kInterfaceStart, unsigned int kInterfaceEnd, double *xyzPoints) |
Gets all the XYZ points of a particular sequence of K interfaces. XYZ points are given in the local CRS. | |
virtual void | getXyzPointsOfBlock (double *xyzPoints) |
Gets all the XYZ points of the current block. XYZ points are given in the local CRS. Block information must be loaded. | |
virtual bool | isNodeGeometryCompressed () const |
gsoap_resqml2_0_1::resqml20__KDirection | getKDirection () const override |
virtual common::DataObjectReference | getHdfProxyDor () const override |
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::string | getXmlTag () const final |
uint64_t | getPatchCount () const override |
virtual std::string | getXmlNamespace () const override |
Public Member Functions inherited from resqml2::AbstractColumnLayerGridRepresentation | |
virtual | ~AbstractColumnLayerGridRepresentation ()=default |
uint64_t | getKCellCount () const |
void | setKCellCount (uint64_t kCount) |
void | setIntervalAssociationWithStratigraphicOrganizationInterpretation (int64_t const *stratiUnitIndices, int64_t nullValue, resqml2::AbstractStratigraphicOrganizationInterpretation *stratiOrgInterp, eml2::AbstractHdfProxy *hdfProxy=nullptr) |
common::DataObjectReference | getStratigraphicOrganizationInterpretationDor () const final |
bool | hasIntervalStratigraphicUnitIndices () const |
int64_t | getIntervalStratigraphicUnitIndices (int64_t *stratiUnitIndices) |
gsoap_resqml2_0_1::resqml20__PillarShape | getMostComplexPillarGeometry () const |
Public Member Functions inherited from resqml2::AbstractGridRepresentation | |
virtual | ~AbstractGridRepresentation ()=default |
std::vector< class GridConnectionSetRepresentation * > | getGridConnectionSetRepresentationSet () const |
uint64_t | getGridConnectionSetRepresentationCount () const |
class GridConnectionSetRepresentation * | getGridConnectionSetRepresentation (uint64_t index) const |
AbstractGridRepresentation * | getParentGrid () const |
common::DataObjectReference | getParentGridDor () const |
std::vector< resqml2::AbstractGridRepresentation * > | getChildGridSet () const |
uint64_t | getChildGridCount () const |
AbstractGridRepresentation * | getChildGrid (uint64_t index) const |
void | setParentWindow (uint64_t *cellIndices, uint64_t cellIndexCount, class UnstructuredGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr) |
void | setParentWindow (unsigned int *columnIndices, uint64_t columnIndexCount, unsigned int kLayerIndexRegridStart, unsigned int *childCellCountPerInterval, unsigned int *parentCellCountPerInterval, uint64_t intervalCount, class AbstractColumnLayerGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr, double *childCellWeights=nullptr) |
void | setParentWindow (unsigned int iCellIndexRegridStart, unsigned int *childCellCountPerIInterval, unsigned int *parentCellCountPerIInterval, uint64_t iIntervalCount, unsigned int jCellIndexRegridStart, unsigned int *childCellCountPerJInterval, unsigned int *parentCellCountPerJInterval, uint64_t jIntervalCount, unsigned int kCellIndexRegridStart, unsigned int *childCellCountPerKInterval, unsigned int *parentCellCountPerKInterval, uint64_t kIntervalCount, class AbstractIjkGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr, double *iChildCellWeights=nullptr, double *jChildCellWeights=nullptr, double *kChildCellWeights=nullptr) |
void | setParentWindow (unsigned int iCellIndexRegridStart, unsigned int constantChildCellCountPerIInterval, unsigned int constantParentCellCountPerIInterval, uint64_t iIntervalCount, unsigned int jCellIndexRegridStart, unsigned int constantChildCellCountPerJInterval, unsigned int constantParentCellCountPerJInterval, uint64_t jIntervalCount, unsigned int kCellIndexRegridStart, unsigned int constantChildCellCountPerKInterval, unsigned int constantParentCellCountPerKInterval, uint64_t kIntervalCount, class AbstractIjkGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr, double *iChildCellWeights=nullptr, double *jChildCellWeights=nullptr, double *kChildCellWeights=nullptr) |
Indicates that this grid takes place into another IJK parent grid. This method assumes that the count of cells per regrid interval is constant in both child and parent grids. | |
void | setParentWindow (unsigned int iCellIndexRegridStart, unsigned int iChildCellCount, unsigned int iParentCellCount, unsigned int jCellIndexRegridStart, unsigned int jChildCellCount, unsigned int jParentCellCount, unsigned int kCellIndexRegridStart, unsigned int kChildCellCount, unsigned int kParentCellCount, class AbstractIjkGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr, double *iChildCellWeights=nullptr, double *jChildCellWeights=nullptr, double *kChildCellWeights=nullptr) |
void | setForcedNonRegridedParentCell (uint64_t *cellIndices, uint64_t cellIndexCount) |
void | setCellOverlap (uint64_t parentChildCellPairCount, uint64_t *parentChildCellPair, const std::string &volumeUom, double *overlapVolumes=nullptr) |
uint64_t | getParentCellIndexCount () const |
void | getParentCellIndices (uint64_t *parentCellIndices) const |
uint64_t | getParentColumnIndexCount () const |
void | getParentColumnIndices (uint64_t *parentColumnIndices) const |
uint64_t | getRegridStartIndexOnParentGrid (char dimension) const |
uint64_t | getRegridIntervalCount (char dimension) const |
bool | isRegridCellCountPerIntervalConstant (char dimension, bool childVsParentCellCount) const |
uint64_t | getRegridConstantCellCountPerInterval (char dimension, bool childVsParentCellCount) const |
void | getRegridCellCountPerInterval (char dimension, uint64_t *childCellCountPerInterval, bool childVsParentCellCount) const |
bool | hasRegridChildCellWeights (char dimension) const |
void | getRegridChildCellWeights (char dimension, double *childCellWeights) const |
bool | hasForcedNonRegridedParentCell () const |
void | setCellAssociationWithStratigraphicOrganizationInterpretation (int64_t *stratiUnitIndices, int64_t nullValue, class AbstractStratigraphicOrganizationInterpretation *stratiOrgInterp) |
class AbstractStratigraphicOrganizationInterpretation * | getStratigraphicOrganizationInterpretation () const |
bool | hasCellStratigraphicUnitIndices () const |
int64_t | getCellStratigraphicUnitIndices (int64_t *stratiUnitIndices) |
void | setCellAssociationWithRockFluidOrganizationInterpretation (int64_t *rockFluidUnitIndices, int64_t nullValue, class RockFluidOrganizationInterpretation *rockFluidOrgInterp) |
class RockFluidOrganizationInterpretation * | getRockFluidOrganizationInterpretation () const |
virtual common::DataObjectReference | getRockFluidOrganizationInterpretationDor () const |
bool | hasCellFluidPhaseUnitIndices () const |
int64_t | getCellFluidPhaseUnitIndices (int64_t *rockfluidUnitIndices) |
bool | isTruncated () const |
uint64_t | getTruncatedFaceCount () const |
void | getNodeIndicesOfTruncatedFaces (uint64_t *nodeIndices) const |
void | getCumulativeNodeCountPerTruncatedFace (uint64_t *nodeCountPerFace) const |
void | getNodeCountPerTruncatedFace (uint64_t *nodeCountPerFace) const |
uint64_t | getTruncatedCellCount () const |
void | getTruncatedCellIndices (uint64_t *cellIndices) const |
void | getTruncatedFaceIndicesOfTruncatedCells (uint64_t *faceIndices) const |
void | getCumulativeTruncatedFaceCountPerTruncatedCell (uint64_t *cumulativeFaceCountPerCell) const |
void | getTruncatedFaceCountPerTruncatedCell (uint64_t *faceCountPerCell) const |
void | getNonTruncatedFaceIndicesOfTruncatedCells (uint64_t *faceIndices) const |
void | getCumulativeNonTruncatedFaceCountPerTruncatedCell (uint64_t *cumulativeFaceCountPerCell) const |
void | getNonTruncatedFaceCountPerTruncatedCell (uint64_t *faceCountPerCell) const |
void | getTruncatedFaceIsRightHanded (uint8_t *cellFaceIsRightHanded) const |
void | loadTargetRelationships () 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 |
uint64_t | getExtraMetadataCount () const |
std::string | getExtraMetadataKeyAtIndex (uint64_t index) const |
std::string | getExtraMetadataStringValueAtIndex (uint64_t index) const |
std::string | buildEtp12Uri () const |
void | setUriSource (const std::string &uriSource) |
const std::string & | getUriSource () const |
std::string | getEpcSourceFolder () const |
void | changeToPartialObject () |
Additional Inherited Members | |
Public Types inherited from resqml2::AbstractIjkGridRepresentation | |
enum class | geometryKind { UNKNOWN = 0 , EXPLICIT = 1 , PARAMETRIC = 2 , LATTICE = 3 , NO_GEOMETRY = 4 } |
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) |
Static Public Attributes inherited from resqml2::AbstractIjkGridRepresentation | |
static constexpr char const * | XML_TAG = "IjkGridRepresentation" |
static constexpr char const * | XML_TAG_TRUNCATED = "TruncatedIjkGridRepresentation" |
Static Public Attributes inherited from resqml2::AbstractGridRepresentation | |
static constexpr char const * | XML_TAG = "AbstractGridRepresentation" |
Static Public Attributes inherited from resqml2::AbstractRepresentation | |
static constexpr char const * | XML_TAG = "AbstractRepresentation" |
This class is dedicated to IJK grids with undefined IjkGridGeometry. There are two main use cases. A first one is block-centered grid, where no geometry is attached to nodes but a property should spatialize cells centers. A second one is LGRs (local refinement grids), where the refined geometry is given thanks to refinement parameters.
|
virtualdefault |
Destructor does nothing since the memory is managed by the gSOAP context.
Reimplemented in resqml2_0_1::IjkGridNoGeometryRepresentation, and resqml2_2::IjkGridNoGeometryRepresentation.
|
finalvirtual |
Gets the geometry kind of this IJK grid.
Reimplemented from resqml2::AbstractIjkGridRepresentation.
|
finalvirtual |
Get the XYZ point count in a given patch of this grid.
std::out_of_range | If patchIndex >= 1 (IJK grids only carry 1 patch). |
std::logic_error | If getting the XYZ points of this grid is not yet supported. |
patchIndex | Zero-based index of the patch from which we look for the XYZ points. |
Reimplemented from resqml2::AbstractIjkGridRepresentation.
|
finalvirtual |
Please do not use: not implemented yet. Please use parent window information or geometrical property information.
std::_out_of_range | If patchIndex >= 1 (IJK grids only carry 1 patch). |
Reimplemented from resqml2::AbstractIjkGridRepresentation.