Fesapi  0.13.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 | Protected Member Functions | List of all members
RESQML2_NS::SubRepresentation Class Referenceabstract
Inheritance diagram for RESQML2_NS::SubRepresentation:
RESQML2_NS::AbstractRepresentation COMMON_NS::AbstractObject RESQML2_0_1_NS::SubRepresentation

Public Member Functions

virtual ~SubRepresentation ()
 
virtual std::string getXmlTag () const
 
virtual indexableElement getElementKindOfPatch (const unsigned int &patchIndex, const unsigned int &elementIndicesIndex) const =0
 
virtual ULONG64 getElementCountOfPatch (const unsigned int &patchIndex) const =0
 
virtual void getElementIndicesOfPatch (const unsigned int &patchIndex, const unsigned int &elementIndicesIndex, ULONG64 *elementIndices) const =0
 
virtual void getSupportingRepresentationIndicesOfPatch (const unsigned int &patchIndex, short *supportingRepresentationIndices) const =0
 
virtual bool areElementIndicesPairwise (const unsigned int &patchIndex) const =0
 
virtual bool areElementIndicesBasedOnLattice (const unsigned int &patchIndex, const unsigned int &elementIndicesIndex=0) const =0
 
virtual LONG64 getLatticeElementIndicesStartValue (const unsigned int &patchIndex, const unsigned int &elementIndicesIndex=0) const =0
 
virtual unsigned int getLatticeElementIndicesDimensionCount (const unsigned int &patchIndex, const unsigned int &elementIndicesIndex=0) const =0
 
virtual LONG64 getLatticeElementIndicesOffsetValue (const unsigned int &latticeDimensionIndex, const unsigned int &patchIndex, const unsigned int &elementIndicesIndex=0) const =0
 
virtual ULONG64 getLatticeElementIndicesOffsetCount (const unsigned int &latticeDimensionIndex, const unsigned int &patchIndex, const unsigned int &elementIndicesIndex=0) const =0
 
virtual void pushBackSubRepresentationPatch (const gsoap_resqml2_0_1::resqml2__IndexableElements &elementKind, const ULONG64 &originIndex, const unsigned int &elementCountInSlowestDimension, const unsigned int &elementCountInMiddleDimension, const unsigned int &elementCountInFastestDimension)=0
 
virtual void pushBackSubRepresentationPatch (const gsoap_resqml2_0_1::resqml2__IndexableElements &elementKind, const ULONG64 &elementCount, ULONG64 *elementIndices, COMMON_NS::AbstractHdfProxy *proxy, short *supportingRepIndices=nullptr)=0
 
virtual void pushBackSubRepresentationPatch (const gsoap_resqml2_0_1::resqml2__IndexableElements &elementKind0, const gsoap_resqml2_0_1::resqml2__IndexableElements &elementKind1, const ULONG64 &elementCount, ULONG64 *elementIndices0, ULONG64 *elementIndices1, COMMON_NS::AbstractHdfProxy *proxy)=0
 
virtual void pushBackRefToExistingDataset (const gsoap_resqml2_0_1::resqml2__IndexableElements &elementKind, const ULONG64 &elementCount, const std::string &elementDataset, const LONG64 &nullValue, COMMON_NS::AbstractHdfProxy *proxy, const std::string &supportingRepDataset="")=0
 
ULONG64 getXyzPointCountOfPatch (const unsigned int &patchIndex) const
 
void getXyzPointsOfPatch (const unsigned int &patchIndex, double *xyzPoints) const
 
virtual unsigned int getPatchCount () const =0
 
void pushBackSupportingRepresentation (AbstractRepresentation *supportingRep)
 
virtual unsigned int getSupportingRepresentationCount () const =0
 
AbstractRepresentationgetSupportingRepresentation (unsigned int index) const
 
virtual gsoap_resqml2_0_1::eml20__DataObjectReference * getSupportingRepresentationDor (unsigned int index) const =0
 
