9#ifndef H5EASY_BITS_VECTOR_HPP
10#define H5EASY_BITS_VECTOR_HPP
12#include "../H5Easy.hpp"
13#include "H5Easy_misc.hpp"
14#include "H5Easy_scalar.hpp"
23struct is_vector<std::vector<T>> : std::true_type {};
28struct io_impl<T, typename std::enable_if<is_vector<T>::value>::type> {
31 const std::string& path,
34 using value_type =
typename inspector<T>::base_type;
36 DataSet dataset = initDataset<value_type>(file, path, std::vector<size_t>(dims.begin(), dims.end()), options);
38 if (options.
flush()) {
44 inline static T load(
const File& file,
const std::string& path) {
52 const std::string& path,
53 const std::string& key,
56 using value_type =
typename inspector<T>::base_type;
58 std::vector<size_t> shape(dims.begin(), dims.end());
59 Attribute attribute = initAttribute<value_type>(file, path, key, shape, options);
60 attribute.
write(data);
61 if (options.
flush()) {
67 inline static T loadAttribute(
const File& file,
68 const std::string& path,
69 const std::string& key) {
Options for dumping data.
Definition H5Easy.hpp:112
bool flush() const
Check to flush.
Definition H5Easy_public.hpp:73
Attribute getAttribute(const std::string &attr_name) const
open an existing attribute with the name attr_name
Definition H5Annotate_traits_misc.hpp:69
Class representing an attribute of a dataset or group.
Definition H5Attribute.hpp:22
void write(const T &buffer)
Definition H5Attribute_misc.hpp:113
void read(T &array) const
Definition H5Attribute_misc.hpp:68
Class representing a dataset.
Definition H5DataSet.hpp:28
File class.
Definition H5File.hpp:25
DataSet getDataSet(const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps()) const
get an existing dataset in the current file
Definition H5Node_traits_misc.hpp:102
void flush(bool globalScope=true)
flush
Definition H5Object_misc.hpp:150
void write(const T &buffer)
Definition H5Slice_traits_misc.hpp:275
void read(T &array) const
Definition H5Slice_traits_misc.hpp:224
Definition H5Easy_scalar.hpp:24
Definition H5Easy_vector.hpp:21
Definition H5Utils.hpp:49