Tatooine
Public Types | Public Member Functions | Private Attributes | List of all members
tatooine::hdf5::dataset< T > Struct Template Reference

#include <hdf5.h>

Inheritance diagram for tatooine::hdf5::dataset< T >:
[legend]
Collaboration diagram for tatooine::hdf5::dataset< T >:
[legend]

Public Types

using this_type = dataset< T >
 
using value_type = T
 

Public Member Functions

template<typename... Size>
 dataset (hid_t const parent_id, std::string const &name, Size const ... size)
 
 dataset (dataset const &other)
 
 dataset (dataset &&) noexcept=default
 
auto operator= (dataset const &other) -> dataset &
 
auto operator= (dataset &&) noexcept -> dataset &=default
 
 ~dataset ()
 
auto resize (hsize_t const extent)
 
auto resize (std::vector< hsize_t > const &extent)
 
template<std::size_t N>
auto resize (std::array< hsize_t, N > const &extent)
 
template<integral Integral>
auto resize (std::vector< Integral > const &extent)
 
template<integral Integral, std::size_t N>
auto resize (std::array< Integral, N > const &extent)
 
template<typename... Size>
auto resize (Size const ... size)
 
auto resize_if_necessary (hsize_t const requested_size)
 
auto resize_if_necessary (std::vector< hsize_t > const &requested_size)
 
auto clear ()
 
auto write (hid_t mem_space_id, hid_t file_space_id, hid_t xfer_plist_id, const void *buf) const -> void
 
auto write (T const *data) -> void
 
auto write (std::vector< T > const &data) -> void
 
auto write (std::vector< T > const &data, hsize_t const offset) -> void
 
auto push_back (std::vector< T > const &data) -> void
 
auto push_back (T const &data) -> void
 
template<std::size_t N>
auto write (std::array< T, N > const &data) -> void
 
template<typename IndexOrder >
auto write (dynamic_multidim_array< T, IndexOrder > const &data) -> void
 
template<typename IndexOrder >
auto write (dynamic_multidim_array< T, IndexOrder > const &data, std::vector< std::size_t > const &offset) -> void
 
template<typename IndexOrder = x_fastest, integral... Is>
auto write (T const &data, Is const ... is) -> void
 
auto write (T const &data, std::vector< std::size_t > const &offset) -> void
 
auto write (T const &data, std::vector< hsize_t > offset) -> void
 
auto write (std::vector< T > const &data, std::vector< std::size_t > const &offset, std::vector< std::size_t > const &count) -> void
 
auto write (T const *data, std::vector< std::size_t > const &offset, std::vector< std::size_t > const &count) -> void
 
auto write (std::vector< T > const &data, std::vector< hsize_t > offset, std::vector< hsize_t > count) -> void
 
template<typename IndexOrder = x_fastest>
auto write (T const *data, std::vector< hsize_t > offset, std::vector< hsize_t > count) -> void
 
auto read (hid_t mem_space_id, hid_t file_space_id, hid_t xfer_plist_id, T *buf) const -> void
 
template<typename IndexOrder = x_fastest>
auto read () const
 
template<typename IndexOrder >
auto read (dynamic_multidim_array< T, IndexOrder > &arr) const
 
auto read_as_vector () const
 
auto read (std::vector< hsize_t > const &offset, std::vector< hsize_t > const &count, std::vector< T > &data) const
 
auto read (hsize_t const offset, hsize_t const count, std::vector< T > &data) const
 
template<integral Int0, integral Int1>
auto read_as_vector (std::vector< Int0 > const &offset, std::vector< Int1 > const &count) const
 
template<typename IndexOrder = x_fastest>
auto read (std::vector< T > &data) const
 
template<typename IndexOrder >
auto read (std::vector< std::size_t > const &offset, std::vector< std::size_t > const &count, dynamic_multidim_array< T, IndexOrder > &arr) const
 
template<typename IndexOrder = x_fastest>
requires (!is_same<hsize_t, std::size_t>)
auto read (std::vector< std::size_t > const &offset, std::vector< std::size_t > const &count) const
 
template<typename IndexOrder = x_fastest>
auto read (std::vector< hsize_t > const &offset, std::vector< hsize_t > const &count) const
 
template<typename IndexOrder >
auto read (std::vector< hsize_t > offset, std::vector< hsize_t > count, dynamic_multidim_array< T, IndexOrder > &arr) const -> auto &
 
auto read (integral auto const ... is) const
 
auto operator[] (hsize_t const i) const
 
auto num_dimensions () const -> std::size_t
 
auto read_lazy (std::vector< std::size_t > const &chunk_size)
 
auto name () const -> auto const &
 
auto dataspace () const
 
auto flush ()
 
auto size () const
 
- Public Member Functions inherited from tatooine::hdf5::id_holder
 id_holder (hid_t const id)
 
auto id () const
 
auto set_id (hid_t const id)
 
- Public Member Functions inherited from tatooine::hdf5::attribute_creator< dataset< T > >
auto as_id_holder () -> auto &
 
auto as_id_holder () const -> auto const &
 
auto attribute (char const *name) const
 
