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 | List of all members
resqml2::AbstractValuesProperty Class Reference

Proxy class for an abstract values property. More...

#include <AbstractValuesProperty.h>

Inheritance diagram for resqml2::AbstractValuesProperty:
resqml2::AbstractProperty common::AbstractObject resqml2::CategoricalProperty resqml2::CommentProperty resqml2::ContinuousProperty resqml2::DiscreteProperty resqml2_0_1::CategoricalProperty resqml2_2::CategoricalProperty resqml2_0_1::CommentProperty resqml2_2::CommentProperty resqml2_0_1::ContinuousProperty resqml2_2::ContinuousProperty resqml2_0_1::DiscreteProperty resqml2_2::DiscreteProperty

Public Member Functions

virtual ~AbstractValuesProperty ()=default
 
unsigned int getPatchCount () const final
 
void pushBackFacet (gsoap_eml2_3::eml23__FacetKind facet, const std::string &facetValue)
 
unsigned int getFacetCount () const
 
gsoap_eml2_3::eml23__FacetKind getFacetKind (unsigned int index) const
 
std::string getFacetValue (unsigned int index) const
 
void pushBackLongHdf5Array1dOfValues (const int64_t *values, uint64_t valueCount, eml2::AbstractHdfProxy *proxy, int64_t nullValue)
 Adds a 1d array of explicit long values to the property values. More...
 
void pushBackIntHdf5Array1dOfValues (const int *values, uint64_t valueCount, eml2::AbstractHdfProxy *proxy, int nullValue)
 
void pushBackShortHdf5Array1dOfValues (const short *values, uint64_t valueCount, eml2::AbstractHdfProxy *proxy, short nullValue)
 
void pushBackCharHdf5Array1dOfValues (const char *values, uint64_t valueCount, eml2::AbstractHdfProxy *proxy, char nullValue)
 
void pushBackLongHdf5Array2dOfValues (const int64_t *values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy, int64_t nullValue)
 Adds a 2d array of explicit long values to the property values. More...
 
void pushBackIntHdf5Array2dOfValues (const int *values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy, int nullValue)
 
void pushBackShortHdf5Array2dOfValues (const short *values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy, short nullValue)
 
void pushBackUShortHdf5Array2dOfValues (const unsigned short *values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy, unsigned short nullValue)
 
void pushBackCharHdf5Array2dOfValues (const char *values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy, char nullValue)
 
void pushBackLongHdf5Array3dOfValues (const int64_t *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy, int64_t nullValue)
 Adds a 3d array of explicit long values to the property values. More...
 
void pushBackIntHdf5Array3dOfValues (const int *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy, int nullValue)
 
void pushBackShortHdf5Array3dOfValues (const short *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy, short nullValue)
 
void pushBackUShortHdf5Array3dOfValues (const unsigned short *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy, unsigned short nullValue)
 
void pushBackCharHdf5Array3dOfValues (const char *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy, char nullValue)
 
virtual void pushBackLongHdf5ArrayOfValues (const int64_t *values, unsigned long long *numValues, unsigned int numDimensionsInArray, eml2::AbstractHdfProxy *proxy, int64_t nullValue)
 Adds an nd array of explicit long values to the property values. More...
 
virtual void pushBackIntHdf5ArrayOfValues (const int *values, unsigned long long *numValues, unsigned int numDimensionsInArray, eml2::AbstractHdfProxy *proxy, int nullValue)
 
virtual void pushBackShortHdf5ArrayOfValues (const short *values, unsigned long long *numValues, unsigned int numDimensionsInArray, eml2::AbstractHdfProxy *proxy, short nullValue)
 
virtual void pushBackUShortHdf5ArrayOfValues (const unsigned short *values, unsigned long long *numValues, unsigned int numDimensionsInArray, eml2::AbstractHdfProxy *proxy, unsigned short nullValue)
 
virtual void pushBackCharHdf5ArrayOfValues (const char *values, unsigned long long *numValues, unsigned int numDimensionsInArray, eml2::AbstractHdfProxy *proxy, char nullValue)
 
virtual std::string pushBackRefToExistingIntegerDataset (eml2::AbstractHdfProxy *hdfProxy, const std::string &dataset="", int64_t nullValue=(std::numeric_limits< int64_t >::max)())
 
int64_t getLongValuesOfPatch (unsigned int patchIndex, int64_t *values) const
 
int64_t getNullValueOfPatch (unsigned int patchIndex) const
 
uint64_t getULongValuesOfPatch (unsigned int patchIndex, uint64_t *values) const
 
int getIntValuesOfPatch (unsigned int patchIndex, int *values) const
 
unsigned int getUIntValuesOfPatch (unsigned int patchIndex, unsigned int *values) const
 
short getShortValuesOfPatch (unsigned int patchIndex, short *values) const
 
unsigned short getUShortValuesOfPatch (unsigned int patchIndex, unsigned short *values) const
 
char getCharValuesOfPatch (unsigned int patchIndex, char *values) const
 
unsigned char getUCharValuesOfPatch (unsigned int patchIndex, unsigned char *values) const
 
void pushBackLongHdf5ArrayOfValues (unsigned long long *numValues, unsigned int numArrayDimensions, int64_t nullValue=(std::numeric_limits< int64_t >::max)(), eml2::AbstractHdfProxy *proxy=nullptr)
 