std::string getSupportingRepresentationUuid (unsigned int index) const
 
std::string getSupportingRepresentationTitle (unsigned int index) const
 
std::string getSupportingRepresentationContentType () const
 
- Public Member Functions inherited from RESQML2_NS::AbstractRepresentation
virtual ~AbstractRepresentation ()
 
class AbstractLocal3dCrsgetLocalCrs () const
 
virtual gsoap_resqml2_0_1::eml20__DataObjectReference * getLocalCrsDor () const
 
std::string getLocalCrsUuid () const
 
COMMON_NS::AbstractHdfProxygetHdfProxy () const
 
virtual std::string getHdfProxyUuid () const =0
 
const std::vector< class AbstractProperty * > & getPropertySet () const
 
std::vector< class AbstractValuesProperty * > getValuesPropertySet () const
 
unsigned int getValuesPropertyCount () const
 
class AbstractValuesPropertygetValuesProperty (const unsigned int &index) const
 
void setInterpretation (class AbstractFeatureInterpretation *interp)
 
class AbstractFeatureInterpretationgetInterpretation () const
 
gsoap_resqml2_0_1::eml20__DataObjectReference * getInterpretationDor () const
 
std::string getInterpretationUuid () const
 
std::string getInterpretationContentType () const
 
void pushBackSubRepresentation (class SubRepresentation *subRep)
 
std::vector< SubRepresentation * > getSubRepresentationSet () const
 
unsigned int getSubRepresentationCount () const
 
SubRepresentationgetSubRepresentation (const unsigned int &index) const
 
std::vector< SubRepresentation * > getFaultSubRepresentationSet () const
 
unsigned int getFaultSubRepresentationCount () const
 
SubRepresentationgetFaultSubRepresentation (const unsigned int &index) const
 
ULONG64 getXyzPointCountOfAllPatches () const
 
void getXyzPointsOfPatchInGlobalCrs (const unsigned int &patchIndex, double *xyzPoints) const
 
void getXyzPointsOfAllPatches (double *xyzPoints) const
 
void getXyzPointsOfAllPatchesInGlobalCrs (double *xyzPoints) const
 
AbstractRepresentationgetSeismicSupportOfPatch (const unsigned int &patchIndex) const
 
std::set< AbstractRepresentation * > getAllSeismicSupport () const
 
void pushBackIntoRepresentationSet (class RepresentationSetRepresentation *repSet, bool xml=true)
 
ULONG64 getRepresentationSetRepresentationCount () const
 
RepresentationSetRepresentationgetRepresentationSetRepresentation (const ULONG64 &index) const
 
void setHdfProxy (COMMON_NS::AbstractHdfProxy *proxy)
 
void addSeismic3dCoordinatesToPatch (const unsigned int patchIndex, double *inlines, double *crosslines, const unsigned int &pointCount, RESQML2_NS::AbstractRepresentation *seismicSupport, COMMON_NS::AbstractHdfProxy *proxy)
 
void addSeismic3dCoordinatesToPatch (const unsigned int patchIndex, const double &startInline, const double &incrInline, const unsigned int &countInline, const double &startCrossline, const double &incrCrossline, const unsigned int &countCrossline, RESQML2_NS::AbstractRepresentation *seismicSupport)
 
void addSeismic2dCoordinatesToPatch (const unsigned int patchIndex, double *lineAbscissa, RESQML2_NS::AbstractRepresentation *seismicSupport, COMMON_NS::AbstractHdfProxy *proxy)
 
void getSeismicLineAbscissaOfPointsOfPatch (const unsigned int &patchIndex, double *values)
 
void getInlinesOfPointsOfPatch (const unsigned int &patchIndex, double *values)
 
void getCrosslinesOfPointsOfPatch (const unsigned int &patchIndex, double *values)
 
- Public Member Functions inherited from COMMON_NS::AbstractObject
bool isPartial () 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 getVersionString () const
 
