My Project
Public Types | Public Member Functions | Protected Member Functions | List of all members
resqml2::AbstractValuesProperty Class Reference
Inheritance diagram for resqml2::AbstractValuesProperty:
resqml2::AbstractProperty resqml2::AbstractObject resqml2_0_1::CategoricalProperty resqml2_0_1::CommentProperty resqml2_0_1::ContinuousProperty resqml2_0_1::DiscreteProperty resqml2_0_1::CategoricalPropertySeries resqml2_0_1::ContinuousPropertySeries resqml2_0_1::DiscretePropertySeries

Public Types

enum  hdfDatatypeEnum {
  UNKNOWN = 0, DOUBLE = 1, FLOAT = 2, LONG = 3,
  ULONG = 4, INT = 5, UINT = 6, SHORT = 7,
  USHORT = 8, CHAR = 9, UCHAR = 10
}
 

Public Member Functions

 AbstractValuesProperty ()
 
 AbstractValuesProperty (gsoap_resqml2_0_1::resqml2__AbstractValuesProperty *fromGsoap)
 
virtual ~AbstractValuesProperty ()
 
unsigned int getPatchCount () const
 
AbstractValuesProperty::hdfDatatypeEnum getValuesHdfDatatype () const
 
void pushBackRefToExistingDataset (resqml2::AbstractHdfProxy *hdfProxy, const bool &isAnIntegerDataset, const std::string &dataset="")
 
long getLongValuesOfPatch (const unsigned int &patchIndex, long *values)
 
long getNullValueOfPatch (const unsigned int &patchIndex)
 
unsigned long getULongValuesOfPatch (const unsigned int &patchIndex, unsigned long *values)
 
int getIntValuesOfPatch (const unsigned int &patchIndex, int *values)
 
unsigned int getUIntValuesOfPatch (const unsigned int &patchIndex, unsigned int *values)
 
short getShortValuesOfPatch (const unsigned int &patchIndex, short *values)
 
unsigned short getUShortValuesOfPatch (const unsigned int &patchIndex, unsigned short *values)
 
char getCharValuesOfPatch (const unsigned int &patchIndex, char *values)
 
unsigned char getUCharValuesOfPatch (const unsigned int &patchIndex, unsigned char *values)
 
unsigned int getValuesCountOfPatch (const unsigned int &patchIndex)
 
unsigned int getValuesCountOfDimensionOfPatch (const unsigned int &dimIndex, const unsigned int &patchIndex)
 
unsigned int getDimensionsCountOfPatch (const unsigned int &patchIndex)
 
void pushBackFacet (const gsoap_resqml2_0_1::resqml2__Facet &facet, const std::string &facetValue)
 
unsigned int getFacetCount () const
 
gsoap_resqml2_0_1::resqml2__Facet getFacet (const unsigned int &index) const
 
std::string getFacetValue (const unsigned int &index) const
 
void createLongHdf5ArrayOfValues (unsigned long long *numValues, const unsigned int &numArrayDimensions, resqml2::AbstractHdfProxy *proxy)
 
void createLongHdf5Array3dOfValues (const unsigned int &valueCountInFastestDim, const unsigned int &valueCountInMiddleDim, const unsigned int &valueCountInSlowestDim, resqml2::AbstractHdfProxy *proxy)
 
void pushBackLongHdf5SlabArray3dOfValues (long *values, const unsigned int &valueCountInFastestDim, const unsigned int &valueCountInMiddleDim, const unsigned int &valueCountInSlowestDim, const unsigned int &offsetInFastestDim, const unsigned int &offsetInMiddleDim, const unsigned int &offsetInSlowestDim, resqml2::AbstractHdfProxy *proxy)
 
void pushBackLongHdf5SlabArrayOfValues (long *values, unsigned long long *numValues, unsigned long long *offsetValues, const unsigned int &numArrayDimensions, resqml2::AbstractHdfProxy *proxy)
 
void getLongValuesOfPatch (const unsigned int &patchIndex, long *values, unsigned long long *numValuesInEachDimension, unsigned long long *offsetInEachDimension, const unsigned int &numArrayDimensions)
 
void getLongValuesOf3dPatch (const unsigned int &patchIndex, long *values, const unsigned int &valueCountInFastestDim, const unsigned int &valueCountInMiddleDim, const unsigned int &valueCountInSlowestDim, const unsigned int &offsetInFastestDim, const unsigned int &offsetInMiddleDim, const unsigned int &offsetInSlowestDim)
 
- Public Member Functions inherited from resqml2::AbstractProperty
 AbstractProperty ()
 
 AbstractProperty (gsoap_resqml2_0_1::resqml2__AbstractProperty *fromGsoap)
 
virtual ~AbstractProperty ()
 
void setRepresentation (class AbstractRepresentation *rep)
 
class AbstractRepresentationgetRepresentation () const
 
std::string getRepresentationUuid () const
 
std::string getRepresentationTitle () const
 
std::string getRepresentationContentType () const
 
void setTimeSeries (class TimeSeries *ts)
 
TimeSeriesgetTimeSeries () const
 
std::string getTimeSeriesUuid () const
 
std::string getTimeSeriesTitle () const
 
void setTimeIndex (const unsigned int &timeIndex, class TimeSeries *ts)
 
void setTimeStep (const unsigned int &timeStep)
 
time_t getTimestamp () const
 
unsigned int getTimeIndex () const
 
void setHdfProxy (AbstractHdfProxy *proxy)
 
AbstractHdfProxygetHdfProxy () const
 
std::string getHdfProxyUuid () const
 
unsigned int getElementCountPerValue () const
 
gsoap_resqml2_0_1::resqml2__IndexableElements getAttachmentKind () const
 
bool isAssociatedToOneStandardEnergisticsPropertyKind () const
 
std::string getPropertyKindDescription () const
 
std::string getPropertyKindAsString () const
 
std::string getPropertyKindParentAsString () const
 
gsoap_resqml2_0_1::resqml2__ResqmlPropertyKind getEnergisticsPropertyKind () const
 
void setLocalPropertyKind (class PropertyKind *propKind)
 
std::string getLocalPropertyKindUuid () const
 
std::string getLocalPropertyKindTitle () const
 
class PropertyKindgetLocalPropertyKind () const
 
virtual gsoap_resqml2_0_1::resqml2__ResqmlPropertyKind getFirstAllowedPropertyKindParent () const
 
- Public Member Functions inherited from resqml2::AbstractObject
bool isPartial () const
 
std::string getUuid () const
 
std::string getTitle () const
 
std::string getEditor () const
 
time_t getCreation () const
 
std::string getOriginator () const
 
std::string getDescription () const
 
time_t getLastUpdate () const
 
std::string getFormat () const
 
std::string getDescriptiveKeywords () const
 
void setTitle (const std::string &title)
 
void setEditor (const std::string &editor)
 
void setCreation (const time_t &creation)
 
void setOriginator (const std::string &originator)
 
void setDescription (const std::string &description)
 
void setLastUpdate (const time_t &lastUpdate)
 
void setFormat (const std::string &format)
 
void setDescriptiveKeywords (const std::string &descriptiveKeywords)
 
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::eml__AbstractCitedDataObject * getGsoapProxy () const
 
soap * getGsoapContext () const
 
int getGsoapType () const
 
gsoap_resqml2_0_1::eml__DataObjectReference * newResqmlReference () const
 
gsoap_resqml2_0_1::resqml2__ContactElementReference * newResqmlContactElementReference () const
 
common::EpcDocumentgetEpcDocument () const
 
virtual std::string getXmlNamespace () const
 
virtual std::string getXmlTag () const =0
 
virtual std::string getResqmlVersion () const
 
std::string getContentType () const
 
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::Activity * > & getActivitySet () const
 
void addOrSetExtraMetadata (const std::string &key, const std::string &value)
 
std::tr1::unordered_map< std::string, std::string > getExtraMetadataSet () const
 
std::string getExtraMetadata (const std::string &key)
 
unsigned int getExtraMetadataCount () const
 
std::string getExtraMetadataKeyAtIndex (const unsigned int &index) const
 
std::string getExtraMetadataStringValueAtIndex (const unsigned int &index) const
 

Protected Member Functions

std::string getPathInHdfFileOfPatch (const unsigned int &patchIndex, LONG64 &nullValue) const
 
- Protected Member Functions inherited from resqml2::AbstractProperty
void setXmlRepresentation (class AbstractRepresentation *rep)
 
void setXmlTimeSeries (TimeSeries *ts)
 
void setXmlLocalPropertyKind (class PropertyKind *propKind)
 
virtual std::vector< epc::RelationshipgetAllEpcRelationships () const
 
virtual void importRelationshipSetFromEpc (common::EpcDocument *epcDoc)
 
- Protected Member Functions inherited from resqml2::AbstractObject
 AbstractObject (common::EpcDocument *epcDoc, gsoap_resqml2_0_1::eml__DataObjectReference *partialObject)
 Indicate whether methods update the XML (gSoap) or only the C++ classes of the API. More...
 
 AbstractObject (gsoap_resqml2_0_1::eml__AbstractCitedDataObject *proxy=nullptr)
 
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)
 

Additional Inherited Members