void pushBackLongHdf5Array3dOfValues (uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, int64_t nullValue=(std::numeric_limits< int64_t >::max)(), eml2::AbstractHdfProxy *proxy=nullptr)
 
void setValuesOfLongHdf5Array3dOfValues (int64_t *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, uint64_t offsetInFastestDim, uint64_t offsetInMiddleDim, uint64_t offsetInSlowestDim, eml2::AbstractHdfProxy *proxy=nullptr, unsigned int patchIndex=(std::numeric_limits< unsigned int >::max)())
 
void setValuesOfLongHdf5ArrayOfValues (int64_t *values, unsigned long long const *numValues, unsigned long long const *offsetValues, unsigned int numArrayDimensions, eml2::AbstractHdfProxy *proxy=nullptr, unsigned int patchIndex=(std::numeric_limits< unsigned int >::max)())
 
void getLongValuesOfPatch (unsigned int patchIndex, int64_t *values, unsigned long long const *numValuesInEachDimension, unsigned long long const *offsetInEachDimension, unsigned int numArrayDimensions) const
 
void getLongValuesOf3dPatch (unsigned int patchIndex, int64_t *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, uint64_t offsetInFastestDim, uint64_t offsetInMiddleDim, uint64_t offsetInSlowestDim) const
 
int getIntValuesOfPatch (unsigned int patchIndex, int *values, unsigned long long *numValuesInEachDimension, unsigned long long *offsetInEachDimension, unsigned int numArrayDimensions) const
 
void getIntValuesOf3dPatch (unsigned int patchIndex, int *values, unsigned int valueCountInFastestDim, unsigned int valueCountInMiddleDim, unsigned int valueCountInSlowestDim, unsigned int offsetInFastestDim, unsigned int offsetInMiddleDim, unsigned int offsetInSlowestDim) const
 
void pushBackDoubleHdf5Array1dOfValues (const double *values, uint64_t valueCount, eml2::AbstractHdfProxy *proxy=nullptr)
 Adds a 1d array of explicit double values to the property values. More...
 
void pushBackDoubleHdf5Array2dOfValues (const double *values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy=nullptr)
 Adds a 2d array of explicit double values to the property values. More...
 
void pushBackDoubleHdf5Array3dOfValues (const double *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy=nullptr)
 Adds a 3d array of explicit double values to the property values. More...
 
void pushBackDoubleHdf5ArrayOfValues (double const *values, unsigned long long const *numValues, unsigned int numArrayDimensions, eml2::AbstractHdfProxy *proxy=nullptr)
 Adds an nd array of explicit double values to the property values. More...
 
void pushBackFloatHdf5Array1dOfValues (const float *values, uint64_t valueCount, eml2::AbstractHdfProxy *proxy=nullptr)
 
void pushBackFloatHdf5Array2dOfValues (const float *values, uint64_t valueCountInFastestDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy=nullptr)
 
void pushBackFloatHdf5Array3dOfValues (const float *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy=nullptr)
 
void pushBackFloatHdf5ArrayOfValues (float const *values, unsigned long long const *numValues, unsigned int numArrayDimensions, eml2::AbstractHdfProxy *proxy=nullptr)
 
virtual std::string pushBackRefToExistingFloatingPointDataset (eml2::AbstractHdfProxy *proxy, const std::string &datasetName="")
 
void getDoubleValuesOfPatch (unsigned int patchIndex, double *values) const
 
void getFloatValuesOfPatch (unsigned int patchIndex, float *values) const
 
void pushBackFloatHdf5ArrayOfValues (unsigned long long const *numValues, unsigned int numArrayDimensions, eml2::AbstractHdfProxy *proxy=nullptr)
 
void pushBackFloatHdf5Array3dOfValues (uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, eml2::AbstractHdfProxy *proxy=nullptr)
 
void setValuesOfFloatHdf5Array3dOfValues (float const *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, uint64_t offsetInFastestDim, uint64_t offsetInMiddleDim, uint64_t offsetInSlowestDim, eml2::AbstractHdfProxy *proxy=nullptr, unsigned int patchIndex=(std::numeric_limits< unsigned int >::max)())
 
void setValuesOfFloatHdf5ArrayOfValues (float const *values, unsigned long long const *numValues, unsigned long long const *offsetValues, unsigned int numArrayDimensions, eml2::AbstractHdfProxy *proxy=nullptr, unsigned int patchIndex=(std::numeric_limits< unsigned int >::max)())
 
void getFloatValuesOfPatch (unsigned int patchIndex, float *values, unsigned long long const *numValuesInEachDimension, unsigned long long const *offsetInEachDimension, unsigned int numArrayDimensions) const
 
void getFloatValuesOf3dPatch (unsigned int patchIndex, float *values, uint64_t valueCountInFastestDim, uint64_t valueCountInMiddleDim, uint64_t valueCountInSlowestDim, uint64_t offsetInFastestDim, uint64_t offsetInMiddleDim, uint64_t offsetInSlowestDim) const
 
- 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
 
virtual bool validatePropertyKindAssociation (eml2::PropertyKind *pk)=0
 
virtual bool validatePropertyKindAssociation (gsoap_resqml2_0_1::resqml20__ResqmlPropertyKind pk)=0
 
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 getXmlNamespace () const =0
 
