summaryrefslogtreecommitdiffstats
path: root/c++/src/H5LcreatProp.cpp
diff options
context:
space:
mode:
authorBinh-Minh Ribler <bmribler@hdfgroup.org>2019-04-24 14:37:41 (GMT)
committerBinh-Minh Ribler <bmribler@hdfgroup.org>2019-04-24 14:37:41 (GMT)
commit4867de9631d9ffd8f4186df27b3c69283ca0fee5 (patch)
tree4b32cb15c1b0d881bef732d7cd5f5d836d299689 /c++/src/H5LcreatProp.cpp
parent19ef25909e2215929d352377554913885d142f91 (diff)
downloadhdf5-4867de9631d9ffd8f4186df27b3c69283ca0fee5.zip
hdf5-4867de9631d9ffd8f4186df27b3c69283ca0fee5.tar.gz
hdf5-4867de9631d9ffd8f4186df27b3c69283ca0fee5.tar.bz2
Added new C++ wrappers - HDFFV-10622
Description: Added wrappers for H5Pset/get_create_intermediate_group: // Specifies in property list whether to create missing // intermediate groups void setCreateIntermediateGroup(bool crt_intmd_group) const; // Determines whether property is set to enable creating missing // intermediate groups bool getCreateIntermediateGroup() const; Platforms tested: Linux/64 (jelly) Linux/64 (platypus) Darwin (osx1011test)
Diffstat (limited to 'c++/src/H5LcreatProp.cpp')
-rw-r--r--c++/src/H5LcreatProp.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/c++/src/H5LcreatProp.cpp b/c++/src/H5LcreatProp.cpp
index 695c1fe..bde9339 100644
--- a/c++/src/H5LcreatProp.cpp
+++ b/c++/src/H5LcreatProp.cpp
@@ -103,6 +103,46 @@ LinkCreatPropList::LinkCreatPropList(const LinkCreatPropList& original) : PropLi
LinkCreatPropList::LinkCreatPropList(const hid_t plist_id) : PropList(plist_id) {}
//--------------------------------------------------------------------------
+// Function: LinkCreatPropList::setCreateIntermediateGroup
+///\brief Specifies in property list whether to create missing
+/// intermediate groups.
+///\param crt_intmd_group - IN: Flag specifying whether to create
+/// intermediate groups upon the creation of an object
+///\exception H5::PropListIException
+// April, 2019
+//--------------------------------------------------------------------------
+void LinkCreatPropList::setCreateIntermediateGroup(bool crt_intmd_group) const
+{
+ herr_t ret_value = H5Pset_create_intermediate_group(id, (unsigned)crt_intmd_group);
+ // Throw exception if H5Pset_create_intermediate_group returns failure
+ if (ret_value < 0)
+ {
+ throw PropListIException("setCreateIntermediateGroup", "H5Pset_create_intermediate_group failed");
+ }
+}
+
+//--------------------------------------------------------------------------
+// Function: LinkCreatPropList::getCreateIntermediateGroup
+///\brief Determines whether property is set to enable creating missing
+/// intermediate groups.
+///\return true if creating intermediate groups is enabled, and false, otherwise
+///\exception H5::PropListIException
+// April, 2019
+//--------------------------------------------------------------------------
+bool LinkCreatPropList::getCreateIntermediateGroup() const
+{
+ unsigned crt_intmd_group;
+ herr_t ret_value = H5Pget_create_intermediate_group(id, &crt_intmd_group);
+ // Throw exception if H5Pget_create_intermediate_group returns failure
+ if (ret_value < 0)
+ {
+ throw PropListIException("getCreateIntermediateGroup", "H5Pget_create_intermediate_group failed");
+ }
+
+ return((bool)crt_intmd_group);
+}
+
+//--------------------------------------------------------------------------
// Function: LinkCreatPropList::setCharEncoding
///\brief Sets the character encoding of the string.
///