1
0
mirror of https://github.com/paboyle/Grid.git synced 2024-11-10 07:55:35 +00:00

HDF5: direct access to group for custom operations

This commit is contained in:
Antonin Portelli 2018-04-20 17:13:21 +01:00
parent c11a3ca0a7
commit 94edf9cf8b
2 changed files with 12 additions and 0 deletions

View File

@ -55,6 +55,11 @@ void Hdf5Writer::writeDefault(const std::string &s, const char *x)
writeDefault(s, sx); writeDefault(s, sx);
} }
Group & Hdf5Writer::getGroup(void)
{
return group_;
}
// Reader implementation /////////////////////////////////////////////////////// // Reader implementation ///////////////////////////////////////////////////////
Hdf5Reader::Hdf5Reader(const std::string &fileName) Hdf5Reader::Hdf5Reader(const std::string &fileName)
: fileName_(fileName) : fileName_(fileName)
@ -103,3 +108,8 @@ void Hdf5Reader::readDefault(const std::string &s, std::string &x)
x.resize(strType.getSize()); x.resize(strType.getSize());
attribute.read(strType, &(x[0])); attribute.read(strType, &(x[0]));
} }
Group & Hdf5Reader::getGroup(void)
{
return group_;
}

View File

@ -38,6 +38,7 @@ namespace Grid
template <typename U> template <typename U>
typename std::enable_if<!element<std::vector<U>>::is_number, void>::type typename std::enable_if<!element<std::vector<U>>::is_number, void>::type
writeDefault(const std::string &s, const std::vector<U> &x); writeDefault(const std::string &s, const std::vector<U> &x);
H5NS::Group & getGroup(void);
private: private:
template <typename U> template <typename U>
void writeSingleAttribute(const U &x, const std::string &name, void writeSingleAttribute(const U &x, const std::string &name,
@ -65,6 +66,7 @@ namespace Grid
template <typename U> template <typename U>
typename std::enable_if<!element<std::vector<U>>::is_number, void>::type typename std::enable_if<!element<std::vector<U>>::is_number, void>::type
readDefault(const std::string &s, std::vector<U> &x); readDefault(const std::string &s, std::vector<U> &x);
H5NS::Group & getGroup(void);
private: private:
template <typename U> template <typename U>
void readSingleAttribute(U &x, const std::string &name, void readSingleAttribute(U &x, const std::string &name,