6 #ifndef ECHELON_DATASET_DIMENSIONS_HPP 7 #define ECHELON_DATASET_DIMENSIONS_HPP 9 #include <echelon/type.hpp> 10 #include <echelon/dimension_scale.hpp> 12 #include <echelon/hdf5/group.hpp> 13 #include <echelon/hdf5/type_factory.hpp> 56 std::string
label()
const;
62 void relabel(
const std::string& new_label);
82 using iterator = std::vector<dimension>::iterator;
98 return dimensions_[index];
109 return dimensions_[index];
116 return dimensions_.begin();
123 return dimensions_.end();
130 return dimensions_.begin();
137 return dimensions_.end();
141 std::vector<dimension> dimensions_;
echelon's core namespace
Definition: attribute.cpp:10
const_iterator begin() const
Iterator pointing to the first dimension.
Definition: dataset_dimensions.hpp:128
Accessor class for the dimensions of a dataset.
Definition: dataset_dimensions.hpp:75
std::vector< dimension >::iterator iterator
Type of the iterator over all dataset dimensions.
Definition: dataset_dimensions.hpp:82
iterator end()
Iterator pointing just after the last dimension.
Definition: dataset_dimensions.hpp:121
A handle to an HDF5 type.
Definition: type.hpp:21
A handle to an HDF5 group object.
Definition: hdf5/group.hpp:161
dimension_scale attach_dimension_scale(const std::string &name)
Attach a new dimension scale to this dimension.
Definition: dataset_dimensions.hpp:49
const_iterator end() const
Iterator pointing just after the last dimension.
Definition: dataset_dimensions.hpp:135
const dimension & operator[](std::size_t index) const
Access a dimension by index.
Definition: dataset_dimensions.hpp:107
hsize_t extend() const
The extend of the dimension.
Definition: dataset_dimensions.cpp:52
std::string label() const
The label of the dimension.
Definition: dataset_dimensions.cpp:38
void relabel(const std::string &new_label)
Relabel the dimension.
Definition: dataset_dimensions.cpp:45
std::vector< dimension >::const_iterator const_iterator
Type of the iterator over all dataset dimensions.
Definition: dataset_dimensions.hpp:86
Handle to a dataset dimension.
Definition: dataset_dimensions.hpp:25
A handle to an echelon dataset.
Definition: dataset.hpp:33
A handle to a dimension scale.
Definition: dimension_scale.hpp:21
dimension_scale attach_dimension_scale(const std::string &name, const type &datatype)
Attach a new dimension scale to this dimension.
Definition: dataset_dimensions.cpp:20
iterator begin()
Iterator pointing to the first dimension.
Definition: dataset_dimensions.hpp:114
dimension & operator[](std::size_t index)
Access a dimension by index.
Definition: dataset_dimensions.hpp:96