inline typename boost::enable_if<is_multi_array<T>, void>::type write_dataset(dataset& dset, T const& value) { typedef typename T::element value_type; hid_t type_id = ctype<value_type>::hid(); dset.write(type_id, value.origin()); }
inline typename boost::enable_if<is_multi_array<T>, void>::type write_dataset(dataset& dset, T const& value, dataspace const& memspace, dataspace const& filespace) { typedef typename T::element value_type; hid_t type_id = ctype<value_type>::hid(); hid_t mem_space_id = memspace.hid(); //H5S_ALL; hid_t file_space_id = filespace.hid(); hid_t xfer_plist_id = H5P_DEFAULT; dset.write(type_id, value.origin(), mem_space_id, file_space_id, xfer_plist_id); }