virtual std::string getXmlTag () const =0
 
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
 

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 abstract values property.

Constructor & Destructor Documentation

◆ ~AbstractValuesProperty()

virtual resqml2::AbstractValuesProperty::~AbstractValuesProperty ( )
virtualdefault

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

Member Function Documentation

◆ getCharValuesOfPatch()

char resqml2::AbstractValuesProperty::getCharValuesOfPatch ( unsigned int  patchIndex,
char *  values 
) const

Gets all the values of a given patch of this instance. Values are supposed to be char ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesPreallocated buffer for receiving the values. Size is getValuesCountOfPatch(patchIndex)
Returns
The null value.

◆ getDoubleValuesOfPatch()

void resqml2::AbstractValuesProperty::getDoubleValuesOfPatch ( unsigned int  patchIndex,
double *  values 
) const

Gets all the values of a particular patch of this instance which are supposed to be double ones.

Exceptions
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesPreallocated buffer for receiving the values. Size is getValuesCountOfPatch(patchIndex).

◆ getFacetCount()

unsigned int resqml2::AbstractValuesProperty::getFacetCount ( ) const

Gets the count of facet of this instance

Returns
The facet count.

◆ getFacetKind()

gsoap_eml2_3::eml23__FacetKind resqml2::AbstractValuesProperty::getFacetKind ( unsigned int  index) const

Gets the facet at a particular index of the facet collection of this instance.

Exceptions
std::out_of_rangeIf index is strictly greater than facet count.
Parameters
indexZero-based index of the facet we want to get.
Returns
The facet at index index.

◆ getFacetValue()

std::string resqml2::AbstractValuesProperty::getFacetValue ( unsigned int  index) const

Gets the facet value at a particular index of the facet collection of this instance.

Exceptions
std::out_of_rangeIf index is strictly greater than facet count.
Parameters
indexZero-based index of the facet we want to get.
Returns
The facet value at index index.

◆ getFloatValuesOf3dPatch()

void resqml2::AbstractValuesProperty::getFloatValuesOf3dPatch ( unsigned int  patchIndex,
float *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
uint64_t  offsetInFastestDim,
uint64_t  offsetInMiddleDim,
uint64_t  offsetInSlowestDim 
) const

Get some of the values of a particular patch of the instance as float ones. This method makes use of HDF5 hyperslabbing.

Exceptions
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[in,out]valuesThe array (pointer) of values must be preallocated. Size is getValuesCountOfPatch(patchIndex).
valueCountInFastestDimThe number of values to read in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to read in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to read in the slowest dimension (mainly K dimension).
offsetInFastestDimThe offset value for reading in the fastest dimension (mainly I dimension).
offsetInMiddleDimThe offset value for reading in the middle dimension (mainly J dimension).
offsetInSlowestDimThe offset value for reading in the slowest dimension (mainly K dimension).

◆ getFloatValuesOfPatch() [1/2]

void resqml2::AbstractValuesProperty::getFloatValuesOfPatch ( unsigned int  patchIndex,
float *  values 
) const

Gets all the values of a particular patch of this instance which are supposed to be float ones.

Exceptions
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesPreallocated buffer for receiving the values. Size is getValuesCountOfPatch(patchIndex).

◆ getFloatValuesOfPatch() [2/2]

void resqml2::AbstractValuesProperty::getFloatValuesOfPatch ( unsigned int  patchIndex,
float *  values,
unsigned long long const *  numValuesInEachDimension,
unsigned long long const *  offsetInEachDimension,
unsigned int  numArrayDimensions 
) const

Get some of the values of a particular patch of the instance as float ones. This method makes use of HDF5 hyperslabbing.

Exceptions
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesThe array (pointer) of values must be preallocated. Size is getValuesCountOfPatch(patchIndex).
numValuesInEachDimensionThe number of property values ordered by dimension of the array to read. It is ordered from slowest dimension to fastest dimension.
offsetInEachDimensionThe offset values ordered by dimension of the array to read. It is ordered from slowest dimension to fastest dimension.
numArrayDimensionsThe number of dimensions of the HDF5 array to read.

◆ getIntValuesOf3dPatch()

void resqml2::AbstractValuesProperty::getIntValuesOf3dPatch ( unsigned int  patchIndex,
int *  values,
unsigned int  valueCountInFastestDim,
unsigned int  valueCountInMiddleDim,
unsigned int  valueCountInSlowestDim,
unsigned int  offsetInFastestDim,
unsigned int  offsetInMiddleDim,
unsigned int  offsetInSlowestDim 
) const

Gets some of the values of a given patch of this instance. Values are supposed to be integer ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesThe array (pointer) of values must be preallocated. Size is getValuesCountOfPatch(patchIndex).
valueCountInFastestDimThe number of values to read in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to read in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to read in the slowest dimension (mainly K dimension).
offsetInFastestDimThe offset value for reading in the fastest dimension (mainly I dimension).
offsetInMiddleDimThe offset value for reading in the middle dimension (mainly J dimension).
offsetInSlowestDimThe offset value for reading in the slowest dimension (mainly K dimension).

◆ getIntValuesOfPatch() [1/2]

int resqml2::AbstractValuesProperty::getIntValuesOfPatch ( unsigned int  patchIndex,
int *  values 
) const

