21#include "AbstractRepresentation.h"
26 class AbstractGridRepresentation :
public AbstractRepresentation
102 DLL_IMPORT_OR_EXPORT std::vector<RESQML2_NS::AbstractGridRepresentation *>
getChildGridSet()
const;
120 DLL_IMPORT_OR_EXPORT AbstractGridRepresentation *
getChildGrid(uint64_t index)
const;
187 DLL_IMPORT_OR_EXPORT
void setParentWindow(
unsigned int * columnIndices, uint64_t columnIndexCount,
188 unsigned int kLayerIndexRegridStart,
189 unsigned int * childCellCountPerInterval,
unsigned int * parentCellCountPerInterval, uint64_t intervalCount,
191 EML2_NS::AbstractHdfProxy * proxy =
nullptr,
double * childCellWeights =
nullptr);
268 unsigned int iCellIndexRegridStart,
unsigned int * childCellCountPerIInterval,
unsigned int * parentCellCountPerIInterval, uint64_t iIntervalCount,
269 unsigned int jCellIndexRegridStart,
unsigned int * childCellCountPerJInterval,
unsigned int * parentCellCountPerJInterval, uint64_t jIntervalCount,
270 unsigned int kCellIndexRegridStart,
unsigned int * childCellCountPerKInterval,
unsigned int * parentCellCountPerKInterval, uint64_t kIntervalCount,
271 class AbstractIjkGridRepresentation* parentGrid, EML2_NS::AbstractHdfProxy * proxy =
nullptr,
double * iChildCellWeights =
nullptr,
double * jChildCellWeights =
nullptr,
double * kChildCellWeights =
nullptr);
364 unsigned int iCellIndexRegridStart,
unsigned int constantChildCellCountPerIInterval,
unsigned int constantParentCellCountPerIInterval, uint64_t iIntervalCount,
365 unsigned int jCellIndexRegridStart,
unsigned int constantChildCellCountPerJInterval,
unsigned int constantParentCellCountPerJInterval, uint64_t jIntervalCount,
366 unsigned int kCellIndexRegridStart,
unsigned int constantChildCellCountPerKInterval,
unsigned int constantParentCellCountPerKInterval, uint64_t kIntervalCount,
367 class AbstractIjkGridRepresentation* parentGrid, EML2_NS::AbstractHdfProxy * proxy =
nullptr,
double * iChildCellWeights =
nullptr,
double * jChildCellWeights =
nullptr,
double * kChildCellWeights =
nullptr);
426 unsigned int iCellIndexRegridStart,
unsigned int iChildCellCount,
unsigned int iParentCellCount,
427 unsigned int jCellIndexRegridStart,
unsigned int jChildCellCount,
unsigned int jParentCellCount,
428 unsigned int kCellIndexRegridStart,
unsigned int kChildCellCount,
unsigned int kParentCellCount,
429 class AbstractIjkGridRepresentation* parentGrid, EML2_NS::AbstractHdfProxy * proxy =
nullptr,
double * iChildCellWeights =
nullptr,
double * jChildCellWeights =
nullptr,
double * kChildCellWeights =
nullptr);
474 DLL_IMPORT_OR_EXPORT
void setCellOverlap(uint64_t parentChildCellPairCount, uint64_t* parentChildCellPair,
475 const std::string& volumeUom,
double* overlapVolumes =
nullptr);
1106 DLL_IMPORT_OR_EXPORT
static constexpr char const*
XML_TAG =
"AbstractGridRepresentation";
1119 AbstractGridRepresentation(gsoap_resqml2_0_1::eml20__DataObjectReference* partialObject,
bool withTruncatedPillars) :AbstractRepresentation(partialObject), withTruncatedPillars(withTruncatedPillars) {}
1134 AbstractGridRepresentation(gsoap_resqml2_0_1::resqml20__AbstractGridRepresentation* fromGsoap,
bool withTruncatedPillars) : AbstractRepresentation(fromGsoap), withTruncatedPillars(withTruncatedPillars) {}
1135 AbstractGridRepresentation(gsoap_eml2_3::resqml22__AbstractGridRepresentation* fromGsoap,
bool withTruncatedPillars) : AbstractRepresentation(fromGsoap), withTruncatedPillars(withTruncatedPillars) {}
1138 bool withTruncatedPillars;
1146 gsoap_resqml2_0_1::resqml20__Regrid* createRegrid2_0_1(uint32_t indexRegridStart, uint32_t* childCellCountPerInterval, uint32_t* parentCellCountPerInterval, uint64_t intervalCount,
double* childCellWeights,
1147 const std::string& dimension, EML2_NS::AbstractHdfProxy* proxy,
bool forceConstantCellCountPerInterval =
false);
1148 gsoap_eml2_3::resqml22__Regrid* createRegrid2_2(uint32_t indexRegridStart, uint32_t* childCellCountPerInterval, uint32_t* parentCellCountPerInterval, uint64_t intervalCount,
double* childCellWeights,
1149 const std::string& dimension, EML2_NS::AbstractHdfProxy* proxy,
bool forceConstantCellCountPerInterval =
false);
1155 gsoap_resqml2_0_1::resqml20__AbstractIntegerArray* getCellCountPerInterval2_0_1(
char dimension,
bool childVsParentCellCount)
const;
1156 gsoap_eml2_3::eml23__AbstractIntegerArray* getCellCountPerInterval2_2(
char dimension,
bool childVsParentCellCount)
const;
1163 gsoap_resqml2_0_1::resqml20__AbstractParentWindow* getParentWindow2_0_1()
const;
1164 gsoap_eml2_3::resqml22__AbstractParentWindow* getParentWindow2_2()
const;
Proxy class for an abstract column layer grid representation.
Definition AbstractColumnLayerGridRepresentation.h:27
Proxy class for an abstract grid representation.
Definition AbstractGridRepresentation.h:27
std::vector< resqml2::AbstractGridRepresentation * > getChildGridSet() const
uint64_t getRegridStartIndexOnParentGrid(char dimension) const
void getNonTruncatedFaceCountPerTruncatedCell(uint64_t *faceCountPerCell) const
common::DataObjectReference getParentGridDor() const
bool hasCellFluidPhaseUnitIndices() const
AbstractGridRepresentation * getChildGrid(uint64_t index) const
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...
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)
int64_t getCellStratigraphicUnitIndices(int64_t *stratiUnitIndices)
void getTruncatedFaceIsRightHanded(uint8_t *cellFaceIsRightHanded) const
static constexpr char const * XML_TAG
Definition AbstractGridRepresentation.h:1106
virtual common::DataObjectReference getStratigraphicOrganizationInterpretationDor() const
void getCumulativeTruncatedFaceCountPerTruncatedCell(uint64_t *cumulativeFaceCountPerCell) const
virtual common::DataObjectReference getRockFluidOrganizationInterpretationDor() const
void getNonTruncatedFaceIndicesOfTruncatedCells(uint64_t *faceIndices) const
void getParentColumnIndices(uint64_t *parentColumnIndices) const
virtual ~AbstractGridRepresentation()=default
bool hasRegridChildCellWeights(char dimension) const
AbstractGridRepresentation * getParentGrid() const
void getRegridCellCountPerInterval(char dimension, uint64_t *childCellCountPerInterval, bool childVsParentCellCount) const
uint64_t getRegridConstantCellCountPerInterval(char dimension, bool childVsParentCellCount) const
void setParentWindow(uint64_t *cellIndices, uint64_t cellIndexCount, class UnstructuredGridRepresentation *parentGrid, eml2::AbstractHdfProxy *proxy=nullptr)
void setCellOverlap(uint64_t parentChildCellPairCount, uint64_t *parentChildCellPair, const std::string &volumeUom, double *overlapVolumes=nullptr)
virtual uint64_t getCellCount() const =0
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)
uint64_t getRegridIntervalCount(char dimension) const
uint64_t getParentCellIndexCount() const
uint64_t getGridConnectionSetRepresentationCount() const
void getParentCellIndices(uint64_t *parentCellIndices) const
class GridConnectionSetRepresentation * getGridConnectionSetRepresentation(uint64_t index) const
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 getCumulativeNodeCountPerTruncatedFace(uint64_t *nodeCountPerFace) const
void getNodeCountPerTruncatedFace(uint64_t *nodeCountPerFace) const
bool hasForcedNonRegridedParentCell() const
void getRegridChildCellWeights(char dimension, double *childCellWeights) const
int64_t getCellFluidPhaseUnitIndices(int64_t *rockfluidUnitIndices)
void setCellAssociationWithStratigraphicOrganizationInterpretation(int64_t *stratiUnitIndices, int64_t nullValue, class AbstractStratigraphicOrganizationInterpretation *stratiOrgInterp)
uint64_t getTruncatedFaceCount() const
bool isRegridCellCountPerIntervalConstant(char dimension, bool childVsParentCellCount) const
void setCellAssociationWithRockFluidOrganizationInterpretation(int64_t *rockFluidUnitIndices, int64_t nullValue, class RockFluidOrganizationInterpretation *rockFluidOrgInterp)
void getCumulativeNonTruncatedFaceCountPerTruncatedCell(uint64_t *cumulativeFaceCountPerCell) const
void setForcedNonRegridedParentCell(uint64_t *cellIndices, uint64_t cellIndexCount)
void getTruncatedFaceCountPerTruncatedCell(uint64_t *faceCountPerCell) const
void getTruncatedFaceIndicesOfTruncatedCells(uint64_t *faceIndices) const
uint64_t getTruncatedCellCount() const
class AbstractStratigraphicOrganizationInterpretation * getStratigraphicOrganizationInterpretation() const
void getNodeIndicesOfTruncatedFaces(uint64_t *nodeIndices) const
bool hasCellStratigraphicUnitIndices() const
class RockFluidOrganizationInterpretation * getRockFluidOrganizationInterpretation() const
uint64_t getChildGridCount() const
void loadTargetRelationships() override
std::vector< class GridConnectionSetRepresentation * > getGridConnectionSetRepresentationSet() const
uint64_t getParentColumnIndexCount() const
void getTruncatedCellIndices(uint64_t *cellIndices) const
Proxy class for an abstract IJK grid representation. This class is semantically abstract....
Definition AbstractIjkGridRepresentation.h:34
An abstract stratigraphic organization interpretation is the main class that defines the relationship...
Definition AbstractStratigraphicOrganizationInterpretation.h:37
Proxy class for a grid connection set representation. This representation consists of a list of conne...
Definition GridConnectionSetRepresentation.h:51
This class describes the organization of geological reservoir, i.e., of an interconnected network of ...
Definition RockFluidOrganizationInterpretation.h:34
Unstructured grid representation characterized by a cell count, and potentially nothing else....
Definition UnstructuredGridRepresentation.h:30