- Static Protected Member Functions inherited from resqml2::AbstractObject
static void addActivityToResqmlObject (resqml2::Activity *activity, AbstractObject *resqmlObject)
 
- Protected Attributes inherited from resqml2::AbstractProperty
class AbstractLocal3dCrslocal3dCrs
 
- Protected Attributes inherited from resqml2::AbstractObject
gsoap_resqml2_0_1::eml__AbstractCitedDataObject * gsoapProxy2_0_1
 
common::EpcDocumentepcDocument
 
std::vector< resqml2::Activity * > activitySet
 
bool updateXml
 

Constructor & Destructor Documentation

resqml2::AbstractValuesProperty::AbstractValuesProperty ( )
inline

Default constructor Set the relationship with an AbstractRepresentation and a local property type.

resqml2::AbstractValuesProperty::AbstractValuesProperty ( gsoap_resqml2_0_1::resqml2__AbstractValuesProperty *  fromGsoap)
inline

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

virtual resqml2::AbstractValuesProperty::~AbstractValuesProperty ( )
inlinevirtual

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

Member Function Documentation

void AbstractValuesProperty::createLongHdf5Array3dOfValues ( const unsigned int &  valueCountInFastestDim,
const unsigned int &  valueCountInMiddleDim,
const unsigned int &  valueCountInSlowestDim,
resqml2::AbstractHdfProxy proxy 
)

Create a 3d array of explicit Long values to the property values.

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).
proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method.
void AbstractValuesProperty::createLongHdf5ArrayOfValues ( unsigned long long *  numValues,
const unsigned int &  numArrayDimensions,
resqml2::AbstractHdfProxy proxy 
)

Create an array (potentially multi dimensions) of explicit long values to the property values. No values are written to this array yet.

Parameters
numValuesThe number of property values ordered by dimension of the array to write.
numArrayDimensionsThe number of dimensions of the array to write.
proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method.
char AbstractValuesProperty::getCharValuesOfPatch ( const unsigned int &  patchIndex,
char *  values 
)

Get all the values of the instance which are supposed to be char ones. Not for continuous property values.

Returns
the null value
unsigned int AbstractValuesProperty::getDimensionsCountOfPatch ( const unsigned int &  patchIndex)

Get the count of dimension of the underlying HDF5 dataset of this property.

Parameters
patchIndexThe index of the patch we want to know the dimensions in this property.
Returns
The number of values, 0 otherwise.
gsoap_resqml2_0_1::resqml2__Facet AbstractValuesProperty::getFacet ( const unsigned int &  index) const

Get the facet at a particular index of the facet collection of this instance

unsigned int AbstractValuesProperty::getFacetCount ( ) const

Get the count of facet of this instance

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

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

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

Get all the values of the instance which are supposed to be int ones. Not for continuous property values.

Returns
the null value
void AbstractValuesProperty::getLongValuesOf3dPatch ( const unsigned int &  patchIndex,
long *  values,
const unsigned int &  valueCountInFastestDim,
const unsigned int &  valueCountInMiddleDim,
const unsigned int &  valueCountInSlowestDim,
const unsigned int &  offsetInFastestDim,
const unsigned int &  offsetInMiddleDim,
const unsigned int &  offsetInSlowestDim 
)

Get all the values of the instance which are supposed to be long ones.

Parameters
patchIndexPatch index.
valuesThe array (pointer) of values must be preallocated.
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 to write in the fastest dimension (mainly I dimension).
offsetInMiddleDimThe offset value to write in the middle dimension (mainly J dimension).
offsetInSlowestDimThe offset value to write in the slowest dimension (mainly K dimension).
long AbstractValuesProperty::getLongValuesOfPatch ( const unsigned int &  patchIndex,
long *  values 
)

Get all the values of the instance which are supposed to be long ones. Not for continuous property values.

Returns
the null value
void resqml2::AbstractValuesProperty::getLongValuesOfPatch ( const unsigned int &  patchIndex,
long *  values,
unsigned long long *  numValuesInEachDimension,
unsigned long long *  offsetInEachDimension,
const unsigned int &  numArrayDimensions 
)

Get all the values of the instance which are supposed to be long ones.

Parameters
patchIndexPatch index.
valuesThe array (pointer) of values which must be preallocated.
numValuesThe number of property values ordered by dimension of the array to write.
offsetValuesThe offset values ordered by dimension of the array to write.
numArrayDimensionsThe number of dimensions of the array to write.
long AbstractValuesProperty::getNullValueOfPatch ( const unsigned int &  patchIndex)

Get the null value of the instance which are supposed to be integer ones. Not for continuous property values.

Returns
the null value
unsigned int AbstractValuesProperty::getPatchCount ( ) const

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

std::string AbstractValuesProperty::getPathInHdfFileOfPatch ( const unsigned int &  patchIndex,
LONG64 &  nullValue 
) const
protected

Get the path in the hdf file of the dataset which contains the property values of a particular patch.

Parameters
patchIndexThe corresponding patch index of the dataset to get.
nullValueIf possible, this function will set this parameter to the Resqml null value of the dataset. If not, it will return long.min
short AbstractValuesProperty::getShortValuesOfPatch ( const unsigned int &  patchIndex,
short *  values 
)

Get all the values of the instance which are supposed to be short ones. Not for continuous property values.

Returns
the null value
unsigned char AbstractValuesProperty::getUCharValuesOfPatch ( const unsigned int &  patchIndex,
unsigned char *  values 
)

Get all the values of the instance which are supposed to be unsigned char ones. Not for continuous property values.

Returns
the null value
unsigned int AbstractValuesProperty::getUIntValuesOfPatch ( const unsigned int &  patchIndex,
unsigned int *  values 
)

Get all the values of the instance which are supposed to be unsigned int ones. Not for continuous property values.

Returns
the null value
unsigned long AbstractValuesProperty::getULongValuesOfPatch ( const unsigned int &  patchIndex,
unsigned long *  values 
)

Get all the values of the instance which are supposed to be unsigned long ones. Not for continuous property values.

Returns
the null value
unsigned short AbstractValuesProperty::getUShortValuesOfPatch ( const unsigned int &  patchIndex,
unsigned short *  values 
)

Get all the values of the instance which are supposed to be unsigned short ones. Not for continuous property values.

Returns
the null value
unsigned int AbstractValuesProperty::getValuesCountOfDimensionOfPatch ( const unsigned int &  dimIndex,
const unsigned int &  patchIndex 
)

Get the count of values on a specific dimension of the underlying HDF5 dataset of this property.

Parameters
dimIndexThe index of the dimension we want to know the values count in this property.
patchIndexThe index of the patch we want to know the values count in this property.
Returns
The number of values, 0 otherwise.
unsigned int AbstractValuesProperty::getValuesCountOfPatch ( const unsigned int &  patchIndex)

Get the count of all values contained into the underlying HDF5 dataset of this property for a particular patch.

AbstractValuesProperty::hdfDatatypeEnum AbstractValuesProperty::getValuesHdfDatatype ( ) const

Get the values datatype in the HDF dataset

void AbstractValuesProperty::pushBackFacet ( const gsoap_resqml2_0_1::resqml2__Facet &  facet,
const std::string &  facetValue 
)

Pushes back a new facet to this intance

void AbstractValuesProperty::pushBackLongHdf5SlabArray3dOfValues ( long *  values,
const unsigned int &  valueCountInFastestDim,
const unsigned int &  valueCountInMiddleDim,
const unsigned int &  valueCountInSlowestDim,
const unsigned int &  offsetInFastestDim,
const unsigned int &  offsetInMiddleDim,
const unsigned int &  offsetInSlowestDim,
resqml2::AbstractHdfProxy proxy 
)

Add a 3d array of explicit Long values to the property values.

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).
offsetInFastestDimThe offset to write in the fastest dimension (mainly I dimension).
offsetInMiddleDimThe offset value to write in the middle dimension (mainly J dimension).
offsetInSlowestDimThe offset value to write in the slowest dimension (mainly K dimension).
proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method.
void AbstractValuesProperty::pushBackLongHdf5SlabArrayOfValues ( long *  values,
unsigned long long *  numValues,
unsigned long long *  offsetValues,
const unsigned int &  numArrayDimensions,
resqml2::AbstractHdfProxy proxy 
)

Add an array (potentially multi dimensions) of explicit long values to the property values. This method is to be used along with createLongHdf5ArrayOfValues.

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.
offsetValuesThe offset values ordered by dimension of the array to write.
numArrayDimensionsThe number of dimensions of the array to write.
proxyThe HDF proxy where to write the property values. It must be already opened for writing and won't be closed in this method.
void AbstractValuesProperty::pushBackRefToExistingDataset ( resqml2::AbstractHdfProxy hdfProxy,
const bool &  isAnIntegerDataset,
const std::string &  dataset = "" 
)

Push back a new patch of values for this property where the values have not to be written in the HDF 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 defered in time.

Parameters
hdfProxyThe HDF5 proxy where the values are already or will be stored.
isAnIntegerDatasetIf false, indicates that this dataset contains some floating point values. If true, this dataset contains some integer values.
datasetIf not provided during the method call, the dataset will be named the same as the dataset naming convention of the fesapi :"/RESQML/" + prop->uuid + "/values_patch" + patchIndex;

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