Gets all the values of a given patch of this instance. Values are supposed to be integer ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesPreallocated buffer for receiving the values. Size is getValuesCountOfPatch(patchIndex)
Returns
The null value.

◆ getIntValuesOfPatch() [2/2]

int resqml2::AbstractValuesProperty::getIntValuesOfPatch ( unsigned int  patchIndex,
int *  values,
unsigned long long *  numValuesInEachDimension,
unsigned long long *  offsetInEachDimension,
unsigned int  numArrayDimensions 
) const

Gets some of the values of a given patch of this instance. Values are supposed to be integer ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesThe array (pointer) of values which must be preallocated. Size is getValuesCountOfPatch(patchIndex).
[in]numValuesInEachDimensionThe number of property values ordered by dimension of the array to read. It is ordered from slowest dimension to fastest dimension.
[in]offsetInEachDimensionThe offset values ordered by dimension of the array to read. It is ordered from slowest dimension to fastest dimension.
numArrayDimensionsThe number of dimensions of the array to read.
Returns
The null value.

◆ getLongValuesOf3dPatch()

void resqml2::AbstractValuesProperty::getLongValuesOf3dPatch ( unsigned int  patchIndex,
int64_t *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
uint64_t  offsetInFastestDim,
uint64_t  offsetInMiddleDim,
uint64_t  offsetInSlowestDim 
) const

Gets some of the values of a given patch of this instance. Values are supposed to be long 64 bits ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesThe array (pointer) of values must be preallocated. Size is getValuesCountOfPatch(patchIndex).
valueCountInFastestDimThe number of values to read in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to read in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to read in the slowest dimension (mainly K dimension).
offsetInFastestDimThe offset value for reading in the fastest dimension (mainly I dimension).
offsetInMiddleDimThe offset value for reading in the middle dimension (mainly J dimension).
offsetInSlowestDimThe offset value for reading in the slowest dimension (mainly K dimension).

◆ getLongValuesOfPatch() [1/2]

int64_t resqml2::AbstractValuesProperty::getLongValuesOfPatch ( unsigned int  patchIndex,
int64_t *  values 
) const

Gets all the values of a given patch of this instance. Values are supposed to be long ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesPreallocated buffer for receiving the values. Size is getValuesCountOfPatch(patchIndex).
Returns
The null value.

◆ getLongValuesOfPatch() [2/2]

void resqml2::AbstractValuesProperty::getLongValuesOfPatch ( unsigned int  patchIndex,
int64_t *  values,
unsigned long long const *  numValuesInEachDimension,
unsigned long long const *  offsetInEachDimension,
unsigned int  numArrayDimensions 
) const

Gets some of the values of a given patch of this instance. Values are supposed to be long 64 bits ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesThe array (pointer) of values which must be preallocated. Size is getValuesCountOfPatch(patchIndex).
numValuesInEachDimensionThe number of property values ordered by dimension of the array to read. It is ordered from slowest dimension to fastest dimension.
offsetInEachDimensionThe offset values ordered by dimension of the array to read. It is ordered from slowest dimension to fastest dimension.
numArrayDimensionsThe number of dimensions of the array to write.

◆ getNullValueOfPatch()

int64_t resqml2::AbstractValuesProperty::getNullValueOfPatch ( unsigned int  patchIndex) const

Gets the null value of a given patch of this instance. Values are supposed to be integer ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::range_errorIf patchIndex is strictly greater than patch count.
std::invalid_argumentIf the patchIndex patch does not contain integer values.
Parameters
patchIndexThe index of the patch we want the values from.
Returns
the null value.

◆ getPatchCount()

unsigned int resqml2::AbstractValuesProperty::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.

◆ getShortValuesOfPatch()

short resqml2::AbstractValuesProperty::getShortValuesOfPatch ( unsigned int  patchIndex,
short *  values 
) const

Gets all the values of a given patch of this instance. Values are supposed to be short ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesPreallocated buffer for receiving the values. Size is getValuesCountOfPatch(patchIndex)
Returns
The null value.

◆ getUCharValuesOfPatch()

unsigned char resqml2::AbstractValuesProperty::getUCharValuesOfPatch ( unsigned int  patchIndex,
unsigned char *  values 
) const

Gets all the values of a given patch of this instance. Values are supposed to be unsigned char ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesPreallocated buffer for receiving the values. Size is getValuesCountOfPatch(patchIndex)
Returns
The null value.

◆ getUIntValuesOfPatch()

unsigned int resqml2::AbstractValuesProperty::getUIntValuesOfPatch ( unsigned int  patchIndex,
unsigned int *  values 
) const

Gets all the values of a given patch of this instance. Values are supposed to be unsigned integer ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesPreallocated buffer for receiving the values. Size is getValuesCountOfPatch(patchIndex)
Returns
The null value.

◆ getULongValuesOfPatch()

uint64_t resqml2::AbstractValuesProperty::getULongValuesOfPatch ( unsigned int  patchIndex,
uint64_t *  values 
) const

Gets all the values of a given patch of this instance. Values are supposed to be unsigned long ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesPreallocated buffer for receiving the values. Size is getValuesCountOfPatch(patchIndex)
Returns
The null value.

◆ getUShortValuesOfPatch()

unsigned short resqml2::AbstractValuesProperty::getUShortValuesOfPatch ( unsigned int  patchIndex,
unsigned short *  values 
) const

