Fesapi  2.0.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 | List of all members
resqml2_0_1::PointsProperty Class Reference

Proxy class for an points property. More...

#include <PointsProperty.h>

Inheritance diagram for resqml2_0_1::PointsProperty:
resqml2::PointsProperty resqml2::AbstractProperty common::AbstractObject

Public Member Functions

 PointsProperty (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
 
 PointsProperty (resqml2::AbstractRepresentation *rep, const std::string &guid, const std::string &title, unsigned int dimension, gsoap_eml2_3::resqml22__IndexableElement attachmentKind, resqml2::AbstractLocal3dCrs *localCrs, gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind energisticsPropertyKind=gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind__length)
 
 PointsProperty (resqml2::AbstractRepresentation *rep, const std::string &guid, const std::string &title, unsigned int dimension, gsoap_eml2_3::resqml22__IndexableElement attachmentKind, resqml2::AbstractLocal3dCrs *localCrs, eml2::PropertyKind *localPropKind)
 
 PointsProperty (gsoap_resqml2_0_1::_resqml20__PointsProperty *fromGsoap)
 
 ~PointsProperty ()=default
 
unsigned int getPatchCount () const final
 
std::string pushBackRefToExistingDataset (eml2::AbstractHdfProxy *proxy, const std::string &datasetName="") final
 
gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind getEnergisticsPropertyKind () const
 
std::string getXmlNamespace () const final
 
- Public Member Functions inherited from resqml2::PointsProperty
uint64_t getXyzPointCountOfPatch (unsigned int patchIndex) const
 
uint64_t getXyzPointCountOfAllPatches () const
 
void getXyzPointsOfPatch (unsigned int patchIndex, double *xyzPoints) const
 Gets all the xyz points of a particular patch of this property. xyz points are given in the local CRS. More...
 
void getXyzPointsOfPatchInGlobalCrs (unsigned int patchIndex, double *xyzPoints) const
 Gets all the xyz points of a particular patch of this property. xyz points are given in the global CRS. More...
 
void getXyzPointsOfAllPatches (double *xyzPoints) const
 Gets all the xyz points of all patches of this property. xyz points are given in the local CRS. More...
 
void getXyzPointsOfAllPatchesInGlobalCrs (double *xyzPoints) const
 
void pushBackArray1dOfXyzPoints (const double *xyzPoints, uint64_t pointCount, eml2::AbstractHdfProxy *proxy=nullptr)
 Adds a 1d array of points (in local CRS) to the property. More...
 
void pushBackArray2dOfXyzPoints (const double *xyzPoints, uint64_t pointCountInFastestDim, uint64_t pointCountInSlowestDim, eml2::AbstractHdfProxy *proxy=nullptr)
 Adds a 2d array of points (in local CRS) to the property. More...
 
void pushBackArray3dOfXyzPoints (const double *xyzPoints, uint64_t pointCountInFastestDim, uint64_t pointCountInMiddleDim, uint64_t pointCountInSlowestDim, eml2::AbstractHdfProxy *proxy=nullptr)
 Adds a 3d array of points (in local CRS) to the property. More...
 
void pushBackArrayOfXyzPoints (double const *xyzPoints, unsigned long long const *pointCountByDimension, unsigned int numArrayDimensions, eml2::AbstractHdfProxy *proxy=nullptr)
 Adds an nd array of points (in local CRS) to the property. More...
 
bool validatePropertyKindAssociation (eml2::PropertyKind *) final
 
bool validatePropertyKindAssociation (gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind) final
 
std::string getXmlTag () const final
 
- Public Member Functions inherited from resqml2::AbstractProperty
virtual ~AbstractProperty ()=default
 
void setRepresentation (AbstractRepresentation *rep)
 
common::DataObjectReference getRepresentationDor () const
 
AbstractRepresentationgetRepresentation () const
 
unsigned int getElementCountPerValue () const
 
gsoap_eml2_3::resqml22__IndexableElement getAttachmentKind () const
 
common::AbstractObject::hdfDatatypeEnum getValuesHdfDatatype () const
 
unsigned int getValuesCountOfPatch (unsigned int patchIndex) const
 
unsigned int getValuesCountOfDimensionOfPatch (unsigned int dimIndex, unsigned int patchIndex) const
 
unsigned int getDimensionsCountOfPatch (unsigned int patchIndex) const
 
std::vector< resqml2::PropertySet * > getPropertySets () const
 
unsigned int getPropertySetCount () const
 
resqml2::PropertySetgetPropertySet (unsigned int index) const
 
void setLocalCrs (class AbstractLocal3dCrs *crs)
 
class AbstractLocal3dCrsgetLocalCrs () const
 
common::DataObjectReference getLocalCrsDor () const
 
bool hasRealizationIndices () const
 
std::vector< unsigned int > getRealizationIndices () const
 
void setRealizationIndices (uint64_t startRealizationIndex, uint64_t countRealizationIndices)
 
void setRealizationIndices (const std::vector< unsigned int > &realizationIndices, eml2::AbstractHdfProxy *hdfProxy=nullptr)
 Sets the realization indices of this property. More...
 
void setTimeSeries (eml2::TimeSeries *ts)
 
eml2::TimeSeriesgetTimeSeries () const
 
common::DataObjectReference getTimeSeriesDor () const
 
void setTimeIndices (uint64_t startTimeIndex, uint64_t countTimeIndices, eml2::TimeSeries *ts, bool useInterval=false)
 Sets the timestamps of this property by means of an index in a time series. More...
 
unsigned int getTimeIndexStart () const
 
unsigned int getTimeIndicesCount () const
 
bool useInterval () const
 
bool isAssociatedToOneStandardEnergisticsPropertyKind () const
 
std::string getPropertyKindDescription () const
 
std::string getPropertyKindAsString () const
 
std::string getPropertyKindParentAsString () const
 
void setPropertyKind (eml2::PropertyKind *propKind)
 
common::DataObjectReference getPropertyKindDor () const
 
eml2::PropertyKindgetPropertyKind () const
 
bool validate ()
 
- 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)
 
