Fesapi 2.9.0.1
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
|
A blocked wellbore representation. This is the information that allows you to locate, on one or several grids (existing or planned), the intersection of volume (cells) and surface (faces) elements with a wellbore trajectory (existing or planned). More...
#include <BlockedWellboreRepresentation.h>
Public Member Functions | |
virtual | ~BlockedWellboreRepresentation ()=default |
virtual void | setIntervalGridCells (int8_t const *gridIndices, int8_t gridIndicesNullValue, int64_t const *cellIndices, int8_t const *localFacePairPerCellIndices, int8_t localFacePairPerCellIndicesNullValue, eml2 ::AbstractHdfProxy *hdfProxy=nullptr)=0 |
virtual uint64_t | getCellCount () const =0 |
virtual int8_t | getGridIndices (int8_t *gridIndices) const =0 |
virtual int64_t | getCellIndices (int64_t *cellIndices) const =0 |
virtual int8_t | getLocalFacePairPerCellIndices (int8_t *localFacePairPerCellIndices) const =0 |
virtual void | pushBackSupportingGridRepresentation (resqml2 ::AbstractGridRepresentation *supportingGridRep)=0 |
virtual uint64_t | getSupportingGridRepresentationCount () const =0 |
resqml2::AbstractGridRepresentation * | getSupportingGridRepresentation (uint64_t index) const |
virtual common::DataObjectReference | getSupportingGridRepresentationDor (uint64_t index) const =0 |
virtual std::string | getXmlTag () const override |
Public Member Functions inherited from resqml2::WellboreFrameRepresentation | |
~WellboreFrameRepresentation ()=default | |
void | setMdValues (double const *mdValues, uint64_t mdValueCount, eml2 ::AbstractHdfProxy *proxy=nullptr) |
void | setMdValues (double firstMdValue, double incrementMdValue, unsigned int mdValueCount) |
bool | areMdValuesRegularlySpaced () const |
double | getMdConstantIncrementValue () const |
double | getMdFirstValue () const |
unsigned int | getMdValuesCount () const |
uint64_t | getXyzPointCountOfPatch (unsigned int patchIndex) const override |
void | getXyzPointsOfPatch (unsigned int patchIndex, double *xyzPoints) const override |
common::AbstractObject::numericalDatatypeEnum | getMdHdfDatatype () const |
void | getMdAsDoubleValues (double *values) const |
void | getMdAsFloatValues (float *values) const |
common::DataObjectReference | getWellboreTrajectoryDor () const |
class WellboreTrajectoryRepresentation * | getWellboreTrajectory () const |
common::DataObjectReference | getLocalCrsDor (unsigned int patchIndex) const override |
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 | getPatchCount () const final |
Public Member Functions inherited from resqml2::AbstractRepresentation | |
virtual | ~AbstractRepresentation ()=default |
class AbstractLocal3dCrs * | getLocalCrs (unsigned int 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 |
Static Public Attributes | |
static constexpr char const * | XML_TAG = "BlockedWellboreRepresentation" |
Static Public Attributes inherited from resqml2::AbstractRepresentation | |
static constexpr char const * | XML_TAG = "AbstractRepresentation" |
A blocked wellbore representation. This is the information that allows you to locate, on one or several grids (existing or planned), the intersection of volume (cells) and surface (faces) elements with a wellbore trajectory (existing or planned).
|
virtualdefault |
Destructor does nothing since the memory is managed by the gSOAP context.
|
pure virtual |
Gets the cell count, that is to say the number of non-null entries in the grid indices array.
|
pure virtual |
For each interval of the wellbore frame, gets the index of the cell it is associated to.
std::range_error | If the cell indices are stored in an integer constant array and if the the constant value is strictly superior than int64_t maximum value. |
std::logic_error | If the cell indices are neither stored in a HDF5 integer array nor in an integer constant array. |
[out] | gridIndices | An array for receiving the cell indices. The size of this array is the interval count of the wellbore frame representation. |
cellIndices
in order to indicate that an interval does not correspond to any intersected cell.
|
pure virtual |
For each interval of the wellbore frame, gets the index of the grid it is associated to.
std::range_error | If the grid indices are stored in an integer constant array and if the the constant value is strictly superior tha char maximum value. |
std::logic_error | If the grid indices are neither stored in a HDF5 integer array nor in an integer constant array. |
[out] | gridIndices | An array for receiving the grids indices. The size of this array is the interval count of the wellbore frame representation. The associated grids (and there indices) are defined using pushBackSupportingGridRepresentation() method. |
gridIndices
in order to indicate that an interval does not correspond to any intersected grid.
|
pure virtual |
For each interval of the wellbore frame, gets the index of the entry and exit local face it is associated to.
std::range_error | If the local face indices are stored in an integer constant array and if the the constant value is strictly superior than char maximum value. |
std::logic_error | If the local face indices are neither stored in a HDF5 integer array nor in an integer constant array. |
[out] | gridIndices | An array for receiving the local face indices. The size of this array is twice the interval count of the wellbore frame representation. |
localFacePairPerCellIndices
in order to indicate that no face is intersected. resqml2::AbstractGridRepresentation * resqml2::BlockedWellboreRepresentation::getSupportingGridRepresentation | ( | uint64_t | index | ) | const |
Gets the supporting grid representation located at a specific index of this blocked wellbore representation.
std::out_of_range | If index >= getSupportingGridRepresentationCount(). |
index | Zero-based index of the supporting grid representation we look for. |
index
.
|
pure virtual |
Gets the count of supporting grid representations of this blocked wellbore representation.
std::range_error | If the count of supporting grid representations is strictly greater than unsigned int max. |
|
pure virtual |
Get the DOR of the supporting grid representation located at a specific index of this blocked wellbore representation.
std::out_of_range | If index >= getSupportingGridRepresentationCount(). |
index | Zero-based index of the supporting grid representation we look for. |
index
.
|
pure virtual |
Pushes back a grid representation which is one of the support of this representation.
std::invalid_argument | If supportingGridRep == nullptr . |
[in] | supportingGridRep | The supporting grid representation to push back. |
|
pure virtual |
Sets all information about the intersected grid cells. You must first provide MD values of the frame before to use this method.
std::invalid_argument | If gridIndices , cellIndices , localFacePairPerCellIndices or hdfProxy is nullptr . |
std::logic_error | If MD values of the frame have not been provided before using this method. |
gridIndices | An array containing for each interval of the wellbore frame, the index of the grid it is associated to. The size of this array is the interval count of the wellbore frame representation. cellCount must equal the number of non- null entries in this array. The associated grids (and there indices) are defined using pushBackSupportingGridRepresentation() method. | |
gridIndicesNullValue | The null value used in gridIndices in order to indicate that an interval does not correspond to any intersected grid. Generally -1. | |
cellIndices | An array containing the intersected cell index for each entry in gridIndices . The size of this array is the interval count of the wellbore frame representation. The null value will be set to gridIndicesNullValue which already informs about the presence or not of a cell. | |
localFacePairPerCellIndices | An array containing, for each cell, the entry and exit intersection faces of the trajectory in the cell. The array dimension must equal 2 * intervalCount . | |
localFacePairPerCellIndicesNullValue | The null value used in localFacePerCellIndices in order to indicate that it corresponds to a missing intersection, e.g., when a trajectory originates or terminates within a cell. | |
[in,out] | hdfProxy | The HDF proxy where the numerical values will be stored. If set to nullptr, the default HdfProxy will be used instead. |
|
staticconstexpr |
The standard XML tag without XML namespace for serializing this data object.