void setTitle (const std::string &title)
 
void setEditor (const std::string &editor)
 
void setCreation (const time_t &creation)
 
void setCreation (const tm &creation)
 
void setOriginator (const std::string &originator)
 
void setDescription (const std::string &description)
 
void setLastUpdate (const time_t &lastUpdate)
 
void setLastUpdate (const tm &lastUpdate)
 
void setFormat (const std::string &format)
 
void setDescriptiveKeywords (const std::string &descriptiveKeywords)
 
void setVersionString (const std::string &versionString)
 
void setMetadata (const std::string &title, const std::string &editor, const time_t &creation, const std::string &originator, const std::string &description, const time_t &lastUpdate, const std::string &format, const std::string &descriptiveKeywords)
 
void serializeIntoStream (std::ostream *stream)
 
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * getGsoapProxy () const
 
soap * getGsoapContext () const
 
int getGsoapType () const
 
gsoap_resqml2_0_1::eml20__DataObjectReference * newResqmlReference () const
 
gsoap_eml2_1::eml21__DataObjectReference * newEmlReference () const
 
gsoap_resqml2_0_1::resqml2__ContactElementReference * newResqmlContactElementReference () const
 
COMMON_NS::EpcDocumentgetEpcDocument () const
 
virtual std::string getXmlNamespace () const
 
virtual std::string getResqmlVersion () const
 
virtual std::string getContentType () 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 (const unsigned int &index) const
 
std::string getAliasTitleAtIndex (const unsigned int &index) const
 
const std::vector< RESQML2_NS::Activity * > & getActivitySet () const
 
unsigned int getActivityCount () const
 
RESQML2_NS::ActivitygetActivity (const unsigned int &index) const
 
void pushBackExtraMetadata (const std::string &key, const std::string &value)
 
std::tr1::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 (const unsigned int &index) const
 
std::string getExtraMetadataStringValueAtIndex (const unsigned int &index) const
 

Static Public Attributes

static const char * XML_TAG = "SubRepresentation"
 
- Static Public Attributes inherited from RESQML2_NS::AbstractRepresentation
static const char * XML_TAG = "AbstractRepresentation"
 

