14 #ifndef QMCPLUSPLUS_HDF_DATASPACE_TRAITS_H    15 #define QMCPLUSPLUS_HDF_DATASPACE_TRAITS_H    43 template<
typename T, h
size_t RANK>
    47   hsize_t 
dims[RANK > 0 ? RANK : 1];
    49   static constexpr hsize_t 
rank = RANK;
    61 template<
typename T, h
size_t RANK>
    67   static constexpr 
int added_rank() { 
return Base::added_rank() + 1; }
    69   inline static auto get_address(std::complex<T>* a) { 
return Base::get_address(reinterpret_cast<T*>(a)); }
    70   inline static auto get_address(
const std::complex<T>* a) { 
return Base::get_address(reinterpret_cast<const T*>(a)); }
    75 template<
typename T, std::
size_t D, h
size_t RANK>
    82   static constexpr 
int added_rank() { 
return Base::added_rank() + 1; }
    83   inline static auto get_address(std::array<T, D>* a) { 
return Base::get_address(a->data()); }
    84   inline static auto get_address(
const std::array<T, D>* a) { 
return Base::get_address(a->data()); }
    89 template<
typename T, 
unsigned D, h
size_t RANK>
    96   static constexpr 
int added_rank() { 
return Base::added_rank() + 1; }
   103 template<
typename T, 
unsigned D, h
size_t RANK>
   114   static constexpr 
int added_rank() { 
return Base::added_rank() + 2; }
 static auto get_address(Tensor< T, D > *a)
 
static constexpr int added_rank()
 
static constexpr int added_rank()
 
default struct to define a h5 dataspace, any intrinsic type T 
 
helper functions for EinsplineSetBuilder 
 
static auto get_address(const TinyVector< T, D > *a)
 
static auto get_address(const T *a)
 
static auto get_address(const std::array< T, D > *a)
 
static auto get_address(TinyVector< T, D > *a)
 
static auto get_address(const std::complex< T > *a)
 
static auto get_address(std::complex< T > *a)
 
hsize_t dims[RANK > 0 ? RANK :1]
shape of the dataspace, protected for zero size array, hdf5 support scalar as rank = 0 ...
 
Tensor<T,D> class for D by D tensor. 
 
static auto get_address(std::array< T, D > *a)
 
static constexpr int added_rank()
 
static auto get_address(T *a)
return the address 
 
static constexpr hsize_t rank
rank of the multidimensional dataspace 
 
static constexpr int added_rank()
new rank added due to T 
 
static constexpr int added_rank()
 
static auto get_address(const Tensor< T, D > *a)