Gets all the values of a given patch of this instance. Values are supposed to be unsigned short ones.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::out_of_rangeIf patchIndex is strictly greater than patch count.
Parameters
patchIndexThe index of the patch we want the values from.
[out]valuesPreallocated buffer for receiving the values. Size is getValuesCountOfPatch(patchIndex)
Returns
The null value.

◆ pushBackCharHdf5Array1dOfValues()

void resqml2::AbstractValuesProperty::pushBackCharHdf5Array1dOfValues ( const char *  values,
uint64_t  valueCount,
eml2::AbstractHdfProxy proxy,
char  nullValue 
)

Adds a 1d array of explicit char values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountThe number of values to write.
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackCharHdf5Array2dOfValues()

void resqml2::AbstractValuesProperty::pushBackCharHdf5Array2dOfValues ( const char *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy,
char  nullValue 
)

Adds a 2d array of explicit char values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly J dimension).
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackCharHdf5Array3dOfValues()

void resqml2::AbstractValuesProperty::pushBackCharHdf5Array3dOfValues ( const char *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy,
char  nullValue 
)

Adds a 3d array of explicit char values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to write in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly K dimension).
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackCharHdf5ArrayOfValues()

virtual void resqml2::AbstractValuesProperty::pushBackCharHdf5ArrayOfValues ( const char *  values,
unsigned long long *  numValues,
unsigned int  numDimensionsInArray,
eml2::AbstractHdfProxy proxy,
char  nullValue 
)
virtual

Adds an nd array of explicit char values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
[in]numValuesThe number of property values ordered by dimension of the array to write.
numDimensionsInArrayThe number of dimensions in the array to write.
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

Reimplemented in resqml2::DiscreteProperty.

◆ pushBackDoubleHdf5Array1dOfValues()

void resqml2::AbstractValuesProperty::pushBackDoubleHdf5Array1dOfValues ( const double *  values,
uint64_t  valueCount,
eml2::AbstractHdfProxy proxy = nullptr 
)

Adds a 1d array of explicit double values to the property values.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountThe number of values to write.
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), then a default HDF proxy must be defined in the repository.

◆ pushBackDoubleHdf5Array2dOfValues()

void resqml2::AbstractValuesProperty::pushBackDoubleHdf5Array2dOfValues ( const double *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy = nullptr 
)

Adds a 2d array of explicit double values to the property values.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly J dimension).
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), then a default HDF proxy must be defined in the repository.

◆ pushBackDoubleHdf5Array3dOfValues()

void resqml2::AbstractValuesProperty::pushBackDoubleHdf5Array3dOfValues ( const double *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy = nullptr 
)

Adds a 3d array of explicit double values to the property values.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to write in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly K dimension).
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), then a default HDF proxy must be defined in the repository.

◆ pushBackDoubleHdf5ArrayOfValues()

void resqml2::AbstractValuesProperty::pushBackDoubleHdf5ArrayOfValues ( double const *  values,
unsigned long long const *  numValues,
unsigned int  numArrayDimensions,
eml2::AbstractHdfProxy proxy = nullptr 
)

Adds an nd array of explicit double values to the property values.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
numValuesThe number of property values ordered by dimension of the array to write.
numArrayDimensionsThe number of dimensions of the array to write.
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), then a default HDF proxy must be defined in the repository.

◆ pushBackFacet()

void resqml2::AbstractValuesProperty::pushBackFacet ( gsoap_eml2_3::eml23__FacetKind  facet,
const std::string &  facetValue 
)

Pushes back a new facet to this instance. Facets are qualifiers for property values which allow users to semantically specialize a property without creating a new property kind.

Parameters
facetThe facet.
facetValueThe facet value.

◆ pushBackFloatHdf5Array1dOfValues()

void resqml2::AbstractValuesProperty::pushBackFloatHdf5Array1dOfValues ( const float *  values,
uint64_t  valueCount,
eml2::AbstractHdfProxy proxy = nullptr 
)

Adds a 1d array of explicit float values to the property values.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountThe number of values to write.
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), then a default HDF proxy must be defined in the repository.

◆ pushBackFloatHdf5Array2dOfValues()

void resqml2::AbstractValuesProperty::pushBackFloatHdf5Array2dOfValues ( const float *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy = nullptr 
)

Adds a 2d array of explicit float values to the property values.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly J dimension).
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), then a default HDF proxy must be defined in the repository.

◆ pushBackFloatHdf5Array3dOfValues() [1/2]

void resqml2::AbstractValuesProperty::pushBackFloatHdf5Array3dOfValues ( const float *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy = nullptr 
)

Adds a 3d array of explicit float values to the property values.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to write in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly K dimension).
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), then a default HDF proxy must be defined in the repository.

◆ pushBackFloatHdf5Array3dOfValues() [2/2]

void resqml2::AbstractValuesProperty::pushBackFloatHdf5Array3dOfValues ( uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy = nullptr 
)

Creates a 3d array of explicit float values to the property values. No values are written to this array yet then the HDF5 array contains uninitialized values.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined into the data object repository.
Parameters
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to write in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly K dimension).
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default), a default HDF proxy must be defined into the data object repository.

◆ pushBackFloatHdf5ArrayOfValues() [1/2]

void resqml2::AbstractValuesProperty::pushBackFloatHdf5ArrayOfValues ( float const *  values,
unsigned long long const *  numValues,
unsigned int  numArrayDimensions,
eml2::AbstractHdfProxy proxy = nullptr 
)

Adds an nd array of explicit float values to the property values.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
numValuesThe number of property values ordered by dimension of the array to write.
numArrayDimensionsThe number of dimensions of the array to write.
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), then a default HDF proxy must be defined in the repository.

◆ pushBackFloatHdf5ArrayOfValues() [2/2]

void resqml2::AbstractValuesProperty::pushBackFloatHdf5ArrayOfValues ( unsigned long long const *  numValues,
unsigned int  numArrayDimensions,
eml2::AbstractHdfProxy proxy = nullptr 
)

Create an nd array of explicit float values to the property values. No values are written to this array yet then the HDF5 array contains uninitialized values.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined into the data object repository.
Parameters
numValuesThe number of property values ordered by dimension of the array to write. It is ordered from slowest dimension to fastest dimension.
numArrayDimensionsThe number of dimensions of the array to write.
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default), a default HDF proxy must be defined into the data object repository.

◆ pushBackIntHdf5Array1dOfValues()

void resqml2::AbstractValuesProperty::pushBackIntHdf5Array1dOfValues ( const int *  values,
uint64_t  valueCount,
eml2::AbstractHdfProxy proxy,
int  nullValue 
)

Adds a 1d array of explicit integer values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountThe number of values to write.
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackIntHdf5Array2dOfValues()

void resqml2::AbstractValuesProperty::pushBackIntHdf5Array2dOfValues ( const int *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy,
int  nullValue 
)

Adds a 2d array of explicit integer values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly J dimension).
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackIntHdf5Array3dOfValues()

void resqml2::AbstractValuesProperty::pushBackIntHdf5Array3dOfValues ( const int *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy,
int  nullValue 
)

Adds a 3d array of explicit integer values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to write in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly K dimension).
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackIntHdf5ArrayOfValues()

virtual void resqml2::AbstractValuesProperty::pushBackIntHdf5ArrayOfValues ( const int *  values,
unsigned long long *  numValues,
unsigned int  numDimensionsInArray,
eml2::AbstractHdfProxy proxy,
int  nullValue 
)
virtual

Adds an nd array of explicit integer values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
[in]numValuesThe number of property values ordered by dimension of the array to write.
numDimensionsInArrayThe number of dimensions in the array to write.
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

Reimplemented in resqml2::DiscreteProperty.

◆ pushBackLongHdf5Array1dOfValues()

void resqml2::AbstractValuesProperty::pushBackLongHdf5Array1dOfValues ( const int64_t *  values,
uint64_t  valueCount,
eml2::AbstractHdfProxy proxy,
int64_t  nullValue 
)

Adds a 1d array of explicit long values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountThe number of values to write.
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackLongHdf5Array2dOfValues()

void resqml2::AbstractValuesProperty::pushBackLongHdf5Array2dOfValues ( const int64_t *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy,
int64_t  nullValue 
)

Adds a 2d array of explicit long values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly J dimension).
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackLongHdf5Array3dOfValues() [1/2]

void resqml2::AbstractValuesProperty::pushBackLongHdf5Array3dOfValues ( const int64_t *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy,
int64_t  nullValue 
)

Adds a 3d array of explicit long values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to write in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly K dimension).
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackLongHdf5Array3dOfValues() [2/2]

void resqml2::AbstractValuesProperty::pushBackLongHdf5Array3dOfValues ( uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
int64_t  nullValue = (std::numeric_limits< int64_t >::max)(),
eml2::AbstractHdfProxy proxy = nullptr 
)

Creates a 3d array of explicit long 64 values into the property values. No values are written to this array yet then the HDF5 array contains uninitialized values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined into the data object repository.
Parameters
valueCountInFastestDimThe number of values in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values in the slowest dimension (mainly K dimension).
nullValue(Optional) The null value. Default value is long 64 bits maximum value.
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), a default HDF proxy must be defined into the data object repository.

◆ pushBackLongHdf5ArrayOfValues() [1/2]

virtual void resqml2::AbstractValuesProperty::pushBackLongHdf5ArrayOfValues ( const int64_t *  values,
unsigned long long *  numValues,
unsigned int  numDimensionsInArray,
eml2::AbstractHdfProxy proxy,
int64_t  nullValue 
)
virtual

Adds an nd array of explicit long values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
[in]numValuesThe number of property values ordered by dimension of the array to write.
numDimensionsInArrayThe number of dimensions in the array to write.
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

Reimplemented in resqml2::DiscreteProperty.

◆ pushBackLongHdf5ArrayOfValues() [2/2]

void resqml2::AbstractValuesProperty::pushBackLongHdf5ArrayOfValues ( unsigned long long *  numValues,
unsigned int  numArrayDimensions,
int64_t  nullValue = (std::numeric_limits< int64_t >::max)(),
eml2::AbstractHdfProxy proxy = nullptr 
)

Creates an nd array of explicit long 64 bits values into the property values. No values are written to this array yet then the HDF5 array contains uninitialized values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined into the data object repository.
Parameters
[in]numValuesThe number of property values ordered by dimension of the array to write. It is ordered from slowest dimension to fastest dimension.
numArrayDimensionsThe number of dimensions of the array to write.
nullValue(Optional) The null value. Default value is long 64 bits maximum value.
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), a default HDF proxy must be defined into the data object repository.

◆ pushBackRefToExistingFloatingPointDataset()

virtual std::string resqml2::AbstractValuesProperty::pushBackRefToExistingFloatingPointDataset ( eml2::AbstractHdfProxy proxy,
const std::string &  datasetName = "" 
)
virtual

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() + "/values_patch" + patchIndex
Returns
The name of the referenced HDF5 dataset.

◆ pushBackRefToExistingIntegerDataset()

virtual std::string resqml2::AbstractValuesProperty::pushBackRefToExistingIntegerDataset ( eml2::AbstractHdfProxy hdfProxy,
const std::string &  dataset = "",
int64_t  nullValue = (std::numeric_limits< int64_t >::max)() 
)
virtual

Pushes back a new patch of values for this property where the values have not to be written in the HDF5 file.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::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf hdfProxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
[in]hdfProxyThe HDF5 proxy where the values are already or will be stored. If nullptr, then a default HDF proxy must be defined in the repository.
dataset(Optional) If not provided during the method call, the dataset will be named the same as the dataset naming convention of fesapi : getHdfGroup() + "/values_patch" + patchIndex
nullValue(Optional) Only relevant for integer HDF5 datasets. Indeed, RESQML (and fesapi) forces null value for floating point to be NaN value.
Returns
The name of the HDF5 dataset.

Reimplemented in resqml2::ContinuousProperty, and resqml2::CommentProperty.

◆ pushBackShortHdf5Array1dOfValues()

void resqml2::AbstractValuesProperty::pushBackShortHdf5Array1dOfValues ( const short *  values,
uint64_t  valueCount,
eml2::AbstractHdfProxy proxy,
short  nullValue 
)

Adds a 1d array of explicit short values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountThe number of values to write.
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackShortHdf5Array2dOfValues()

void resqml2::AbstractValuesProperty::pushBackShortHdf5Array2dOfValues ( const short *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy,
short  nullValue 
)

Adds a 2d array of explicit short values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly J dimension).
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackShortHdf5Array3dOfValues()

void resqml2::AbstractValuesProperty::pushBackShortHdf5Array3dOfValues ( const short *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy,
short  nullValue 
)

Adds a 3d array of explicit short values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to write in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly K dimension).
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackShortHdf5ArrayOfValues()

virtual void resqml2::AbstractValuesProperty::pushBackShortHdf5ArrayOfValues ( const short *  values,
unsigned long long *  numValues,
unsigned int  numDimensionsInArray,
eml2::AbstractHdfProxy proxy,
short  nullValue 
)
virtual

Adds an nd array of explicit short values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
[in]numValuesThe number of property values ordered by dimension of the array to write.
numDimensionsInArrayThe number of dimensions in the array to write.
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

Reimplemented in resqml2::DiscreteProperty.

◆ pushBackUShortHdf5Array2dOfValues()

void resqml2::AbstractValuesProperty::pushBackUShortHdf5Array2dOfValues ( const unsigned short *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy,
unsigned short  nullValue 
)

Adds a 2d array of explicit unsigned short values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly J dimension).
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackUShortHdf5Array3dOfValues()

void resqml2::AbstractValuesProperty::pushBackUShortHdf5Array3dOfValues ( const unsigned short *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
eml2::AbstractHdfProxy proxy,
unsigned short  nullValue 
)

Adds a 3d array of explicit unsigned short values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to write in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly K dimension).
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

◆ pushBackUShortHdf5ArrayOfValues()

virtual void resqml2::AbstractValuesProperty::pushBackUShortHdf5ArrayOfValues ( const unsigned short *  values,
unsigned long long *  numValues,
unsigned int  numDimensionsInArray,
eml2::AbstractHdfProxy proxy,
unsigned short  nullValue 
)
virtual

Adds an nd array of explicit unsigned short values to the property values.

Exceptions
std::logic_errorIf the underlying gSOAP instance is not a RESQML2.0 one.
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined in the repository.
Parameters
valuesAll the property values to set ordered according the topology of the representation it is based on.
[in]numValuesThe number of property values ordered by dimension of the array to write.
numDimensionsInArrayThe number of dimensions in the array to write.
[in,out]proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr, then a default HDF proxy must be defined in the repository.
nullValueThe null value.

Reimplemented in resqml2::DiscreteProperty.

◆ setValuesOfFloatHdf5Array3dOfValues()

void resqml2::AbstractValuesProperty::setValuesOfFloatHdf5Array3dOfValues ( float const *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
uint64_t  offsetInFastestDim,
uint64_t  offsetInMiddleDim,
uint64_t  offsetInSlowestDim,
eml2::AbstractHdfProxy proxy = nullptr,
unsigned int  patchIndex = (std::numeric_limits< unsigned int >::max)() 
)