auto attribute (std::string const &name) const
 

Private Attributes

hid_t m_parent_id
 
std::string m_name
 

Member Typedef Documentation

◆ this_type

template<typename T >
using tatooine::hdf5::dataset< T >::this_type = dataset<T>

◆ value_type

template<typename T >
using tatooine::hdf5::dataset< T >::value_type = T

Constructor & Destructor Documentation

◆ dataset() [1/3]

template<typename T >
template<typename... Size>
tatooine::hdf5::dataset< T >::dataset ( hid_t const  parent_id,
std::string const &  name,
Size const ...  size 
)
inline

◆ dataset() [2/3]

template<typename T >
tatooine::hdf5::dataset< T >::dataset ( dataset< T > const &  other)
inline

◆ dataset() [3/3]

template<typename T >
tatooine::hdf5::dataset< T >::dataset ( dataset< T > &&  )
defaultnoexcept

◆ ~dataset()

template<typename T >
tatooine::hdf5::dataset< T >::~dataset ( )
inline

Member Function Documentation

◆ clear()

template<typename T >
auto tatooine::hdf5::dataset< T >::clear ( )
inline

◆ dataspace()

template<typename T >
auto tatooine::hdf5::dataset< T >::dataspace ( ) const
inline

◆ flush()

template<typename T >
auto tatooine::hdf5::dataset< T >::flush ( )
inline

◆ name()

template<typename T >
auto tatooine::hdf5::dataset< T >::name ( ) const -> auto const&
inline

◆ num_dimensions()

template<typename T >
auto tatooine::hdf5::dataset< T >::num_dimensions ( ) const -> std::size_t
inline

◆ operator=() [1/2]

template<typename T >
auto tatooine::hdf5::dataset< T >::operator= ( dataset< T > &&  ) -> dataset &=default
defaultnoexcept

◆ operator=() [2/2]

template<typename T >
auto tatooine::hdf5::dataset< T >::operator= ( dataset< T > const &  other) -> dataset&
inline

◆ operator[]()

template<typename T >
auto tatooine::hdf5::dataset< T >::operator[] ( hsize_t const  i) const
inline

◆ push_back() [1/2]

template<typename T >
auto tatooine::hdf5::dataset< T >::push_back ( std::vector< T > const &  data) -> void
inline

◆ push_back() [2/2]

template<typename T >
auto tatooine::hdf5::dataset< T >::push_back ( T const &  data) -> void
inline

◆ read() [1/11]

template<typename T >
template<typename IndexOrder = x_fastest>
auto tatooine::hdf5::dataset< T >::read ( ) const
inline

◆ read() [2/11]

template<typename T >
template<typename IndexOrder >
auto tatooine::hdf5::dataset< T >::read ( dynamic_multidim_array< T, IndexOrder > &  arr) const
inline

◆ read() [3/11]

template<typename T >
auto tatooine::hdf5::dataset< T >::read ( hid_t  mem_space_id,
hid_t  file_space_id,
hid_t  xfer_plist_id,
T *  buf 
) const -> void
inline

◆ read() [4/11]

template<typename T >
auto tatooine::hdf5::dataset< T >::read ( hsize_t const  offset,
hsize_t const  count,
std::vector< T > &  data 
) const
inline

◆ read() [5/11]

template<typename T >
auto tatooine::hdf5::dataset< T >::read ( integral auto const ...  is) const
inline

◆ read() [6/11]

template<typename T >
template<typename IndexOrder = x_fastest>
auto tatooine::hdf5::dataset< T >::read ( std::vector< hsize_t > const &  offset,
std::vector< hsize_t > const &  count 
) const
inline

◆ read() [7/11]

template<typename T >
auto tatooine::hdf5::dataset< T >::read ( std::vector< hsize_t > const &  offset,
std::vector< hsize_t > const &  count,
std::vector< T > &  data 
) const
inline

◆ read() [8/11]

template<typename T >
template<typename IndexOrder >
auto tatooine::hdf5::dataset< T >::read ( std::vector< hsize_t >  offset,
std::vector< hsize_t >  count,
dynamic_multidim_array< T, IndexOrder > &  arr 
) const -> auto&
inline

◆ read() [9/11]

template<typename T >
template<typename IndexOrder = x_fastest>
requires (!is_same<hsize_t, std::size_t>)
auto tatooine::hdf5::dataset< T >::read ( std::vector< std::size_t > const &  offset,
std::vector< std::size_t > const &  count 
) const
inline

◆ read() [10/11]

template<typename T >
template<typename IndexOrder >
auto tatooine::hdf5::dataset< T >::read ( std::vector< std::size_t > const &  offset,
std::vector< std::size_t > const &  count,
dynamic_multidim_array< T, IndexOrder > &  arr 
) const
inline

◆ read() [11/11]

template<typename T >
template<typename IndexOrder = x_fastest>
auto tatooine::hdf5::dataset< T >::read ( std::vector< T > &  data) const
inline

◆ read_as_vector() [1/2]

template<typename T >
auto tatooine::hdf5::dataset< T >::read_as_vector ( ) const
inline

◆ read_as_vector() [2/2]

template<typename T >
template<integral Int0, integral Int1>
auto tatooine::hdf5::dataset< T >::read_as_vector ( std::vector< Int0 > const &  offset,
std::vector< Int1 > const &  count 
) const
inline

◆ read_lazy()

template<typename T >
auto tatooine::hdf5::dataset< T >::read_lazy ( std::vector< std::size_t > const &  chunk_size)
inline

◆ resize() [1/6]

template<typename T >
auto tatooine::hdf5::dataset< T >::resize ( hsize_t const  extent)
inline

◆ resize() [2/6]

template<typename T >
template<typename... Size>
auto tatooine::hdf5::dataset< T >::resize ( Size const ...  size)
inline

◆ resize() [3/6]

template<typename T >
template<std::size_t N>
auto tatooine::hdf5::dataset< T >::resize ( std::array< hsize_t, N > const &  extent)
inline

◆ resize() [4/6]

template<typename T >
template<integral Integral, std::size_t N>
auto tatooine::hdf5::dataset< T >::resize ( std::array< Integral, N > const &  extent)
inline

◆ resize() [5/6]

template<typename T >
auto tatooine::hdf5::dataset< T >::resize ( std::vector< hsize_t > const &  extent)
inline

◆ resize() [6/6]

template<typename T >
template<integral Integral>
auto tatooine::hdf5::dataset< T >::resize ( std::vector< Integral > const &  extent)
inline

◆ resize_if_necessary() [1/2]

template<typename T >
auto tatooine::hdf5::dataset< T >::resize_if_necessary ( hsize_t const  requested_size)
inline

◆ resize_if_necessary() [2/2]

template<typename T >
auto tatooine::hdf5::dataset< T >::resize_if_necessary ( std::vector< hsize_t > const &  requested_size)
inline

◆ size()

template<typename T >
auto tatooine::hdf5::dataset< T >::size ( ) const
inline

◆ write() [1/14]

template<typename T >
template<typename IndexOrder >
auto tatooine::hdf5::dataset< T >::write ( dynamic_multidim_array< T, IndexOrder > const &  data) -> void
inline

◆ write() [2/14]

template<typename T >
template<typename IndexOrder >
auto tatooine::hdf5::dataset< T >::write ( dynamic_multidim_array< T, IndexOrder > const &  data,
std::vector< std::size_t > const &  offset 
) -> void
inline

◆ write() [3/14]

template<typename T >
auto tatooine::hdf5::dataset< T >::write ( hid_t  mem_space_id,
hid_t  file_space_id,
hid_t  xfer_plist_id,
const void *  buf 
) const -> void
inline

◆ write() [4/14]

template<typename T >
template<std::size_t N>
auto tatooine::hdf5::dataset< T >::write ( std::array< T, N > const &  data) -> void
inline

◆ write() [5/14]

template<typename T >
auto tatooine::hdf5::dataset< T >::write ( std::vector< T > const &  data) -> void
inline

◆ write() [6/14]

template<typename T >
auto tatooine::hdf5::dataset< T >::write ( std::vector< T > const &  data,
hsize_t const  offset 
) -> void
inline

◆ write() [7/14]

template<typename T >
auto tatooine::hdf5::dataset< T >::write ( std::vector< T > const &  data,
std::vector< hsize_t >  offset,
std::vector< hsize_t >  count 
) -> void
inline

◆ write() [8/14]

template<typename T >
auto tatooine::hdf5::dataset< T >::write ( std::vector< T > const &  data,
std::vector< std::size_t > const &  offset,
std::vector< std::size_t > const &  count 
) -> void
inline

◆ write() [9/14]

template<typename T >
template<typename IndexOrder = x_fastest, integral... Is>
auto tatooine::hdf5::dataset< T >::write ( T const &  data,
Is const ...  is 
) -> void
inline

◆ write() [10/14]

template<typename T >
auto tatooine::hdf5::dataset< T >::write ( T const &  data,
std::vector< hsize_t >  offset 
) -> void
inline

◆ write() [11/14]

template<typename T >
auto tatooine::hdf5::dataset< T >::write ( T const &  data,
std::vector< std::size_t > const &  offset 
) -> void
inline

◆ write() [12/14]

template<typename T >
auto tatooine::hdf5::dataset< T >::write ( T const *  data) -> void
inline

◆ write() [13/14]

template<typename T >
template<typename IndexOrder = x_fastest>
auto tatooine::hdf5::dataset< T >::write ( T const *  data,
std::vector< hsize_t >  offset,
std::vector< hsize_t >  count 
) -> void
inline

◆ write() [14/14]

template<typename T >
auto tatooine::hdf5::dataset< T >::write ( T const *  data,
std::vector< std::size_t > const &  offset,
std::vector< std::size_t > const &  count 
) -> void
inline

Member Data Documentation

◆ m_name

template<typename T >
std::string tatooine::hdf5::dataset< T >::m_name
private

◆ m_parent_id

template<typename T >
hid_t tatooine::hdf5::dataset< T >::m_parent_id
private

The documentation for this struct was generated from the following file: