summaryrefslogtreecommitdiffstats
path: root/c++/src/H5CommonFG.h
diff options
context:
space:
mode:
Diffstat (limited to 'c++/src/H5CommonFG.h')
-rw-r--r--c++/src/H5CommonFG.h141
1 files changed, 78 insertions, 63 deletions
diff --git a/c++/src/H5CommonFG.h b/c++/src/H5CommonFG.h
index a4ab762..99ff874 100644
--- a/c++/src/H5CommonFG.h
+++ b/c++/src/H5CommonFG.h
@@ -29,101 +29,116 @@ class H5File;
class H5_DLLCPP CommonFG {
public:
// Creates a new group at this location which can be a file or another group.
- Group createGroup( const char* name, size_t size_hint = 0 ) const;
- Group createGroup( const string& name, size_t size_hint = 0 ) const;
+ Group createGroup(const char* name, size_t size_hint = 0) const;
+ Group createGroup(const string& name, size_t size_hint = 0) const;
- // Opens an existing group in a location which can be a file or another group
- Group openGroup( const char* name ) const;
- Group openGroup( const string& name ) const;
+ // Opens an existing group in a location which can be a file or another group.
+ Group openGroup(const char* name) const;
+ Group openGroup(const string& name) const;
// Creates a new dataset at this location.
- DataSet createDataSet( const char* name, const DataType& data_type, const DataSpace& data_space, const DSetCreatPropList& create_plist = DSetCreatPropList::DEFAULT ) const;
- DataSet createDataSet( const string& name, const DataType& data_type, const DataSpace& data_space, const DSetCreatPropList& create_plist = DSetCreatPropList::DEFAULT ) const;
+ DataSet createDataSet(const char* name, const DataType& data_type, const DataSpace& data_space, const DSetCreatPropList& create_plist = DSetCreatPropList::DEFAULT) const;
+ DataSet createDataSet(const string& name, const DataType& data_type, const DataSpace& data_space, const DSetCreatPropList& create_plist = DSetCreatPropList::DEFAULT) const;
// Opens an existing dataset at this location.
- DataSet openDataSet( const char* name ) const;
- DataSet openDataSet( const string& name ) const;
-
- // Creates a link of the specified type from new_name to current_name;
- // both names are interpreted relative to the specified location id
- void link( H5G_link_t link_type, const char* curr_name, const char* new_name ) const;
- void link( H5G_link_t link_type, const string& curr_name, const string& new_name ) const;
+ DataSet openDataSet(const char* name) const;
+ DataSet openDataSet(const string& name) const;
// Removes the specified name at this location.
- void unlink( const char* name ) const;
- void unlink( const string& name ) const;
+ void unlink(const char* name) const;
+ void unlink(const string& name) const;
- // Get id of the location, either group or file - pure virtual so
- // the subclass can get the correct id
- virtual hid_t getLocId() const = 0;
+ // Retrieves comment for the HDF5 object specified by its name.
+ string getComment(const char* name, size_t bufsize) const;
+ string getComment(const string& name, size_t bufsize) const;
- // Renames an object at this location.
- void move( const char* src, const char* dst ) const;
- void move( const string& src, const string& dst ) const;
+ // Sets the comment for an HDF5 object specified by its name.
+ void setComment(const char* name, const char* comment) const;
+ void setComment(const string& name, const string& comment) const;
+
+ // Returns the name of the HDF5 object that the symbolic link points to.
+ string getLinkval(const char* name, size_t size) const;
+ string getLinkval(const string& name, size_t size) const;
+
+ // Returns the number of objects in this group.
+ hsize_t getNumObjs() const;
// Returns information about an HDF5 object, given by its name,
// at this location.
- void getObjinfo( const char* name, hbool_t follow_link, H5G_stat_t& statbuf ) const;
- void getObjinfo( const string& name, hbool_t follow_link, H5G_stat_t& statbuf ) const;
+ void getObjinfo(const char* name, hbool_t follow_link, H5G_stat_t& statbuf) const;
+ void getObjinfo(const string& name, hbool_t follow_link, H5G_stat_t& statbuf) const;
- // Returns the name of the HDF5 object that the symbolic link points to.
- string getLinkval( const char* name, size_t size ) const;
- string getLinkval( const string& name, size_t size ) const;
+ // Retrieves the name of an object in this group, given the
+ // object's index.
+ ssize_t getObjnameByIdx(hsize_t idx, string& name, size_t size) const;
- // Sets the comment for an HDF5 object specified by its name
- void setComment( const char* name, const char* comment ) const;
- void setComment( const string& name, const string& comment ) const;
+ // Returns the type of an object in this group, given the
+ // object's index.
+ H5G_obj_t getObjTypeByIdx(hsize_t idx) const;
+ H5G_obj_t getObjTypeByIdx(hsize_t idx, string& type_name) const;
- // Retrieves comment for the HDF5 object specified by its name
- string getComment( const char* name, size_t bufsize ) const;
- string getComment( const string& name, size_t bufsize ) const;
+ // Iterates over the elements of this group - not implemented in
+ // C++ style yet.
+ int iterateElems(const char* name, int *idx, H5G_iterate_t op, void *op_data);
+ int iterateElems(const string& name, int *idx, H5G_iterate_t op, void *op_data);
+
+ // Creates a link of the specified type from new_name to current_name;
+ // both names are interpreted relative to the specified location id.
+ void link(H5G_link_t link_type, const char* curr_name, const char* new_name) const;
+ void link(H5G_link_t link_type, const string& curr_name, const string& new_name) const;
- // Mounts the file 'child' onto this location
- void mount( const char* name, H5File& child, PropList& plist) const;
- void mount( const string& name, H5File& child, PropList& plist ) const;
+ // Mounts the file 'child' onto this location.
+ void mount(const char* name, H5File& child, PropList& plist) const;
+ void mount(const string& name, H5File& child, PropList& plist) const;
- // Unmounts the file named 'name' from this parent location
- void unmount( const char* name ) const;
- void unmount( const string& name ) const;
+ // Unmounts the file named 'name' from this parent location.
+ void unmount(const char* name) const;
+ void unmount(const string& name) const;
- // Iterates over the elements of this group - not implemented in
- // C++ style yet
- int iterateElems( const char* name, int *idx, H5G_iterate_t op, void *op_data );
- int iterateElems( const string& name, int *idx, H5G_iterate_t op, void *op_data );
+ // Renames an object at this location.
+ void move(const char* src, const char* dst) const;
+ void move(const string& src, const string& dst) const;
+
+ // Opens a generic named datatype in this location.
+ DataType openDataType(const char* name) const;
+ DataType openDataType(const string& name) const;
- // Opens a generic named datatype in this location
- DataType openDataType( const char* name ) const;
- DataType openDataType( const string& name ) const;
+ // Opens a named enumeration datatype in this location.
+ EnumType openEnumType(const char* name) const;
+ EnumType openEnumType(const string& name) const;
- // Opens a named enumeration datatype in this location
- EnumType openEnumType( const char* name ) const;
- EnumType openEnumType( const string& name ) const;
+ // Opens a named compound datatype in this location.
+ CompType openCompType(const char* name) const;
+ CompType openCompType(const string& name) const;
- // Opens a named compound datatype in this location
- CompType openCompType( const char* name ) const;
- CompType openCompType( const string& name ) const;
+ // Opens a named integer datatype in this location.
+ IntType openIntType(const char* name) const;
+ IntType openIntType(const string& name) const;
- // Opens a named integer datatype in this location
- IntType openIntType( const char* name ) const;
- IntType openIntType( const string& name ) const;
+ // Opens a named floating-point datatype in this location.
+ FloatType openFloatType(const char* name) const;
+ FloatType openFloatType(const string& name) const;
- // Opens a named floating-point datatype in this location
- FloatType openFloatType( const char* name ) const;
- FloatType openFloatType( const string& name ) const;
+ // Opens a named string datatype in this location.
+ StrType openStrType(const char* name) const;
+ StrType openStrType(const string& name) const;
- // Opens a named string datatype in this location
- StrType openStrType( const char* name ) const;
- StrType openStrType( const string& name ) const;
+ /// For subclasses, H5File and Group, to return the correct
+ /// object id, i.e. file or group id.
+ virtual hid_t getLocId() const = 0;
- // for H5File and Group to throw appropriate exception
+ /// For H5File and Group to throw appropriate exception.
virtual void throwException(const string func_name, const string msg) const = 0;
+ // Default constructor.
CommonFG();
+
+ // Noop destructor.
virtual ~CommonFG();
private:
// Common code for member functions openXxxType
- hid_t p_openDataType( const char* name ) const;
+ hid_t p_open_data_type(const char* name) const;
}; // end of CommonFG declaration