diff options
author | Vailin Choi <vchoi@jam.ad.hdfgroup.org> | 2018-04-24 20:10:13 (GMT) |
---|---|---|
committer | Vailin Choi <vchoi@jam.ad.hdfgroup.org> | 2018-04-24 20:10:13 (GMT) |
commit | e6bc326ec0c417ef7b003da535b2e071442d2067 (patch) | |
tree | 700a274f00d7cee9d17c14c79dca71d97a328fc1 /c++ | |
parent | b3c5284692093953132c6c8227e0980b670bf4ad (diff) | |
download | hdf5-e6bc326ec0c417ef7b003da535b2e071442d2067.zip hdf5-e6bc326ec0c417ef7b003da535b2e071442d2067.tar.gz hdf5-e6bc326ec0c417ef7b003da535b2e071442d2067.tar.bz2 |
Fix for HDFFV-10180 Performance issues with H5Oget_info.
Diffstat (limited to 'c++')
-rw-r--r-- | c++/src/H5Location.cpp | 6 | ||||
-rw-r--r-- | c++/src/H5Object.cpp | 4 |
2 files changed, 5 insertions, 5 deletions
diff --git a/c++/src/H5Location.cpp b/c++/src/H5Location.cpp index 2dceb6e..5e01a74 100644 --- a/c++/src/H5Location.cpp +++ b/c++/src/H5Location.cpp @@ -1827,7 +1827,7 @@ H5O_type_t H5Location::childObjType(const char* objname) const H5O_type_t objtype = H5O_TYPE_UNKNOWN; // Use C API to get information of the object - herr_t ret_value = H5Oget_info_by_name(getId(), objname, &objinfo, H5P_DEFAULT); + herr_t ret_value = H5Oget_info_by_name2(getId(), objname, &objinfo, 0, H5P_DEFAULT); // Throw exception if C API returns failure if (ret_value < 0) @@ -1902,7 +1902,7 @@ H5O_type_t H5Location::childObjType(hsize_t index, H5_index_t index_type, H5_ite H5O_type_t objtype = H5O_TYPE_UNKNOWN; // Use C API to get information of the object - ret_value = H5Oget_info_by_idx(getId(), objname, index_type, order, index, &objinfo, H5P_DEFAULT); + ret_value = H5Oget_info_by_idx2(getId(), objname, index_type, order, index, &objinfo, 0, H5P_DEFAULT); // Throw exception if C API returns failure if (ret_value < 0) @@ -1944,7 +1944,7 @@ unsigned H5Location::childObjVersion(const char* objname) const unsigned version = 0; // Use C API to get information of the object - herr_t ret_value = H5Oget_info_by_name(getId(), objname, &objinfo, H5P_DEFAULT); + herr_t ret_value = H5Oget_info_by_name2(getId(), objname, &objinfo, H5O_INFO_HDR, H5P_DEFAULT); // Throw exception if C API returns failure if (ret_value < 0) diff --git a/c++/src/H5Object.cpp b/c++/src/H5Object.cpp index 5d102d7..b95e222 100644 --- a/c++/src/H5Object.cpp +++ b/c++/src/H5Object.cpp @@ -244,7 +244,7 @@ unsigned H5Object::objVersion() const unsigned version = 0; // Use C API to get information of the object - herr_t ret_value = H5Oget_info(getId(), &objinfo); + herr_t ret_value = H5Oget_info2(getId(), &objinfo, H5O_INFO_HDR); // Throw exception if C API returns failure if (ret_value < 0) @@ -270,7 +270,7 @@ int H5Object::getNumAttrs() const { H5O_info_t oinfo; /* Object info */ - if(H5Oget_info(getId(), &oinfo) < 0) + if(H5Oget_info2(getId(), &oinfo, H5O_INFO_NUM_ATTRS) < 0) throw AttributeIException(inMemFunc("getNumAttrs"), "H5Oget_info failed"); else return(static_cast<int>(oinfo.num_attrs)); |