23 #ifndef PARALLELDATACOLLECTOR_HPP 24 #define PARALLELDATACOLLECTOR_HPP 33 #include "splash/IParallelDataCollector.hpp" 35 #include "splash/DCException.hpp" 36 #include "splash/sdc_defines.hpp" 37 #include "splash/pdc_defines.hpp" 38 #include "splash/core/HandleMgr.hpp" 57 void setFileAccessParams(hid_t& fileAccProperties);
67 static std::string getExceptionString(std::string func, std::string msg,
68 const char *info = NULL);
72 static void listFilesInDir(
const std::string baseFilename, std::set<int32_t> &ids)
75 hid_t openGroup(DCGroup& group, int32_t
id,
const char* dataName)
throw (
DCException);
88 bool enableCompression;
98 FST_CLOSED, FST_WRITING, FST_READING, FST_CREATING
107 hid_t fileAccProperties;
110 FileStatusType fileStatus;
113 std::string baseFilename;
115 static void writeHeader(hid_t fHandle, uint32_t
id,
118 static void fileCreateCallback(H5Handle handle, uint32_t index,
121 static void fileOpenCallback(H5Handle handle, uint32_t index,
124 void openCreate(
const char *filename,
127 void openRead(
const char *filename,
130 void openWrite(
const char *filename,
133 void readCompleteDataSet(H5Handle h5File,
143 void readDataSet(H5Handle h5File,
164 void gatherMPIWrites(
int rank,
const Dimensions localSize,
174 size_t getNDims(H5Handle h5File,
178 void reserveInternal(int32_t
id,
195 uint32_t maxFileHandles);
202 void open(
const char *filename,
215 void write(int32_t
id,
222 void write(int32_t
id,
254 void remove(int32_t id,
266 SPLASH_DEPRECATED(
"Use safer readGlobalAttributeInfo")
284 const char *dataName,
285 const char *attrName,
288 SPLASH_DEPRECATED(
"Use safer readAttributeInfo")
290 const char *dataName,
291 const char *attrName,
297 const char *dataName,
298 const char *attrName,
303 const char *dataName,
304 const char *attrName,
309 void read(int32_t
id,
314 void read(int32_t
id,
339 void read(int32_t
id,
360 void read(int32_t
id,
375 SPLASH_DEPRECATED(
"Use safer readGlobalAttributeInfo")
void createReference(int32_t srcID, const char *srcName, int32_t dstID, const char *dstName)
void readAttribute(int32_t id, const char *dataName, const char *attrName, void *buf, Dimensions *mpiPosition=NULL)
void open(const char *filename, FileCreationAttr &attr)
CollectionType * readMeta(int32_t id, const char *name, const Dimensions dstBuffer, const Dimensions dstOffset, Dimensions &sizeRead)
void append(int32_t id, const Dimensions size, uint32_t rank, const Dimensions globalOffset, const char *name, const void *buf)
AttributeInfo readGlobalAttributeInfo(int32_t id, const char *name, Dimensions *mpiPosition=NULL)
void readGlobalAttribute(int32_t id, const char *name, void *buf)
void writeGlobalAttribute(int32_t id, const CollectionType &type, const char *name, const void *buf)
AttributeInfo readAttributeInfo(int32_t id, const char *dataName, const char *attrName, Dimensions *mpiPosition=NULL)
void getEntriesForID(int32_t id, DCEntry *entries, size_t *count)
void getEntryIDs(int32_t *ids, size_t *count)
void write(int32_t id, const CollectionType &type, uint32_t rank, const Selection select, const char *name, const void *buf)
void read(int32_t id, const char *name, Dimensions &sizeRead, void *buf)
ParallelDataCollector(MPI_Comm comm, MPI_Info info, const Dimensions topology, uint32_t maxFileHandles)
void reserve(int32_t id, const Dimensions globalSize, uint32_t rank, const CollectionType &type, const char *name)
void getMPISize(Dimensions &mpiSize)
void writeAttribute(int32_t id, const CollectionType &type, const char *dataName, const char *attrName, const void *buf)
virtual ~ParallelDataCollector()