获取H5 :: DataSet的hid_t和文件路径以使用H5OCopy

问题描述 投票:1回答:1

我正在通过HDF5使用C ++包装器库,并希望使用C API以有效地将数据集从源HDF5文件复制到目标文件。 (在另一条路径上,但这不重要)。

我可以访问目标的低级ID和路径,但可以访问源我只有H5 :: DataSet C ++包装实例,而H5Ocopy()(请参见下面的原型)需要源HDF5文件的hid_t,该文件包含数据集其在该源文件中的路径。

是否有办法从H5 :: DataSet实例中获取丢失的文件hid_t和数据集路径?

直觉上我认为必须存在,但到目前为止我还没有找到它们。 --DD

PS:从已知的角度来看,要通过API的层来遍历这些ID /路径是非常困难的,因为要执行H5OCopy的代码非常时间和距离很远,空格H5_DLL herr_t H5Ocopy( hid_t src_loc_id, const char *src_name, hid_t dst_loc_id, const char *dst_name, hid_t ocpypl_id, hid_t lcpl_id );

我正在通过HDF5使用C ++包装器库,并希望下拉至C API以有效地将数据集从源HDF5文件复制到目标文件中。 (在另一条路径上,但在...
c++ hdf5
1个回答
0
投票
如果这是您的选择,请查看HDFql,因为它可以大大简化将数据集从一个HDF5文件复制到另一个HDF5文件的方式。例如,要将名为dset的数据集从文件one.h5复制到文件two.h5,只需在C ++中使用HDFql执行以下操作:
© www.soinside.com 2019 - 2024. All rights reserved.