Protected Member Functions

 SubRepresentation (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
 
 SubRepresentation (RESQML2_NS::AbstractFeatureInterpretation *interp)
 
 SubRepresentation (gsoap_resqml2_0_1::_resqml2__SubRepresentation *fromGsoap)
 
virtual void pushBackXmlSupportingRepresentation (AbstractRepresentation *supportingRep)=0
 
- Protected Member Functions inherited from RESQML2_NS::AbstractRepresentation
 AbstractRepresentation (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
 
 AbstractRepresentation (class AbstractFeatureInterpretation *interp, class AbstractLocal3dCrs *crs)
 
 AbstractRepresentation (gsoap_resqml2_0_1::resqml2__AbstractRepresentation *fromGsoap)
 
void pushBackSeismicSupport (AbstractRepresentation *seismicSupport)
 
void setXmlInterpretation (class AbstractFeatureInterpretation *interp)
 
gsoap_resqml2_0_1::resqml2__PointGeometry * createPointGeometryPatch2_0_1 (const unsigned int &patchIndex, double *points, unsigned long long *numPoints, const unsigned int &numDimensionsInArray, COMMON_NS::AbstractHdfProxy *proxy)
 
std::string getHdfProxyUuidFromPointGeometryPatch (gsoap_resqml2_0_1::resqml2__PointGeometry *patch) const
 
gsoap_resqml2_0_1::resqml2__Seismic2dCoordinates * getSeismic2dCoordinates (const unsigned int &patchIndex) const
 
gsoap_resqml2_0_1::resqml2__Seismic3dCoordinates * getSeismic3dCoordinates (const unsigned int &patchIndex) const
 
- Protected Member Functions inherited from COMMON_NS::AbstractObject
 AbstractObject ()
 Indicate whether methods update the XML (gSoap) or only the C++ classes of the API.
 
 AbstractObject (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
 
 AbstractObject (gsoap_resqml2_0_1::eml20__AbstractCitedDataObject *proxy)
 
 AbstractObject (gsoap_eml2_1::eml21__AbstractObject *proxy)
 
void initMandatoryMetadata ()
 
void setMetadata (const std::string &guid, const std::string &title, const std::string &editor, const time_t &creation, const std::string &originator, const std::string &description, const time_t &lastUpdate, const std::string &format, const std::string &descriptiveKeywords)
 
void cannotBePartial () const
 
void changeToPartialObject ()
 

Additional Inherited Members

- Public Types inherited from RESQML2_NS::AbstractRepresentation
enum  indexableElement {
  NODE = 0, EDGE = 1, FACE = 2, VOLUME = 3,
  PILLAR = 4
}
 
- Protected Types inherited from COMMON_NS::AbstractObject
enum  EmlVersion { TWO_DOT_ZERO = 0, TWO_DOT_ONE = 1 }
 
- Static Protected Member Functions inherited from COMMON_NS::AbstractObject
static void addActivityToResqmlObject (RESQML2_NS::Activity *activity, AbstractObject *resqmlObject)
 
- Protected Attributes inherited from RESQML2_NS::AbstractRepresentation
class AbstractFeatureInterpretationinterpretation
 
COMMON_NS::AbstractHdfProxyhdfProxy
 
class AbstractLocal3dCrslocalCrs
 
std::vector< SubRepresentation * > subRepresentationSet
 
std::vector< AbstractProperty * > propertySet
 
std::vector< AbstractRepresentation * > seismicSupportedRepSet
 
std::vector< class RepresentationSetRepresentation * > representationSetRepresentationSet
 
- Protected Attributes inherited from COMMON_NS::AbstractObject
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * gsoapProxy2_0_1
 
gsoap_eml2_1::eml21__AbstractObject * gsoapProxy2_1
 
COMMON_NS::EpcDocumentepcDocument
 
std::vector< RESQML2_NS::Activity * > activitySet
 
bool updateXml
 

Constructor & Destructor Documentation

RESQML2_NS::SubRepresentation::SubRepresentation ( gsoap_resqml2_0_1::eml20__DataObjectReference *  partialObject)
inlineprotected

Only to be used in partial transfer context

RESQML2_NS::SubRepresentation::SubRepresentation ( gsoap_resqml2_0_1::_resqml2__SubRepresentation *  fromGsoap)
inlineprotected

Creates an instance of this class by wrapping a gsoap instance.

virtual RESQML2_NS::SubRepresentation::~SubRepresentation ( )
inlinevirtual

Destructor does nothing since the memory is managed by the gsoap context.

Reimplemented in RESQML2_0_1_NS::SubRepresentation.

Member Function Documentation

virtual bool RESQML2_NS::SubRepresentation::areElementIndicesBasedOnLattice ( const unsigned int &  patchIndex,
const unsigned int &  elementIndicesIndex = 0 
) const
pure virtual

Check if the element indices of a particular patch are based on a lattice or not.

Parameters
elementIndicesIndexIn case of pairwise element, allow to select the first or second element indice of the pair.

Implemented in RESQML2_0_1_NS::SubRepresentation.

virtual bool RESQML2_NS::SubRepresentation::areElementIndicesPairwise ( const unsigned int &  patchIndex) const
pure virtual

Check if the element of a particular patch are pairwise or not.

Implemented in RESQML2_0_1_NS::SubRepresentation.

virtual ULONG64 RESQML2_NS::SubRepresentation::getElementCountOfPatch ( const unsigned int &  patchIndex) const
pure virtual

Get the count of the selected elements for a particular patch of this subrepresentation.

Implemented in RESQML2_0_1_NS::SubRepresentation.

virtual void RESQML2_NS::SubRepresentation::getElementIndicesOfPatch ( const unsigned int &  patchIndex,
const unsigned int &  elementIndicesIndex,
ULONG64 *  elementIndices 
) const
pure virtual

Get the indices of the selected elements for a particular patch of this subrepresentation.

Parameters
elementIndicesIndexMust be equal to 0 if the element indices are not pairwise.
elementIndicesThis array must be preallocated with getElementCountOfPatch() size.

Implemented in RESQML2_0_1_NS::SubRepresentation.

virtual indexableElement RESQML2_NS::SubRepresentation::getElementKindOfPatch ( const unsigned int &  patchIndex,
const unsigned int &  elementIndicesIndex 
) const
pure virtual

Get the kind of the selected elements for a particular patch of this subrepresentation.

Implemented in RESQML2_0_1_NS::SubRepresentation.

AbstractRepresentation * SubRepresentation::getSupportingRepresentation ( unsigned int  index) const

Get the supporting representation located at a specific index of this subrepresentation.

std::string SubRepresentation::getSupportingRepresentationContentType ( ) const

Get one of the supporting representation content type of this subrepresentation. It is assumed by fesapi taht all supporting representations must have the same type. This is a current limitation of fesapi compared the Resqml datamodel.

virtual unsigned int RESQML2_NS::SubRepresentation::getSupportingRepresentationCount ( ) const
pure virtual

Get the count of the supporting representations of this subrepresentation.

Implemented in RESQML2_0_1_NS::SubRepresentation.

virtual gsoap_resqml2_0_1::eml20__DataObjectReference* RESQML2_NS::SubRepresentation::getSupportingRepresentationDor ( unsigned int  index) const
pure virtual

Get the supporting representation dor located at a specific index of this subrepresentation.

Implemented in RESQML2_0_1_NS::SubRepresentation.

virtual void RESQML2_NS::SubRepresentation::getSupportingRepresentationIndicesOfPatch ( const unsigned int &  patchIndex,
short *  supportingRepresentationIndices 
) const
pure virtual

Get the indices of the supporting representations of the selected elements for a particular patch of this subrepresentation.

Parameters
supportingRepresentationIndicesThis array must be preallocated with getElementCountOfPatch() size.

Implemented in RESQML2_0_1_NS::SubRepresentation.

std::string SubRepresentation::getSupportingRepresentationTitle ( unsigned int  index) const

Get one of the supporting representation title of this subrepresentation.

std::string SubRepresentation::getSupportingRepresentationUuid ( unsigned int  index) const

Get one of the supporting representation uuid of this subrepresentation.

virtual std::string RESQML2_NS::SubRepresentation::getXmlTag ( ) const
inlinevirtual

Get the XML tag for the XML serialization of this instance

Implements COMMON_NS::AbstractObject.

ULONG64 SubRepresentation::getXyzPointCountOfPatch ( const unsigned int &  patchIndex) const
virtual

Get the xyz point count in a given patch.

Implements RESQML2_NS::AbstractRepresentation.

void SubRepresentation::getXyzPointsOfPatch ( const unsigned int &  patchIndex,
double *  xyzPoints 
) const
virtual

Get all the XYZ points of a particular patch of this representation. XYZ points are given in the local CRS.

Parameters
xyzPointsA linearized 2d array where the first (quickest) dimension is coordinate dimension (XYZ) and second dimension is vertex dimension. It must be pre allocated.

Implements RESQML2_NS::AbstractRepresentation.

virtual void RESQML2_NS::SubRepresentation::pushBackRefToExistingDataset ( const gsoap_resqml2_0_1::resqml2__IndexableElements &  elementKind,
const ULONG64 &  elementCount,
const std::string &  elementDataset,
const LONG64 &  nullValue,
COMMON_NS::AbstractHdfProxy proxy,
const std::string &  supportingRepDataset = "" 
)
pure virtual

Push back a new patch (without pairwise elements) in the subrepresentation where the indice values have not to be written in the HDF file. The reason can be that the indice values already exist in an external file (only HDF5 for now) or that the writing of these indice values in the external file is defered in time.

Parameters
elementKindThe kind of (indexable) elements which constitutes the subrepresentation.
elementCountThe count of elements which constitutes the subrepresentation.
elementDatasetThe HDF5 dataset name where the element indices are stored. If empty, the dataset will be named the same as the dataset naming convention of the fesapi :"/RESQML/" + subRep->uuid + "/subrepresentation_elementIndices0_patch" + patchIndex;
nullValueThe null value which has been chosen in the referenced hdf dataset.
hdfProxyThe HDF5 proxy where the values are already or will be stored.
supportingRepDatasetThe HDF5 dataset name where the element indices are stored. If empty, it won't be exported any information about suppporting rep relying on the fact there is only one suppporting rep for this whole patch.

Implemented in RESQML2_0_1_NS::SubRepresentation.

virtual void RESQML2_NS::SubRepresentation::pushBackSubRepresentationPatch ( const gsoap_resqml2_0_1::resqml2__IndexableElements &  elementKind,
const ULONG64 &  originIndex,
const unsigned int &  elementCountInSlowestDimension,
const unsigned int &  elementCountInMiddleDimension,
const unsigned int &  elementCountInFastestDimension 
)
pure virtual

Push back a new patch in the subrepresentation which is based on a lattice definition.

Parameters
elementKindThe kind of (indexable) elements which constitutes the subrepresentation.
elementCountInSlowestDimensionCommonly in K dimensionn.
elementCountInMiddleDimensionCommonly in J dimensionn.
elementCountInFastestDimensionCommonly in I dimension.

Implemented in RESQML2_0_1_NS::SubRepresentation.

virtual void RESQML2_NS::SubRepresentation::pushBackSubRepresentationPatch ( const gsoap_resqml2_0_1::resqml2__IndexableElements &  elementKind,
const ULONG64 &  elementCount,
ULONG64 *  elementIndices,
COMMON_NS::AbstractHdfProxy proxy,
short *  supportingRepIndices = nullptr 
)
pure virtual

Push back a new patch in the subrepresentation.

Parameters
elementKindThe kind of (indexable) elements which constitutes the subrepresentation.
elementCountThe count of elements which constitutes the subrepresentation.
elementIndicesThe indices of the elements of the instance in the supporting representation.
proxyThe HDF proxy where the numerical values (indices) are stored.
supportingRepIndicesThe indices of the supporting represenation for each elment in the supporting representation. The count must be elementCount.

Implemented in RESQML2_0_1_NS::SubRepresentation.

virtual void RESQML2_NS::SubRepresentation::pushBackSubRepresentationPatch ( const gsoap_resqml2_0_1::resqml2__IndexableElements &  elementKind0,
const gsoap_resqml2_0_1::resqml2__IndexableElements &  elementKind1,
const ULONG64 &  elementCount,
ULONG64 *  elementIndices0,
ULONG64 *  elementIndices1,
COMMON_NS::AbstractHdfProxy proxy 
)
pure virtual

Push back a new patch in the subrepresentation which is constituted by means of pairwise elements.

Parameters
elementKind0The kind of (indexable) elements which constitutes the first part of the pair of elements of the subrepresentation.
elementKind1The kind of (indexable) elements which constitutes the second part of the pair of elements of the subrepresentation.
elementCountThe count of elements which constitutes the subrepresentation.
elementIndices0The indices of the first part of the element pair in the supporting representation.
elementIndices1The indices of the second part of the element pair in the supporting representation.
proxyThe HDF proxy where the numerical values (indices) are stored.

Implemented in RESQML2_0_1_NS::SubRepresentation.

void SubRepresentation::pushBackSupportingRepresentation ( AbstractRepresentation supportingRep)

Push back a representation which is one of the support of this representation. And push back this representation as a subrepresentation of the representation as well.


The documentation for this class was generated from the following files: