9 #ifndef H5DATASPACE_HPP 
   10 #define H5DATASPACE_HPP 
   15 #include <type_traits> 
   16 #include <initializer_list> 
   19 #include <boost/multi_array.hpp> 
   20 #include <boost/numeric/ublas/matrix.hpp> 
   47     explicit DataSpace(
const std::vector<size_t>& dims);
 
   52     explicit DataSpace(std::initializer_list<size_t> items);
 
   56     template<
typename... Args>
 
   57     explicit DataSpace(
size_t dim1, Args... dims);
 
   62     template <typename IT, typename = typename std::enable_if<!std::is_integral<IT>::value,IT>::type>
 
   69     explicit DataSpace(
const std::vector<size_t>& dims,
 
   70                        const std::vector<size_t>& maxdims);
 
  100     template <
typename ScalarValue>
 
  108     template <
typename Value>
 
  113     template <
typename Value, std::
size_t N>
 
  118     template <
typename Value, std::
size_t Dims>
 
  119     static DataSpace From(
const boost::multi_array<Value, Dims>& container);
 
  121     template <
typename Value>
 
  122     static DataSpace From(
const boost::numeric::ublas::matrix<Value>& mat);
 
  136 #endif // H5DATASPACE_HPP