summaryrefslogtreecommitdiffstats
path: root/c++
diff options
context:
space:
mode:
authorBinh-Minh Ribler <bmribler@hdfgroup.org>2017-04-26 05:10:24 (GMT)
committerBinh-Minh Ribler <bmribler@hdfgroup.org>2017-04-26 05:10:24 (GMT)
commit89f9d69d8d8b3dba483db6442b2eadfb0fae309c (patch)
tree23c59c23277bea2ac34f3d2af5278287ecb1735d /c++
parent4bc55bbf94d7fce7521b2efd766f677ca45c9ecc (diff)
downloadhdf5-89f9d69d8d8b3dba483db6442b2eadfb0fae309c.zip
hdf5-89f9d69d8d8b3dba483db6442b2eadfb0fae309c.tar.gz
hdf5-89f9d69d8d8b3dba483db6442b2eadfb0fae309c.tar.bz2
Documentation clean-up
Description: - Rearranged public/non-public functions relative to the DOXYGEN_SHOULD_SKIP_THIS blocks to display them correctly in the RM - Moved internal comments outside of the \brief blocks so they will not be displayed in the RM - Updated RELEASE.txt about the changes in PR#466 Platforms tested: Verified document on Windows 10. Linux/64 (platypus) Darwin (osx1010test)
Diffstat (limited to 'c++')
-rw-r--r--c++/src/H5ArrayType.h3
-rw-r--r--c++/src/H5AtomType.h6
-rw-r--r--c++/src/H5Attribute.h3
-rw-r--r--c++/src/H5CommonFG.h5
-rw-r--r--c++/src/H5CompType.h3
-rw-r--r--c++/src/H5DataSet.h5
-rw-r--r--c++/src/H5DataSpace.h2
-rw-r--r--c++/src/H5DataType.h5
-rw-r--r--c++/src/H5DcreatProp.h4
-rw-r--r--c++/src/H5DxferProp.h3
-rw-r--r--c++/src/H5EnumType.h6
-rw-r--r--c++/src/H5FaccProp.h3
-rw-r--r--c++/src/H5FcreatProp.h3
-rw-r--r--c++/src/H5File.h3
-rw-r--r--c++/src/H5FloatType.h3
-rw-r--r--c++/src/H5Group.cpp1
-rw-r--r--c++/src/H5Group.h3
-rw-r--r--c++/src/H5IntType.h5
-rw-r--r--c++/src/H5LaccProp.h3
-rw-r--r--c++/src/H5Location.cpp187
-rw-r--r--c++/src/H5Location.h4
-rw-r--r--c++/src/H5Object.cpp4
-rw-r--r--c++/src/H5Object.h6
-rw-r--r--c++/src/H5OcreatProp.h5
-rw-r--r--c++/src/H5PredType.h3
-rw-r--r--c++/src/H5PropList.h3
-rw-r--r--c++/src/H5StrType.h5
-rw-r--r--c++/src/H5VarLenType.h5
28 files changed, 129 insertions, 162 deletions
diff --git a/c++/src/H5ArrayType.h b/c++/src/H5ArrayType.h
index ffb8712..669bdf3 100644
--- a/c++/src/H5ArrayType.h
+++ b/c++/src/H5ArrayType.h
@@ -20,9 +20,8 @@ namespace H5 {
/*! \class ArrayType
\brief Class ArrayType inherits from DataType and provides wrappers for
the HDF5's Array Datatypes.
-
- Inheritance: DataType -> H5Object -> H5Location -> IdComponent
*/
+// Inheritance: DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP ArrayType : public DataType {
public:
// Constructor that creates a new array data type based on the
diff --git a/c++/src/H5AtomType.h b/c++/src/H5AtomType.h
index 0be3cb5..da3df5b 100644
--- a/c++/src/H5AtomType.h
+++ b/c++/src/H5AtomType.h
@@ -20,12 +20,8 @@ namespace H5 {
/*! \class AtomType
\brief AtomType is a base class, inherited by IntType, FloatType,
StrType, and PredType.
-
- AtomType provides operations on HDF5 atomic datatypes. It also inherits
- from DataType.
-
- Inheritance: DataType -> H5Object -> H5Location -> IdComponent
*/
+// Inheritance: DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP AtomType : public DataType {
public:
// Returns the byte order of an atomic datatype.
diff --git a/c++/src/H5Attribute.h b/c++/src/H5Attribute.h
index 41e74d9..823947e 100644
--- a/c++/src/H5Attribute.h
+++ b/c++/src/H5Attribute.h
@@ -24,9 +24,8 @@ namespace H5 {
Attribute and DataSet are derivatives of AbstractDs. Attribute also
inherits from H5Location because an attribute can be used to specify
a location.
-
- Inheritance: multiple H5Location/AbstractDs -> IdComponent
*/
+// Inheritance: multiple H5Location/AbstractDs -> IdComponent
class H5_DLLCPP Attribute : public AbstractDs, public H5Location {
public:
diff --git a/c++/src/H5CommonFG.h b/c++/src/H5CommonFG.h
index 3cbad76..dbcf520 100644
--- a/c++/src/H5CommonFG.h
+++ b/c++/src/H5CommonFG.h
@@ -24,9 +24,8 @@ class ArrayType;
class VarLenType;
/*! \class CommonFG
- \brief \a CommonFG is an abstract base class of H5File and H5Group.
-
- It provides common operations of H5File and H5Group.
+ \brief CommonFG will be deprecated in future releases.
+ In 1.10.1, most member functions are moved to H5Location.
*/
class H5_DLLCPP CommonFG {
public:
diff --git a/c++/src/H5CompType.h b/c++/src/H5CompType.h
index 018d875..e2a6b34 100644
--- a/c++/src/H5CompType.h
+++ b/c++/src/H5CompType.h
@@ -20,9 +20,8 @@ namespace H5 {
/*! \class CompType
\brief CompType is a derivative of a DataType and operates on HDF5
compound datatypes.
-
- Inheritance: DataType -> H5Object -> H5Location -> IdComponent
*/
+// Inheritance: DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP CompType : public DataType {
public:
// Default constructor
diff --git a/c++/src/H5DataSet.h b/c++/src/H5DataSet.h
index 2f3eebe..9a52412 100644
--- a/c++/src/H5DataSet.h
+++ b/c++/src/H5DataSet.h
@@ -20,12 +20,11 @@ namespace H5 {
/*! \class DataSet
\brief Class DataSet operates on HDF5 datasets.
- An datasets has many characteristics similar to an attribute, thus both
+ A dataset has many characteristics similar to an attribute, thus both
Attribute and DataSet are derivatives of AbstractDs. DataSet also
inherits from H5Object because a dataset is an HDF5 object.
-
- Inheritance: multiple H5Object/AbstractDs -> H5Location -> IdComponent
*/
+// Inheritance: multiple H5Object/AbstractDs -> H5Location -> IdComponent
class H5_DLLCPP DataSet : public H5Object, public AbstractDs {
public:
diff --git a/c++/src/H5DataSpace.h b/c++/src/H5DataSpace.h
index c0a1d2b..9bb203c 100644
--- a/c++/src/H5DataSpace.h
+++ b/c++/src/H5DataSpace.h
@@ -20,8 +20,6 @@ namespace H5 {
/*! \class DataSpace
\brief Class DataSpace inherits from IdComponent and provides wrappers for
the HDF5's dataspaces.
-
- Inheritance: IdComponent
*/
class H5_DLLCPP DataSpace : public IdComponent {
public:
diff --git a/c++/src/H5DataType.h b/c++/src/H5DataType.h
index 32a79fa..ba83d37 100644
--- a/c++/src/H5DataType.h
+++ b/c++/src/H5DataType.h
@@ -21,11 +21,10 @@ namespace H5 {
\brief Class DataType provides generic operations on HDF5 datatypes.
DataType inherits from H5Object because a named datatype is an HDF5
- object and is a base class of ArrayType, AtomType, CompType, EnumType,
+ object, and is a base class of ArrayType, AtomType, CompType, EnumType,
and VarLenType.
-
- Inheritance: DataType -> H5Object -> H5Location -> IdComponent
*/
+// Inheritance: DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP DataType : public H5Object {
public:
// Creates a datatype given its class and size
diff --git a/c++/src/H5DcreatProp.h b/c++/src/H5DcreatProp.h
index 5d5714a..89318e8 100644
--- a/c++/src/H5DcreatProp.h
+++ b/c++/src/H5DcreatProp.h
@@ -17,15 +17,15 @@
namespace H5 {
+// Class forwarding
class DataType;
class DataSpace;
/*! \class DSetCreatPropList
\brief Class DSetCreatPropList inherits from ObjCreatPropList and provides
wrappers for the HDF5 dataset creation property functions.
-
- Inheritance: ObjCreatPropList -> PropList -> IdComponent
*/
+// Inheritance: ObjCreatPropList -> PropList -> IdComponent
class H5_DLLCPP DSetCreatPropList : public ObjCreatPropList {
public:
///\brief Default dataset creation property list.
diff --git a/c++/src/H5DxferProp.h b/c++/src/H5DxferProp.h
index 4a38bd0..75205cf 100644
--- a/c++/src/H5DxferProp.h
+++ b/c++/src/H5DxferProp.h
@@ -20,9 +20,8 @@ namespace H5 {
/*! \class DSetMemXferPropList
\brief Class DSetCreatPropList inherits from PropList and provides
wrappers for the HDF5 dataset memory and transfer property list.
-
- Inheritance: ObjCreatPropList -> PropList -> IdComponent
*/
+// Inheritance: PropList -> IdComponent
class H5_DLLCPP DSetMemXferPropList : public PropList {
public:
///\brief Default dataset memory and transfer property list.
diff --git a/c++/src/H5EnumType.h b/c++/src/H5EnumType.h
index fc8089e..8b98c93 100644
--- a/c++/src/H5EnumType.h
+++ b/c++/src/H5EnumType.h
@@ -18,13 +18,11 @@
namespace H5 {
/*! \class EnumType
- \brief EnumType is a derivative of a DataType and operates on HDF5
+ \brief EnumType is derived from a DataType and operates on HDF5
enum datatypes.
-
- Inheritance: DataType -> H5Object -> H5Location -> IdComponent
*/
+// Inheritance: DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP EnumType : public DataType {
-
public:
// Creates an empty enumeration datatype based on a native signed
// integer type, whose size is given by size.
diff --git a/c++/src/H5FaccProp.h b/c++/src/H5FaccProp.h
index 2563163..1df8fc8 100644
--- a/c++/src/H5FaccProp.h
+++ b/c++/src/H5FaccProp.h
@@ -20,9 +20,8 @@ namespace H5 {
/*! \class FileAccPropList
\brief Class FileAccPropList inherits from PropList and provides
wrappers for the HDF5 file access property list.
-
- Inheritance: PropList -> IdComponent
*/
+// Inheritance: PropList -> IdComponent
class H5_DLLCPP FileAccPropList : public PropList {
public:
///\brief Default file access property list.
diff --git a/c++/src/H5FcreatProp.h b/c++/src/H5FcreatProp.h
index da620d4..31a944c 100644
--- a/c++/src/H5FcreatProp.h
+++ b/c++/src/H5FcreatProp.h
@@ -20,9 +20,8 @@ namespace H5 {
/*! \class FileCreatPropList
\brief Class FileCreatPropList inherits from PropList and provides
wrappers for the HDF5 file create property list.
-
- Inheritance: PropList -> IdComponent
*/
+// Inheritance: PropList -> IdComponent
class H5_DLLCPP FileCreatPropList : public PropList {
public:
///\brief Default file creation property list.
diff --git a/c++/src/H5File.h b/c++/src/H5File.h
index 0f921ae..214feb0 100644
--- a/c++/src/H5File.h
+++ b/c++/src/H5File.h
@@ -20,9 +20,8 @@ namespace H5 {
/*! \class H5File
\brief Class H5File represents an HDF5 file and inherits from class Group
as file is a root group.
-
- Inheritance: Group -> CommonFG/H5Object -> H5Location -> IdComponent
*/
+// Inheritance: Group -> CommonFG/H5Object -> H5Location -> IdComponent
class H5_DLLCPP H5File : public Group {
public:
// Creates or opens an HDF5 file.
diff --git a/c++/src/H5FloatType.h b/c++/src/H5FloatType.h
index e84f50b..b301286 100644
--- a/c++/src/H5FloatType.h
+++ b/c++/src/H5FloatType.h
@@ -20,9 +20,8 @@ namespace H5 {
/*! \class FloatType
\brief FloatType is a derivative of a DataType and operates on HDF5
floating point datatype.
-
- Inheritance: AtomType -> DataType -> H5Object -> H5Location -> IdComponent
*/
+// Inheritance: AtomType -> DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP FloatType : public AtomType {
public:
// Creates a floating-point type using a predefined type.
diff --git a/c++/src/H5Group.cpp b/c++/src/H5Group.cpp
index c4b3b2c..97bedee 100644
--- a/c++/src/H5Group.cpp
+++ b/c++/src/H5Group.cpp
@@ -102,6 +102,7 @@ hid_t Group::getObjId(const H5std_string& obj_name, const PropList& plist) const
//--------------------------------------------------------------------------
// Function: Group::closeObjId
///\brief Closes an object, which was opened with Group::getObjId
+///
///\exception H5::FileIException or H5::GroupIException
// Programmer Binh-Minh Ribler - March, 2017
//--------------------------------------------------------------------------
diff --git a/c++/src/H5Group.h b/c++/src/H5Group.h
index 9430b13..2e13270 100644
--- a/c++/src/H5Group.h
+++ b/c++/src/H5Group.h
@@ -19,13 +19,12 @@ namespace H5 {
/*! \class Group
\brief Class Group represents an HDF5 group.
-
- Inheritance: H5Object -> H5Location -> IdComponent
*/
// Class forwarding
class ArrayType;
class VarLenType;
+// Inheritance: CommonFG/H5Object -> IdComponent
class H5_DLLCPP Group : public H5Object, public CommonFG {
public:
// Close this group.
diff --git a/c++/src/H5IntType.h b/c++/src/H5IntType.h
index 82a7cfd..a61f89f 100644
--- a/c++/src/H5IntType.h
+++ b/c++/src/H5IntType.h
@@ -18,11 +18,10 @@
namespace H5 {
/*! \class IntType
- \brief IntType is a derivative of a DataType and operates on HDF5
+ \brief IntType is derived from a DataType and operates on HDF5
integer datatype.
-
- Inheritance: AtomType -> DataType -> H5Object -> H5Location -> IdComponent
*/
+// Inheritance: AtomType -> DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP IntType : public AtomType {
public:
// Creates an integer type using a predefined type
diff --git a/c++/src/H5LaccProp.h b/c++/src/H5LaccProp.h
index 9772cde..829a88c 100644
--- a/c++/src/H5LaccProp.h
+++ b/c++/src/H5LaccProp.h
@@ -23,9 +23,8 @@ namespace H5 {
/*! \class LinkAccPropList
\brief Class LinkAccPropList inherits from PropList and provides
wrappers for the HDF5 file access property list.
-
- Inheritance: PropList -> IdComponent
*/
+// Inheritance: PropList -> IdComponent
class H5_DLLCPP LinkAccPropList : public PropList {
public:
///\brief Default file access property list.
diff --git a/c++/src/H5Location.cpp b/c++/src/H5Location.cpp
index ed2daf3..b2fa75d 100644
--- a/c++/src/H5Location.cpp
+++ b/c++/src/H5Location.cpp
@@ -373,6 +373,38 @@ void H5Location::p_reference(void* ref, const char* name, hid_t space_id, H5R_ty
}
}
+//--------------------------------------------------------------------------
+// Function: H5Location::p_dereference (protected)
+// Purpose Dereference a ref into an hdf5 object.
+// Parameters
+// loc_id - IN: An hdf5 identifier specifying the location of the
+// referenced object
+// ref - IN: Reference pointer
+// ref_type - IN: Reference type
+// plist - IN: Property list - default to PropList::DEFAULT
+// from_func - IN: Name of the calling function
+// Exception H5::ReferenceException
+// Programmer Binh-Minh Ribler - Oct, 2006
+// Modification
+// May 2008 - BMR
+// Moved from IdComponent.
+//--------------------------------------------------------------------------
+hid_t H5Location::p_dereference(hid_t loc_id, const void* ref, H5R_type_t ref_type, const PropList& plist, const char* from_func)
+{
+ hid_t plist_id;
+ if (p_valid_id(plist.getId()))
+ plist_id = plist.getId();
+ else
+ plist_id = H5P_DEFAULT;
+
+ hid_t temp_id = H5Rdereference2(loc_id, plist_id, ref_type, ref);
+ if (temp_id < 0)
+ {
+ throw ReferenceException(inMemFunc(from_func), "H5Rdereference failed");
+ }
+
+ return(temp_id);
+}
#endif // DOXYGEN_SHOULD_SKIP_THIS
//--------------------------------------------------------------------------
@@ -467,41 +499,6 @@ void H5Location::reference(void* ref, const H5std_string& name, H5R_type_t ref_t
reference(ref, name.c_str(), ref_type);
}
-#ifndef DOXYGEN_SHOULD_SKIP_THIS
-//--------------------------------------------------------------------------
-// Function: H5Location::p_dereference (protected)
-// Purpose Dereference a ref into an hdf5 object.
-// Parameters
-// loc_id - IN: An hdf5 identifier specifying the location of the
-// referenced object
-// ref - IN: Reference pointer
-// ref_type - IN: Reference type
-// plist - IN: Property list - default to PropList::DEFAULT
-// from_func - IN: Name of the calling function
-// Exception H5::ReferenceException
-// Programmer Binh-Minh Ribler - Oct, 2006
-// Modification
-// May 2008 - BMR
-// Moved from IdComponent.
-//--------------------------------------------------------------------------
-hid_t H5Location::p_dereference(hid_t loc_id, const void* ref, H5R_type_t ref_type, const PropList& plist, const char* from_func)
-{
- hid_t plist_id;
- if (p_valid_id(plist.getId()))
- plist_id = plist.getId();
- else
- plist_id = H5P_DEFAULT;
-
- hid_t temp_id = H5Rdereference2(loc_id, plist_id, ref_type, ref);
- if (temp_id < 0)
- {
- throw ReferenceException(inMemFunc(from_func), "H5Rdereference failed");
- }
-
- return(temp_id);
-}
-#endif // DOXYGEN_SHOULD_SKIP_THIS
-
//--------------------------------------------------------------------------
// Function: H5Location::dereference
///\brief Dereferences a reference into an HDF5 object, given an HDF5 object.
@@ -542,64 +539,6 @@ void H5Location::dereference(const H5Location& loc, const void* ref, H5R_type_t
}
*/
-#ifndef H5_NO_DEPRECATED_SYMBOLS
-//--------------------------------------------------------------------------
-// Function: H5Location::getObjType
-///\brief Retrieves the type of object that an object reference points to.
-///\param ref_type - IN: Type of reference to query, valid values are:
-/// \li \c H5R_OBJECT - Reference is an object reference.
-/// \li \c H5R_DATASET_REGION - Reference is a dataset region reference.
-///\param ref - IN: Reference to query
-///\return An object type, which can be one of the following:
-/// \li \c H5G_UNKNOWN - A failure occurs. (-1)
-/// \li \c H5G_GROUP - Object is a group.
-/// \li \c H5G_DATASET - Object is a dataset.
-/// \li \c H5G_TYPE Object - is a named datatype
-/// \li \c H5G_LINK - Object is a symbolic link.
-/// \li \c H5G_UDLINK - Object is a user-defined link.
-///\exception H5::ReferenceException
-// Programmer Binh-Minh Ribler - May, 2004
-// Modification
-// Sep 2012: Moved up from H5File, Group, DataSet, and DataType
-//--------------------------------------------------------------------------
-H5G_obj_t H5Location::getObjType(void *ref, H5R_type_t ref_type) const
-{
- try {
- return(p_get_obj_type(ref, ref_type));
- }
- catch (ReferenceException& E) {
- throw ReferenceException(inMemFunc("getObjType"), E.getDetailMsg());
- }
-}
-
-#ifndef DOXYGEN_SHOULD_SKIP_THIS
-//--------------------------------------------------------------------------
-// Function: H5Location::p_get_obj_type (protected)
-// Purpose Retrieves the type of object that an object reference points to.
-// Parameters
-// ref - IN: Reference to query
-// ref_type - IN: Type of reference to query
-// Return An object type, which can be one of the following:
-// H5G_UNKNOWN \tFailure occurs (-1)
-// H5G_GROUP \tObject is a group.
-// H5G_DATASET \tObject is a dataset.
-// H5G_TYPE Object \tis a named datatype.
-// H5G_LINK \tObject is a symbolic link.
-// H5G_UDLINK \tObject is a user-defined link.
-// Exception H5::ReferenceException
-// Programmer Binh-Minh Ribler - May, 2004
-//--------------------------------------------------------------------------
-H5G_obj_t H5Location::p_get_obj_type(void *ref, H5R_type_t ref_type) const
-{
- H5G_obj_t obj_type = H5Rget_obj_type1(getId(), ref_type, ref);
- if (obj_type == H5G_UNKNOWN)
- {
- throw ReferenceException(inMemFunc("getObjType"), "H5Rget_obj_type1 failed");
- }
- return(obj_type);
-}
-#endif // DOXYGEN_SHOULD_SKIP_THIS
-#endif /* H5_NO_DEPRECATED_SYMBOLS */
//--------------------------------------------------------------------------
// Function: H5Location::getRefObjType
@@ -657,7 +596,7 @@ H5O_type_t H5Location::p_get_ref_obj_type(void *ref, H5R_type_t ref_type) const
}
return(obj_type);
}
-
+#endif // DOXYGEN_SHOULD_SKIP_THIS
//--------------------------------------------------------------------------
// Function: H5Location::getRegion
@@ -1564,7 +1503,35 @@ unsigned H5Location::childObjVersion(const H5std_string& objname) const
}
#ifndef H5_NO_DEPRECATED_SYMBOLS
-#ifndef DOXYGEN_SHOULD_SKIP_THIS
+//--------------------------------------------------------------------------
+// Function: H5Location::getObjType
+///\brief Retrieves the type of object that an object reference points to.
+///\param ref_type - IN: Type of reference to query, valid values are:
+/// \li \c H5R_OBJECT - Reference is an object reference.
+/// \li \c H5R_DATASET_REGION - Reference is a dataset region reference.
+///\param ref - IN: Reference to query
+///\return An object type, which can be one of the following:
+/// \li \c H5G_UNKNOWN - A failure occurs. (-1)
+/// \li \c H5G_GROUP - Object is a group.
+/// \li \c H5G_DATASET - Object is a dataset.
+/// \li \c H5G_TYPE Object - is a named datatype
+/// \li \c H5G_LINK - Object is a symbolic link.
+/// \li \c H5G_UDLINK - Object is a user-defined link.
+///\exception H5::ReferenceException
+// Programmer Binh-Minh Ribler - May, 2004
+// Modification
+// Sep 2012: Moved up from H5File, Group, DataSet, and DataType
+//--------------------------------------------------------------------------
+H5G_obj_t H5Location::getObjType(void *ref, H5R_type_t ref_type) const
+{
+ try {
+ return(p_get_obj_type(ref, ref_type));
+ }
+ catch (ReferenceException& E) {
+ throw ReferenceException(inMemFunc("getObjType"), E.getDetailMsg());
+ }
+}
+
//--------------------------------------------------------------------------
// Function: H5Location::getObjTypeByIdx
///\brief Returns the type of an object in this group, given the
@@ -1632,9 +1599,37 @@ H5G_obj_t H5Location::getObjTypeByIdx(hsize_t idx, H5std_string& type_name) cons
return (obj_type);
}
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
+//--------------------------------------------------------------------------
+// Function: H5Location::p_get_obj_type (protected)
+// Purpose Retrieves the type of object that an object reference points to.
+// Parameters
+// ref - IN: Reference to query
+// ref_type - IN: Type of reference to query
+// Return An object type, which can be one of the following:
+// H5G_UNKNOWN \tFailure occurs (-1)
+// H5G_GROUP \tObject is a group.
+// H5G_DATASET \tObject is a dataset.
+// H5G_TYPE Object \tis a named datatype.
+// H5G_LINK \tObject is a symbolic link.
+// H5G_UDLINK \tObject is a user-defined link.
+// Exception H5::ReferenceException
+// Programmer Binh-Minh Ribler - May, 2004
+//--------------------------------------------------------------------------
+H5G_obj_t H5Location::p_get_obj_type(void *ref, H5R_type_t ref_type) const
+{
+ H5G_obj_t obj_type = H5Rget_obj_type1(getId(), ref_type, ref);
+ if (obj_type == H5G_UNKNOWN)
+ {
+ throw ReferenceException(inMemFunc("getObjType"), "H5Rget_obj_type1 failed");
+ }
+ return(obj_type);
+}
+
#endif // DOXYGEN_SHOULD_SKIP_THIS
-#endif /* H5_NO_DEPRECATED_SYMBOLS */
+#endif // H5_NO_DEPRECATED_SYMBOLS
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
//--------------------------------------------------------------------------
// Function: H5Location::throwException
///\brief Invokes subclass' throwException
diff --git a/c++/src/H5Location.h b/c++/src/H5Location.h
index f551560..f49b3c1 100644
--- a/c++/src/H5Location.h
+++ b/c++/src/H5Location.h
@@ -26,13 +26,13 @@ namespace H5 {
location identifier to specify the HDF5 object. The location identifier
can be either file, group, dataset, attribute, or named datatype.
Wrappers for H5A functions stay in H5Object.
-
- Inheritance: IdComponent
*/
// Class forwarding
class ArrayType;
class LinkAccPropList;
class VarLenType;
+
+// Inheritance: IdComponent
class H5_DLLCPP H5Location : public IdComponent {
public:
// Checks if a link of a given name exists in a location
diff --git a/c++/src/H5Object.cpp b/c++/src/H5Object.cpp
index a711374..7beee71 100644
--- a/c++/src/H5Object.cpp
+++ b/c++/src/H5Object.cpp
@@ -98,7 +98,7 @@ void f_Attribute_setId(Attribute* attr, hid_t new_id)
{
attr->p_setId(new_id);
}
-#endif
+#endif // DOXYGEN_SHOULD_SKIP_THIS
//--------------------------------------------------------------------------
// Function: H5Object::createAttribute
@@ -373,7 +373,6 @@ void H5Object::renameAttr(const H5std_string& oldname, const H5std_string& newna
renameAttr (oldname.c_str(), newname.c_str());
}
-#ifndef DOXYGEN_SHOULD_SKIP_THIS
//--------------------------------------------------------------------------
// Function: getObjName
///\brief Given an id, returns the type of the object.
@@ -485,6 +484,7 @@ ssize_t H5Object::getObjName(H5std_string& obj_name, size_t len) const
return(name_size);
}
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
//--------------------------------------------------------------------------
// Function: H5Object destructor
///\brief Noop destructor.
diff --git a/c++/src/H5Object.h b/c++/src/H5Object.h
index 0e2446f..f8877ee 100644
--- a/c++/src/H5Object.h
+++ b/c++/src/H5Object.h
@@ -20,7 +20,8 @@ namespace H5 {
/*! \class H5Object
\brief Class H5Object is a bridge between H5Location and DataSet, DataType,
and Group.
-
+*/
+/*
Modification:
Sept 18, 2012: Added class H5Location in between IdComponent and
H5Object. An H5File now inherits from H5Location. All HDF5
@@ -36,8 +37,6 @@ namespace H5 {
into H5Object. This way, C functions that takes attribute id
can be in H5Location and those that cannot take attribute id
can be in H5Object.
-
- Inheritance: H5Location -> IdComponent
*/
// Class forwarding
class H5Object;
@@ -56,6 +55,7 @@ class UserData4Aiterate {
H5Object* location;
};
+// Inheritance: H5Location -> IdComponent
class H5_DLLCPP H5Object : public H5Location {
public:
// Creates an attribute for the specified object
diff --git a/c++/src/H5OcreatProp.h b/c++/src/H5OcreatProp.h
index 878c67a..d1eae86 100644
--- a/c++/src/H5OcreatProp.h
+++ b/c++/src/H5OcreatProp.h
@@ -19,10 +19,9 @@ namespace H5 {
/*! \class ObjCreatPropList
\brief Class ObjCreatPropList inherits from PropList and provides
- wrappers for the HDF5 file create property list.
-
- Inheritance: PropList -> IdComponent
+ wrappers for the HDF5 object create property list.
*/
+// Inheritance: PropList -> IdComponent
class H5_DLLCPP ObjCreatPropList : public PropList {
public:
///\brief Default object creation property list.
diff --git a/c++/src/H5PredType.h b/c++/src/H5PredType.h
index 2ffc87f..c631fb9 100644
--- a/c++/src/H5PredType.h
+++ b/c++/src/H5PredType.h
@@ -23,9 +23,8 @@ namespace H5 {
These types can only be made copy of, not created by H5Tcreate or
closed by H5Tclose. They are treated as constants.
-
- Inheritance: AtomType -> DataType -> H5Object -> H5Location -> IdComponent
*/
+// Inheritance: AtomType -> DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP PredType : public AtomType {
public:
///\brief Returns this class name.
diff --git a/c++/src/H5PropList.h b/c++/src/H5PropList.h
index 154d7b2..3ef365a 100644
--- a/c++/src/H5PropList.h
+++ b/c++/src/H5PropList.h
@@ -17,12 +17,9 @@
namespace H5 {
-//! Class PropList provides operations for generic property lists.
/*! \class PropList
\brief Class PropList inherits from IdComponent and provides wrappers for
the HDF5 generic property list.
-
- Inheritance: IdComponent
*/
class H5_DLLCPP PropList : public IdComponent {
public:
diff --git a/c++/src/H5StrType.h b/c++/src/H5StrType.h
index abac8de..cc850fe 100644
--- a/c++/src/H5StrType.h
+++ b/c++/src/H5StrType.h
@@ -18,11 +18,10 @@
namespace H5 {
/*! \class StrType
- \brief StrType is a derivative of a DataType and operates on HDF5
+ \brief StrType is derived from a DataType and operates on HDF5
string datatype.
-
- Inheritance: AtomType -> DataType -> H5Object -> H5Location -> IdComponent
*/
+// Inheritance: AtomType -> DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP StrType : public AtomType {
public:
// Creates a string type using a predefined type
diff --git a/c++/src/H5VarLenType.h b/c++/src/H5VarLenType.h
index 4048a4e..7793cba 100644
--- a/c++/src/H5VarLenType.h
+++ b/c++/src/H5VarLenType.h
@@ -18,11 +18,10 @@
namespace H5 {
/*! \class VarLenType
- \brief VarLenType is a derivative of a DataType and operates on HDF5
+ \brief VarLenType is derived from a DataType and operates on HDF5
C's Variable-length Datatypes.
-
- Inheritance: DataType -> H5Object -> H5Location -> IdComponent
*/
+// Inheritance: DataType -> H5Object -> H5Location -> IdComponent
class H5_DLLCPP VarLenType : public DataType {
public:
// Constructor that creates a variable-length datatype based