6 #ifndef ECHELON_HDF5_PRECURSOR_DATASPACE_HPP 7 #define ECHELON_HDF5_PRECURSOR_DATASPACE_HPP 19 constexpr
auto unlimited = H5S_UNLIMITED;
24 hyperslab_block(std::vector<hsize_t> start_, std::vector<hsize_t> opposite_);
26 const std::vector<hsize_t>& start()
const;
27 const std::vector<hsize_t>& dims()
const;
30 std::vector<hsize_t> start_;
31 std::vector<hsize_t> dims_;
38 explicit dataspace(hid_t dataspace_id_);
39 explicit dataspace(
const std::vector<hsize_t>& dims);
40 dataspace(
const std::vector<hsize_t>& dims,
const std::vector<hsize_t>& max_dims);
43 dataspace(
const dataspace& other);
44 dataspace(dataspace&& other);
46 dataspace& operator=(
const dataspace& other);
47 dataspace& operator=(dataspace&& other);
49 hssize_t select_npoints()
const;
51 void select_elements(H5S_seloper_t op, std::size_t num_elements,
52 const std::vector<hsize_t>& coord);
53 void select_hyperslab(H5S_seloper_t op,
const std::vector<hsize_t>& start,
54 const std::vector<hsize_t>& stride,
const std::vector<hsize_t>& count,
55 const std::vector<hsize_t>& block);
57 void select_hyperslab(H5S_seloper_t op,
const std::vector<hsize_t>& start,
58 const std::vector<hsize_t>& stride,
const std::vector<hsize_t>& count);
60 void select_hyperslab(H5S_seloper_t op,
const std::vector<hsize_t>& start,
61 const std::vector<hsize_t>& count);
63 hssize_t get_select_hyperslab_nblocks()
const;
64 std::vector<hyperslab_block> get_select_hyperslab_blocks()
const;
66 std::vector<hsize_t> get_simple_extent_dims()
const;
67 std::size_t get_simple_extent_ndims()
const;
echelon's core namespace
Definition: attribute.cpp:10