void setGsoapProxy (gsoap_resqml2_0_1::eml20__AbstractCitedDataObject *gsoapProxy)
 
void setGsoapProxy (gsoap_eml2_1::eml21__AbstractObject *gsoapProxy)
 
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * getEml20GsoapProxy () const
 
gsoap_eml2_1::eml21__AbstractObject * getEml21GsoapProxy () const
 
gsoap_eml2_2::eml22__AbstractObject * getEml22GsoapProxy () const
 
void setGsoapProxy (gsoap_eml2_2::eml22__AbstractObject *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_1::eml21__DataObjectReference * newEmlReference () const
 
gsoap_eml2_2::eml22__DataObjectReference * newEml22Reference () 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::DataObjectRepositorygetRepository () 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)
 
unsigned int getAliasCount () const
 
std::string getAliasAuthorityAtIndex (unsigned int index) const
 
std::string getAliasTitleAtIndex (unsigned int index) const
 
std::vector< eml2::Activity * > getActivitySet () const
 
unsigned int getActivityCount () const
 
eml2::ActivitygetActivity (unsigned int 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
 

Static Public Attributes

static const char * XML_NS
 
- Static Public Attributes inherited from resqml2::PointsProperty
static const char * XML_TAG
 

Additional Inherited Members

- Public Types inherited from common::AbstractObject
enum  hdfDatatypeEnum {
  UNKNOWN = 0 , DOUBLE = 1 , FLOAT = 2 , LONG_64 = 3 ,
  ULONG_64 = 4 , INT = 5 , UINT = 6 , SHORT = 7 ,
  USHORT = 8 , CHAR = 9 , UCHAR = 10
}
 
- Static Public Member Functions inherited from common::AbstractObject
static void setFormat (const std::string &vendor, const std::string &applicationName, const std::string &applicationVersionNumber)
 

Detailed Description

Proxy class for an points property.

Constructor & Destructor Documentation

◆ PointsProperty() [1/4]

resqml2_0_1::PointsProperty::PointsProperty ( gsoap_resqml2_0_1::eml20__DataObjectReference *  partialObject)
inline

Only to be used in partial transfer context

Parameters
[in,out]partialObjectIf non-null, the partial object.

◆ PointsProperty() [2/4]

resqml2_0_1::PointsProperty::PointsProperty ( resqml2::AbstractRepresentation rep,
const std::string &  guid,
const std::string &  title,
unsigned int  dimension,
gsoap_eml2_3::resqml22__IndexableElement  attachmentKind,
resqml2::AbstractLocal3dCrs localCrs,
gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind  energisticsPropertyKind = gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind__length 
)

Creates a discrete property which is of a well known Energistics property kind.

Exceptions
std::invalid_argumentIf rep is null.
Parameters
[in]repThe representation on which this property is attached to. It cannot be null.
guidThe guid to set to the property. If empty then a new guid will be generated.
titleThe title to set to the property. If empty then "unknown" title will be set.
dimensionThe dimension of each value of this property. Dimension is 1 for a scalar property.
attachmentKindThe topological element on which the property values are attached to.
localCrsThe local CRS where the points are defined.
energisticsPropertyKindThe property kind of these property values which must be defined in the standard Energistics property type dictionary. Defatul is a length kind

◆ PointsProperty() [3/4]

resqml2_0_1::PointsProperty::PointsProperty ( resqml2::AbstractRepresentation rep,
const std::string &  guid,
const std::string &  title,
unsigned int  dimension,
gsoap_eml2_3::resqml22__IndexableElement  attachmentKind,
resqml2::AbstractLocal3dCrs localCrs,
eml2::PropertyKind localPropKind 
)

Creates a discrete property which is of a local property kind.

Exceptions
std::invalid_argumentIf or localPropKind is null.
Parameters
[in]repThe representation on which this property is attached to. It cannot be null.
guidThe guid to set to the property. If empty then a new guid will be generated.
titleThe title to set to the property. If empty then "unknown" title will be set.
dimensionThe dimension of each value of this property. Dimension is 1 for a scalar property.
attachmentKindThe topological element on which the property values are attached to.
localCrsThe local CRS where the points are defined.
[in]localPropKindThe property kind of these property values which must be defined in the EPC document as a local property kind. It cannot be null.

◆ PointsProperty() [4/4]

resqml2_0_1::PointsProperty::PointsProperty ( gsoap_resqml2_0_1::_resqml20__PointsProperty *  fromGsoap)
inline

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

Parameters
[in,out]fromGsoapIf non-null, from gsoap.

◆ ~PointsProperty()

resqml2_0_1::PointsProperty::~PointsProperty ( )
virtualdefault

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

Reimplemented from resqml2::PointsProperty.

Member Function Documentation

◆ getEnergisticsPropertyKind()

gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind resqml2_0_1::PointsProperty::getEnergisticsPropertyKind ( ) const

Gets the Energistics property kind which is associated to this intance

Exceptions
std::invalid_argumentIf the property kind of this property is not an Energistics one.
Returns
The Energistics property kind.

◆ getPatchCount()

unsigned int resqml2_0_1::PointsProperty::getPatchCount ( ) const
finalvirtual

Gets the number of patches in this values property. It should be the same count as the patch count of the associated representation.

Exceptions
std::out_of_rangeIf the patch count is strictly greater than unsigned int max value.
Returns
The patch count.

Implements resqml2::AbstractProperty.

◆ getXmlNamespace()

std::string resqml2_0_1::PointsProperty::getXmlNamespace ( ) const
inlinefinalvirtual

Get the standard XML namespace for serializing this data object.

Implements common::AbstractObject.

◆ pushBackRefToExistingDataset()

std::string resqml2_0_1::PointsProperty::pushBackRefToExistingDataset ( eml2::AbstractHdfProxy proxy,
const std::string &  datasetName = "" 
)
finalvirtual

Pushes back a reference to an existing (or a "to exist") HDF dataset in a particular HDF proxy. The reason can be that the values already exist in an external file (only HDF5 for now) or that the writing of the values in the external file is differed in time.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
[in]proxyThe HDF5 proxy where the values are already or will be stored. If nullptr, then a default HDF proxy must be defined in the repository.
datasetName(Optional) The HDF5 dataset name where the values are stored. If empty, the dataset will be named the same as the dataset naming convention of fesapi : getHdfGroup() + "/points_patch" + patchIndex
Returns
The name of the referenced HDF5 dataset.

Implements resqml2::PointsProperty.

Member Data Documentation

◆ XML_NS

const char* resqml2_0_1::PointsProperty::XML_NS
static

The standard XML namespace for serializing this data object.


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