Sets some values of an existing 3d array of explicit float values of a particular patch. This method makes use of HDF5 hyperslabbing. Since this methods only pushes back values into an existing array, it is to be used along with pushBackFloatHdf5Array3dOfValues().

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined into the data object repository.
std::out_of_rangeIf patchIndex is strictly greater than patch count and different from unsigned int maximum value.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to write in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly K dimension).
offsetInFastestDimThe offset value for writing in the fastest dimension (mainly I dimension).
offsetInMiddleDimThe offset value for writing in the middle dimension (mainly J dimension).
offsetInSlowestDimThe offset value for writing in the slowest dimension (mainly K dimension).
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default), a default HDF proxy must be defined into the data object repository.
patchIndex(Optional) Zero-based index of the patch where to write the property values. If not provided, its default value is by convention set to unsigned int maximum value and the property values will be written in the last property values patch (the one with the greatest index).

◆ setValuesOfFloatHdf5ArrayOfValues()

void resqml2::AbstractValuesProperty::setValuesOfFloatHdf5ArrayOfValues ( float const *  values,
unsigned long long const *  numValues,
unsigned long long const *  offsetValues,
unsigned int  numArrayDimensions,
eml2::AbstractHdfProxy proxy = nullptr,
unsigned int  patchIndex = (std::numeric_limits< unsigned int >::max)() 
)

Set some values of an existing 3d array of explicit float values of a particular patch. This method makes use of HDF5 hyperslabbing. This method is to be used along with one of the pushBackFloatHdf5ArrayOfValues() methods which do not write any value.

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined into the data object repository.
std::out_of_rangeIf patchIndex is strictly greater than patch count and different from unsigned int maximum value.
Parameters
valuesAll the property values to set ordered according to the topology of the representation it is based on.
numValuesThe number of property values ordered by dimension of the array to write. It is ordered from slowest dimension to fastest dimension.
offsetValuesThe offset values ordered by dimension of the array to write. It is ordered from slowest dimension to fastest dimension.
numArrayDimensionsThe number of dimensions of the array to write.
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default), a default HDF proxy must be defined into the data object repository.
patchIndex(Optional) Zero-based index of the patch where to write the property values. If not provided, its default value is by convention set to unsigned int maximum value and the property values will be written in the last property values patch (the one with the greatest index).

◆ setValuesOfLongHdf5Array3dOfValues()

void resqml2::AbstractValuesProperty::setValuesOfLongHdf5Array3dOfValues ( int64_t *  values,
uint64_t  valueCountInFastestDim,
uint64_t  valueCountInMiddleDim,
uint64_t  valueCountInSlowestDim,
uint64_t  offsetInFastestDim,
uint64_t  offsetInMiddleDim,
uint64_t  offsetInSlowestDim,
eml2::AbstractHdfProxy proxy = nullptr,
unsigned int  patchIndex = (std::numeric_limits< unsigned int >::max)() 
)

Adds a 3d array of explicit long 64 bits values into the property values. Since this methods only pushes back values into an existing array, it is to be used along with pushBackLongHdf5Array3dOfValues().

Exceptions
std::invalid_argumentIf proxy is nullptr and no default HDF proxy is defined into the data object repository.
std::out_of_rangeIf patchIndex is strictly greater than patch count and different from unsigned int maximum value.
Parameters
[in]valuesAll the property values to set ordered according to the topology of the representation it is based on.
valueCountInFastestDimThe number of values to write in the fastest dimension (mainly I dimension).
valueCountInMiddleDimThe number of values to write in the middle dimension (mainly J dimension).
valueCountInSlowestDimThe number of values to write in the slowest dimension (mainly K dimension).
offsetInFastestDimThe offset value for writing in the fastest dimension (mainly I dimension).
offsetInMiddleDimThe offset value for writing in the middle dimension (mainly J dimension).
offsetInSlowestDimThe offset value for writing in the slowest dimension (mainly K dimension).
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If nullptr (default value), a default HDF proxy must be defined into the data object repository.
patchIndex(Optional) Zero-based index of the patch where to write the property values. If not provided, its default value is by convention set to unsigned int maximum value and the property values will be written in the last property values patch (the one with the greatest index).

◆ setValuesOfLongHdf5ArrayOfValues()

void resqml2::AbstractValuesProperty::setValuesOfLongHdf5ArrayOfValues ( int64_t *  values,
unsigned long long const *  numValues,
unsigned long long const *  offsetValues,
unsigned int  numArrayDimensions,
eml2::AbstractHdfProxy proxy = nullptr,
unsigned int  patchIndex = (std::numeric_limits< unsigned int >::max)() 
)

Adds an nd array of explicit long 64 bits values into to the property values. Since this methods only pushes back values into an existing array, it is to be used along with pushBackLongHdf5ArrayOfValues().

Exceptions
std::invalid_argumentIf proxy is null and no default HDF proxy is defined into the data object repository.
std::out_of_rangeIf patchIndex is strictly greater than patch count and different from unsigned int maximum value.
Parameters
[in]valuesAll the property values to set ordered according to the topology of the representation it is based on.
numValuesThe number of property values ordered by dimension of the array to write. It is ordered from slowest dimension to fastest dimension.
offsetValuesThe offset values ordered by dimension of the array to write. It is ordered from slowest dimension to fastest dimension.
numArrayDimensionsThe number of dimensions of the array to write.
[in,out]proxy(Optional) The HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method. If null (default value), a default HDF proxy must be defined into the data object repository.
patchIndex(Optional) Zero-based index of the patch where to write the property values. If not provided, its default value is by convention set to unsigned int maximum value and the property values will be written in the last property values patch (the one with the greatest index).

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