Fesapi 2.10.1.0
This project provides C++ classes which allow an easy access in import and export to the Energistics standards.
Loading...
Searching...
No Matches
eml2_0::HdfProxyMPI Class Referencefinal

#include <HdfProxyMPI.h>

Inheritance diagram for eml2_0::HdfProxyMPI:
eml2::HdfProxy eml2::AbstractHdfProxy eml2::EpcExternalPartReference common::AbstractObject

Public Member Functions

 HdfProxyMPI (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
 
 HdfProxyMPI (const common::DataObjectReference &dor)
 Constructor.
 
 HdfProxyMPI (common::DataObjectRepository *repo, const std::string &guid, const std::string &title, const std::string &packageDirAbsolutePath, const std::string &externalFilePath, common::DataObjectRepository::openingMode hdfPermissionAccess=common::DataObjectRepository::openingMode::READ_ONLY)
 
 HdfProxyMPI (gsoap_resqml2_0_1::_eml20__EpcExternalPartReference *fromGsoap)
 
 ~HdfProxyMPI ()=default
 
void open () final
 
void setMPICommunicator (MPI_Comm communicator)
 
void setCollectiveIO ()
 Set IO to collective.
 
void setIndependentIO ()
 Set IO to independent (default)
 
std::string getXmlNamespace () const final
 
- Public Member Functions inherited from eml2::HdfProxy
 HdfProxy (gsoap_resqml2_0_1::eml20__DataObjectReference *partialObject)
 
 HdfProxy (const common::DataObjectReference &dor)
 Constructor.
 
virtual ~HdfProxy ()
 
bool isOpened () const final
 
void close () final
 
common::AbstractObject::numericalDatatypeEnum getNumericalDatatype (const std::string &groupName) final
 
int getHdfDatatypeClassInDataset (const std::string &datasetName) final
 
void writeItemizedListOfList (const std::string &groupName, const std::string &name, common::AbstractObject::numericalDatatypeEnum cumulativeLengthDatatype, const void *cumulativeLength, uint64_t cumulativeLengthSize, common::AbstractObject::numericalDatatypeEnum elementsDatatype, const void *elements, uint64_t elementsSize) final
 
std::vector< uint32_t > getElementCountPerDimension (const std::string &datasetName) final
 
void setCompressionLevel (unsigned int newCompressionLevel) final
 
void writeArrayNd (const std::string &groupName, const std::string &name, common::AbstractObject::numericalDatatypeEnum datatype, const void *values, const uint64_t *numValuesInEachDimension, unsigned int numDimensions) final
 
void createArrayNd (const std::string &groupName, const std::string &name, common::AbstractObject::numericalDatatypeEnum datatype, const uint64_t *numValuesInEachDimension, unsigned int numDimensions) final
 
void writeArrayNdSlab (const std::string &groupName, const std::string &name, common::AbstractObject::numericalDatatypeEnum datatype, const void *values, const uint64_t *numValuesInEachDimension, const uint64_t *offsetValuesInEachDimension, unsigned int numDimensions) final
 
void writeGroupAttributes (const std::string &groupName, const std::vector< std::string > &attributeNames, const std::vector< std::string > &values) final
 
void writeGroupAttribute (const std::string &groupName, const std::string &attributeName, const std::vector< std::string > &values) final
 
void writeGroupAttributes (const std::string &groupName, const std::vector< std::string > &attributeNames, const std::vector< double > &values) final
 
void writeGroupAttributes (const std::string &groupName, const std::vector< std::string > &attributeNames, const std::vector< int > &values) final
 
void writeDatasetAttributes (const std::string &datasetName, const std::vector< std::string > &attributeNames, const std::vector< std::string > &values) final
 
void writeDatasetAttribute (const std::string &datasetName, const std::string &attributeName, const std::vector< std::string > &values) final
 
void writeDatasetAttributes (const std::string &datasetName, const std::vector< std::string > &attributeNames, const std::vector< double > &values) final
 
void writeDatasetAttributes (const std::string &datasetName, const std::vector< std::string > &attributeNames, const std::vector< int > &values) final
 
std::string readStringAttribute (const std::string &obj_name, const std::string &attr_name) const final
 
std::vector< std::string > readStringArrayAttribute (const std::string &obj_name, const std::string &attr_name) const final
 
double readDoubleAttribute (const std::string &obj_name, const std::string &attr_name) const final
 
int64_t readInt64Attribute (const std::string &obj_name, const std::string &attr_name) const final
 
void readArrayNdOfDoubleValues (const std::string &datasetName, double *values) final
 
void readArrayNdOfDoubleValues (const std::string &datasetName, double *values, uint64_t const *numValuesInEachDimension, uint64_t const *offsetInEachDimension, unsigned int numDimensions) final
 
void readArrayNdOfDoubleValues (const std::string &datasetName, double *values, uint64_t const *blockCountPerDimension, uint64_t const *offsetInEachDimension, uint64_t const *strideInEachDimension, uint64_t const *blockSizeInEachDimension, unsigned int numDimensions) final
 
void selectArrayNdOfValues (const std::string &datasetName, uint64_t const *blockCountPerDimension, uint64_t const *offsetInEachDimension, uint64_t const *strideInEachDimension, uint64_t const *blockSizeInEachDimension, unsigned int numDimensions, bool newSelection, hdf5_hid_t &dataset, hdf5_hid_t &filespace) final
 
void readArrayNdOfDoubleValues (hdf5_hid_t dataset, hdf5_hid_t filespace, void *values, uint64_t slabSize) final
 
void readArrayNdOfFloatValues (const std::string &datasetName, float *values) final
 
void readArrayNdOfFloatValues (const std::string &datasetName, float *values, uint64_t const *numValuesInEachDimension, uint64_t const *offsetInEachDimension, unsigned int numDimensions) final
 
void readArrayNdOfInt64Values (const std::string &datasetName, int64_t *values) final
 
void readArrayNdOfInt64Values (const std::string &datasetName, int64_t *values, uint64_t const *numValuesInEachDimension, uint64_t const *offsetInEachDimension, unsigned int numDimensions) final
 
void readArrayNdOfUInt64Values (const std::string &datasetName, uint64_t *values) final
 
void readArrayNdOfIntValues (const std::string &datasetName, int *values) final
 
void readArrayNdOfIntValues (const std::string &datasetName, int *values, uint64_t const *numValuesInEachDimension, uint64_t const *offsetInEachDimension, unsigned int numDimensions) final
 
void readArrayNdOfUIntValues (const std::string &datasetName, unsigned int *values) final
 
void readArrayNdOfShortValues (const std::string &datasetName, short *values) final
 
void readArrayNdOfUShortValues (const std::string &datasetName, unsigned short *values) final
 
void readArrayNdOfInt8Values (const std::string &datasetName, int8_t *values) final
 
void readArrayNdOfUInt8Values (const std::string &datasetName, uint8_t *values) final
 
bool exist (const std::string &absolutePathInHdfFile) const final
 
bool isCompressed (const std::string &datasetName) final
 
std::vector< uint32_t > getElementCountPerChunkDimension (const std::string &datasetName) final
 
- Public Member Functions inherited from eml2::AbstractHdfProxy
virtual ~AbstractHdfProxy ()=default
 
void setRootPath (const std::string &rootPath)
 
void setRelativePath (const std::string &relPath)
 
void setOpeningMode (common::DataObjectRepository::openingMode openingMode_)
 
const std::string & getRelativePath () const
 
uint64_t getDimensionCount (const std::string &datasetName)
 
uint64_t getElementCount (const std::string &datasetName)
 
void writeArrayNdOfFloatValues (const std::string &groupName, const std::string &name, const float *values, const uint64_t *numValuesInEachDimension, unsigned int numDimensions)
 
void writeArrayNdOfDoubleValues (const std::string &groupName, const std::string &name, const double *values, const uint64_t *numValuesInEachDimension, unsigned int numDimensions)
 
void writeArrayNdOfInt8Values (const std::string &groupName, const std::string &name, const int8_t *values, const uint64_t *numValuesInEachDimension, unsigned int numDimensions)
 
void writeArrayNdOfIntValues (const std::string &groupName, const std::string &name, const int *values, const uint64_t *numValuesInEachDimension, unsigned int numDimensions)
 
void writeArrayNdOfInt64Values (const std::string &groupName, const std::string &name, const int64_t *values, const uint64_t *numValuesInEachDimension, unsigned int numDimensions)
 
void writeArrayNdOfUInt64Values (const std::string &groupName, const std::string &name, const uint64_t *values, const uint64_t *numValuesInEachDimension, unsigned int numDimensions)
 
void setMaxChunkSize (unsigned int newMaxChunkSize)
 
void initGsoapProxy (common::DataObjectRepository *repo, const std::string &guid, const std::string &title, unsigned int emlVersion)
 
- Public Member Functions inherited from eml2::EpcExternalPartReference
virtual ~EpcExternalPartReference ()=default
 
virtual std::string getXmlTag () const final
 
- 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)
 
gsoap_resqml2_0_1::eml20__AbstractCitedDataObject * getEml20GsoapProxy () const
 
void setGsoapProxy (gsoap_resqml2_0_1::eml20__AbstractCitedDataObject *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_3::eml23__DataObjectReference * newEml23Reference () const
 
gsoap_resqml2_0_1::resqml20__ContactElementReference * newContactElementReference2_0_1 () const
 
gsoap_eml2_3::resqml22__ContactElement * newContactElementReference2_2 () const
 
common::DataObjectRepositorygetRepository () const
 
virtual std::string getXmlNamespaceVersion () const
 
virtual std::string getContentType () const
 
virtual std::string getQualifiedType () const
 
virtual std::string getPartNameInEpcDocument () const
 
std::string serializeIntoString ()
 
void addAlias (const std::string &authority, const std::string &title)
 
uint64_t getAliasCount () const
 
std::string getAliasAuthorityAtIndex (uint64_t index) const
 
std::string getAliasTitleAtIndex (uint64_t index) const
 
std::vector< eml2::Activity * > getActivitySet () const
 
uint64_t getActivityCount () const
 
eml2::ActivitygetActivity (uint64_t 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
 
std::string buildEtp12Uri () const
 
void setUriSource (const std::string &uriSource)
 
const std::string & getUriSource () const
 
std::string getEpcSourceFolder () const
 
void changeToPartialObject ()
 

Static Public Attributes

static constexpr char const * XML_NS = "eml20"
 
- Static Public Attributes inherited from eml2::AbstractHdfProxy
static constexpr char const * CUMULATIVE_LENGTH_DS_NAME = "cumulativeLength"
 
static constexpr char const * ELEMENTS_DS_NAME = "elements"
 
static constexpr char const * MIME_TYPE = "application/x-hdf5"
 
- Static Public Attributes inherited from eml2::EpcExternalPartReference
static constexpr char const * XML_TAG = "EpcExternalPartReference"
 

Additional Inherited Members

- Public Types inherited from common::AbstractObject
enum class  numericalDatatypeEnum {
  UNKNOWN = 0 , DOUBLE = 1 , FLOAT = 2 , INT64 = 3 ,
  UINT64 = 4 , INT32 = 5 , UINT32 = 6 , INT16 = 7 ,
  UINT16 = 8 , INT8 = 9 , UINT8 = 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

This class allows to open an HDF5 file using Parallel HDF5 (MPI) for writing with multiple processes

Constructor & Destructor Documentation

◆ HdfProxyMPI() [1/4]

eml2_0::HdfProxyMPI::HdfProxyMPI ( gsoap_resqml2_0_1::eml20__DataObjectReference * partialObject)
inline

Only to be used in partial transfer context

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

◆ HdfProxyMPI() [2/4]

eml2_0::HdfProxyMPI::HdfProxyMPI ( const common::DataObjectReference & dor)
inline

Constructor.

Parameters
dorThe dor.

◆ HdfProxyMPI() [3/4]

eml2_0::HdfProxyMPI::HdfProxyMPI ( common::DataObjectRepository * repo,
const std::string & guid,
const std::string & title,
const std::string & packageDirAbsolutePath,
const std::string & externalFilePath,
common::DataObjectRepository::openingMode hdfPermissionAccess = common::DataObjectRepository::openingMode::READ_ONLY )
inline

Creates an instance of this class in a gsoap context for writing.

Parameters
[in,out]repoThe repo where the underlying gsoap proxy is going to be created.
guidThe guid of the underlying gsoap proxy to be created.
titleThe title of the underlying gsoap proxy to be created.
packageDirAbsolutePathThe directory where the EPC document is stored. Must end with a slash or back- slash.
externalFilePathThe relative file path of the associated HDF file. It is relative to the location of the package.
hdfPermissionAccess(Optional) The hdf permission access.

◆ HdfProxyMPI() [4/4]

eml2_0::HdfProxyMPI::HdfProxyMPI ( gsoap_resqml2_0_1::_eml20__EpcExternalPartReference * fromGsoap)
inline

Hdf proxy

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

◆ ~HdfProxyMPI()

eml2_0::HdfProxyMPI::~HdfProxyMPI ( )
default

Destructor

Member Function Documentation

◆ getXmlNamespace()

std::string eml2_0::HdfProxyMPI::getXmlNamespace ( ) const
inlinefinalvirtual

Get the standard XML namespace for serializing this data object.

Implements common::AbstractObject.

◆ open()

void eml2_0::HdfProxyMPI::open ( )
finalvirtual

Open the file for reading.

Reimplemented from eml2::HdfProxy.

◆ setCollectiveIO()

void eml2_0::HdfProxyMPI::setCollectiveIO ( )

Set IO to collective.

necessary to write with compression enabled

◆ setMPICommunicator()

void eml2_0::HdfProxyMPI::setMPICommunicator ( MPI_Comm communicator)
inline

Set the MPI communicator to use

Member Data Documentation

◆ XML_NS

char const* eml2_0::HdfProxyMPI::XML_NS = "eml20"
staticconstexpr

The standard XML namespace for serializing this data object.


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