24#ifdef XTENSOR_VERSION_MAJOR
31#include <xtensor/xarray.hpp>
32#include <xtensor/xtensor.hpp>
36#ifdef EIGEN_WORLD_VERSION
47#ifdef CV_MAJOR_VERSION
54#include <opencv2/opencv.hpp>
96 explicit Compression(
bool enable =
true);
103 Compression(T level);
107 inline unsigned get()
const;
110 unsigned m_compression_level;
125 DumpOptions() =
default;
130 template <
class... Args>
131 DumpOptions(Args... args) {
138 inline void set(DumpMode mode);
143 inline void set(Flush mode);
148 inline void set(
const Compression& level);
154 template <
class T,
class... Args>
155 inline void set(T arg, Args... args);
161 inline void setChunkSize(
const std::vector<T>& shape);
166 inline void setChunkSize(std::initializer_list<size_t> shape);
171 inline bool overwrite()
const;
176 inline bool flush()
const;
181 inline bool compress()
const;
186 inline unsigned getCompressionLevel()
const;
192 inline bool isChunked()
const;
197 inline std::vector<hsize_t> getChunkSize()
const;
200 bool m_overwrite =
false;
202 unsigned m_compression_level = 0;
203 std::vector<hsize_t> m_chunk_size = {};
213inline size_t getSize(
const File& file,
const std::string& path);
222inline std::vector<size_t>
getShape(
const File& file,
const std::string& path);
235inline DataSet
dump(File& file,
236 const std::string& path,
238 DumpMode mode = DumpMode::Create);
251inline DataSet
dump(File& file,
const std::string& path,
const T& data,
const DumpOptions& options);
264inline DataSet
dump(File& file,
265 const std::string& path,
267 const std::vector<size_t>& idx);
280inline DataSet
dump(File& file,
281 const std::string& path,
283 const std::initializer_list<size_t>& idx);
297inline DataSet
dump(File& file,
298 const std::string& path,
300 const std::vector<size_t>& idx,
301 const DumpOptions& options);
315inline DataSet
dump(File& file,
316 const std::string& path,
318 const std::initializer_list<size_t>& idx,
319 const DumpOptions& options);
331inline T
load(
const File& file,
const std::string& path,
const std::vector<size_t>& idx);
342inline T
load(
const File& file,
const std::string& path);
357 const std::string& path,
358 const std::string& key,
360 DumpMode mode = DumpMode::Create);
375 const std::string& path,
376 const std::string& key,
378 const DumpOptions& options);
390inline T
loadAttribute(
const File& file,
const std::string& path,
const std::string& key);
create an HDF5 DataType from a C++ type
Definition H5DataType.hpp:189
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
Definition H5PropertyList.hpp:503
Class representing a dataset.
Definition H5DataSet.hpp:30
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:39
Definition H5PropertyList.hpp:522
Basic HighFive Exception class.
Definition H5Exception.hpp:23
File class.
Definition H5File.hpp:24
HDF5 property Lists.
Definition H5PropertyList.hpp:160
Definition H5PropertyList.hpp:550
Definition H5Easy_Eigen.hpp:17
size_t getSize(const File &file, const std::string &path)
Definition H5Easy_public.hpp:82
T loadAttribute(const File &file, const std::string &path, const std::string &key)
Definition H5Easy_public.hpp:166
DataSet dump(File &file, const std::string &path, const T &data, const DumpOptions &options)
Definition H5Easy_public.hpp:91
T load(const File &file, const std::string &path, const std::vector< size_t > &idx)
Definition H5Easy_public.hpp:138
std::vector< size_t > getShape(const File &file, const std::string &path)
Definition H5Easy_public.hpp:86
Attribute dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode)
Definition H5Easy_public.hpp:148
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24