9 #ifndef H5PROPERTY_LIST_HPP
10 #define H5PROPERTY_LIST_HPP
14 #include <H5Ppublic.h>
45 template <PropertyType T>
69 void add(const P& property);
90 template <
typename F,
typename... Args>
91 void add(
const F& funct,
const Args&... args);
97 explicit Chunking(
const std::vector<hsize_t>& dims)
100 Chunking(
const std::initializer_list<hsize_t>& items)
101 :
Chunking(std::vector<hsize_t>{items}) {}
103 template <
typename... Args>
105 :
Chunking(std::vector<hsize_t>{item,
static_cast<hsize_t
>(args)...}) {}
113 void apply(hid_t hid)
const;
114 const std::vector<hsize_t> _dims;
124 void apply(hid_t hid)
const;
125 const unsigned _level;
134 void apply(hid_t hid)
const;
144 const size_t cacheSize,
145 const double w0 =
static_cast<double>(H5D_CHUNK_CACHE_W0_DEFAULT))
146 : _numSlots(numSlots)
147 , _cacheSize(cacheSize)
152 void apply(hid_t hid)
const;
153 const size_t _numSlots;
154 const size_t _cacheSize;
Definition: H5PropertyList.hpp:139
Caching(const size_t numSlots, const size_t cacheSize, const double w0=static_cast< double >(H5D_CHUNK_CACHE_W0_DEFAULT))
Definition: H5PropertyList.hpp:143
Definition: H5PropertyList.hpp:95
const std::vector< hsize_t > & getDimensions() const noexcept
Definition: H5PropertyList.hpp:107
Chunking(hsize_t item, Args... args)
Definition: H5PropertyList.hpp:104
Chunking(const std::vector< hsize_t > &dims)
Definition: H5PropertyList.hpp:97
Chunking(const std::initializer_list< hsize_t > &items)
Definition: H5PropertyList.hpp:100
Definition: H5PropertyList.hpp:117
Deflate(unsigned level)
Definition: H5PropertyList.hpp:119
Base HDF5 property List.
Definition: H5PropertyList.hpp:46
PropertyList() noexcept
Definition: H5PropertyList_misc.hpp:60
void _initializeIfNeeded()
Definition: H5PropertyList_misc.hpp:87
~PropertyList()
Definition: H5PropertyList_misc.hpp:79
hid_t getId() const
Definition: H5PropertyList.hpp:56
hid_t _hid
Definition: H5PropertyList.hpp:74
PropertyList(const PropertyList< T > &)=delete
constexpr PropertyType getType() const
Definition: H5PropertyList.hpp:54
PropertyList & operator=(const PropertyList< T > &)=delete
void add(const P &property)
Definition: H5PropertyList_misc.hpp:99
Definition: H5PropertyList.hpp:88
Definition: H5PropertyList.hpp:128
Definition: H5_definitions.hpp:15
PropertyType
Types of property lists.
Definition: H5PropertyList.hpp:24
PropertyList< PropertyType::DATASET_ACCESS > DataSetAccessProps
Definition: H5PropertyList.hpp:80
PropertyList< PropertyType::DATASET_CREATE > DataSetCreateProps
Definition: H5PropertyList.hpp:79