HDF5 C++ API  1.8.14
 All Classes Namespaces Functions Variables Typedefs Pages
Public Member Functions | List of all members
H5::CommonFG Class Reference

CommonFG is an abstract base class of H5File and H5Group. More...

#include <H5CommonFG.h>

Inheritance diagram for H5::CommonFG:
H5::Group H5::H5File

Public Member Functions

Group createGroup (const char *name, size_t size_hint=0) const
 Creates a new group at this location which can be a file or another group. More...
 
Group createGroup (const H5std_string &name, size_t size_hint=0) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
Group openGroup (const char *name) const
 Opens an existing group in a location which can be a file or another group. More...
 
Group openGroup (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
DataSet createDataSet (const char *name, const DataType &data_type, const DataSpace &data_space, const DSetCreatPropList &create_plist=DSetCreatPropList::DEFAULT) const
 Creates a new dataset at this location. More...
 
DataSet createDataSet (const H5std_string &name, const DataType &data_type, const DataSpace &data_space, const DSetCreatPropList &create_plist=DSetCreatPropList::DEFAULT) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
DataSet openDataSet (const char *name) const
 Opens an existing dataset at this location. More...
 
DataSet openDataSet (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
H5std_string getLinkval (const char *link_name, size_t size=0) const
 Returns the name of the object that the symbolic link points to. More...
 
H5std_string getLinkval (const H5std_string &link_name, size_t size=0) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
hsize_t getNumObjs () const
 Returns the number of objects in this group. More...
 
H5std_string getObjnameByIdx (hsize_t idx) const
 Returns the name of an object in this group, given the object's index. More...
 
ssize_t getObjnameByIdx (hsize_t idx, char *name, size_t size) const
 Retrieves the name of an object in this group, given the object's index. More...
 
ssize_t getObjnameByIdx (hsize_t idx, H5std_string &name, size_t size) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
H5O_type_t childObjType (const H5std_string &objname) const
 This is an overloaded member function, provided for convenience. It takes an H5std_string for the object's name. More...
 
H5O_type_t childObjType (const char *objname) const
 Returns the type of an object in this file/group, given the object's name. More...
 
H5O_type_t childObjType (hsize_t index, H5_index_t index_type=H5_INDEX_NAME, H5_iter_order_t order=H5_ITER_INC, const char *objname=".") const
 Returns the type of an object in this file/group, given the object's index and its type and order. More...
 
H5G_obj_t getObjTypeByIdx (hsize_t idx) const
 
H5G_obj_t getObjTypeByIdx (hsize_t idx, char *type_name) const
 
H5G_obj_t getObjTypeByIdx (hsize_t idx, H5std_string &type_name) const
 
void getObjinfo (const char *name, hbool_t follow_link, H5G_stat_t &statbuf) const
 Returns information about an object. More...
 
void getObjinfo (const H5std_string &name, hbool_t follow_link, H5G_stat_t &statbuf) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
void getObjinfo (const char *name, H5G_stat_t &statbuf) const
 This is an overloaded member function, provided for convenience. It differs from the above functions in that it doesn't have the paramemter follow_link. More...
 
void getObjinfo (const H5std_string &name, H5G_stat_t &statbuf) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
int iterateElems (const char *name, int *idx, H5G_iterate_t op, void *op_data)
 Iterates a user's function over the entries of a group. More...
 
int iterateElems (const H5std_string &name, int *idx, H5G_iterate_t op, void *op_data)
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
void link (H5L_type_t link_type, const char *curr_name, const char *new_name) const
 Creates a link of the specified type from new_name to curr_name. More...
 
void link (H5L_type_t link_type, const H5std_string &curr_name, const H5std_string &new_name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for curr_name and new_name. More...
 
void unlink (const char *name) const
 Removes the specified name at this location. More...
 
void unlink (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
void mount (const char *name, const H5File &child, const PropList &plist) const
 Mounts the file child onto this group. More...
 
void mount (const char *name, H5File &child, PropList &plist) const
 This is an overloaded member function, kept for backward compatibility. It differs from the above function in that it misses const's. This wrapper will be removed in future release. More...
 
void mount (const H5std_string &name, const H5File &child, const PropList &plist) const
 This is an overloaded member function, provided for convenience. It takes an H5std_string for name. More...
 
void mount (const H5std_string &name, H5File &child, PropList &plist) const
 This is an overloaded member function, kept for backward compatibility. It differs from the above function in that it misses const's. This wrapper will be removed in future release. More...
 
void unmount (const char *name) const
 Unmounts the specified file. More...
 
void unmount (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
void move (const char *src, const char *dst) const
 Renames an object at this location. More...
 
void move (const H5std_string &src, const H5std_string &dst) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for src and dst. More...
 
DataType openDataType (const char *name) const
 Opens the named generic datatype at this location. More...
 
DataType openDataType (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
ArrayType openArrayType (const char *name) const
 Opens the named array datatype at this location. More...
 
ArrayType openArrayType (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
CompType openCompType (const char *name) const
 Opens the named compound datatype at this location. More...
 
CompType openCompType (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
EnumType openEnumType (const char *name) const
 Opens the named enumeration datatype at this location. More...
 
EnumType openEnumType (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
IntType openIntType (const char *name) const
 Opens the named integer datatype at this location. More...
 
IntType openIntType (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
FloatType openFloatType (const char *name) const
 Opens the named floating-point datatype at this location. More...
 
FloatType openFloatType (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
StrType openStrType (const char *name) const
 Opens the named string datatype at this location. More...
 
StrType openStrType (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 
VarLenType openVarLenType (const char *name) const
 Opens the named variable length datatype at this location. More...
 
VarLenType openVarLenType (const H5std_string &name) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for name. More...
 

Detailed Description

It provides common operations of H5File and H5Group.

Member Function Documentation

H5O_type_t H5::CommonFG::childObjType ( const H5std_string &  objname) const

Returns the type of an object in this group, given the object's name.

Parameters
objname- IN: Name of the object (H5std_string&)
Exceptions
H5::FileIExceptionor H5::GroupIException
H5O_type_t H5::CommonFG::childObjType ( const char *  objname) const
Parameters
objname- IN: Name of the object
Returns
Object type, which can have the following values for group, dataset, and named datatype
Exceptions
H5::FileIExceptionor H5::GroupIException Exception will be thrown when:
  • an error returned by the C API
  • object type is not one of the valid values above
H5O_type_t H5::CommonFG::childObjType ( hsize_t  index,
H5_index_t  index_type = H5_INDEX_NAME,
H5_iter_order_t  order = H5_ITER_INC,
const char *  objname = "." 
) const
Parameters
index- IN: Position of the object
index_type- IN: Type of the index, default to H5_INDEX_NAME
order- IN: Traversing order, default to H5_ITER_INC
objname- IN: Name of the object, default to "."
Returns
Object type, which can have the following values for group, dataset, and named datatype
Exceptions
H5::FileIExceptionor H5::GroupIException Exception will be thrown when:
  • an error returned by the C API
  • object type is not one of the valid values above
DataSet H5::CommonFG::createDataSet ( const char *  name,
const DataType data_type,
const DataSpace data_space,
const DSetCreatPropList create_plist = DSetCreatPropList::DEFAULT 
) const
Parameters
name- IN: Name of the dataset to create
data_type- IN: Datatype of the dataset
data_space- IN: Dataspace for the dataset
create_plist- IN: Creation properly list for the dataset
Returns
DataSet instance
Exceptions
H5::FileIExceptionor H5::GroupIException
Examples:
compound.cpp, h5group.cpp, and writedata.cpp.

References H5::PropList::getId(), H5::DataSpace::getId(), and H5::DataType::getId().

DataSet H5::CommonFG::createDataSet ( const H5std_string &  name,
const DataType data_type,
const DataSpace data_space,
const DSetCreatPropList create_plist = DSetCreatPropList::DEFAULT 
) const
Group H5::CommonFG::createGroup ( const char *  name,
size_t  size_hint = 0 
) const
Parameters
name- IN: Name of the group to create
size_hint- IN: Indicates the number of bytes to reserve for the names that will appear in the group
Returns
Group instance
Exceptions
H5::FileIExceptionor H5::GroupIException
Description
The optional size_hint specifies how much file space to reserve for storing the names that will appear in this new group. If a non-positive value is provided for the size_hint then a default size is chosen.
Examples:
h5group.cpp.
Group H5::CommonFG::createGroup ( const H5std_string &  name,
size_t  size_hint = 0 
) const
H5std_string H5::CommonFG::getLinkval ( const char *  name,
size_t  size = 0 
) const
Parameters
name- IN: Symbolic link to the object
size- IN: Maximum number of characters of value to be returned
Returns
Name of the object
Exceptions
H5::FileIExceptionor H5::GroupIException
H5std_string H5::CommonFG::getLinkval ( const H5std_string &  link_name,
size_t  size = 0 
) const
hsize_t H5::CommonFG::getNumObjs ( ) const
Returns
Number of objects
Exceptions
H5::FileIExceptionor H5::GroupIException
void H5::CommonFG::getObjinfo ( const char *  name,
hbool_t  follow_link,
H5G_stat_t &  statbuf 
) const
Parameters
name- IN: Name of the object
follow_link- IN: Link flag
statbuf- OUT: Buffer to return information about the object
Exceptions
H5::FileIExceptionor H5::GroupIException
Description
For more information, please refer to the C layer Reference Manual at: http://www.hdfgroup.org/HDF5/doc/RM/RM_H5G.html#Group-GetObjinfo
void H5::CommonFG::getObjinfo ( const H5std_string &  name,
hbool_t  follow_link,
H5G_stat_t &  statbuf 
) const
void H5::CommonFG::getObjinfo ( const char *  name,
H5G_stat_t &  statbuf 
) const
void H5::CommonFG::getObjinfo ( const H5std_string &  name,
H5G_stat_t &  statbuf 
) const
H5std_string H5::CommonFG::getObjnameByIdx ( hsize_t  idx) const
Parameters
idx- IN: Transient index of the object
Returns
Object name
Exceptions
H5::FileIExceptionor H5::GroupIException
Description
The value of idx can be any nonnegative number less than the total number of objects in the group, which is returned by the function CommonFG::getNumObjs. Note that this is a transient index; thus, an object may have a different index each time the group is opened.
ssize_t H5::CommonFG::getObjnameByIdx ( hsize_t  idx,
char *  name,
size_t  size 
) const
Parameters
idx- IN: Transient index of the object
name- IN/OUT: Retrieved name of the object
size- IN: Length to retrieve
Returns
Actual size of the object name or 0, if object has no name
Exceptions
H5::FileIExceptionor H5::GroupIException
Description
The value of idx can be any nonnegative number less than the total number of objects in the group, which is returned by the function CommonFG::getNumObjs. Note that this is a transient index; thus, an object may have a different index each time the group is opened.
ssize_t H5::CommonFG::getObjnameByIdx ( hsize_t  idx,
H5std_string &  name,
size_t  size 
) const
H5G_obj_t H5::CommonFG::getObjTypeByIdx ( hsize_t  idx) const
H5G_obj_t H5::CommonFG::getObjTypeByIdx ( hsize_t  idx,
char *  type_name 
) const
H5G_obj_t H5::CommonFG::getObjTypeByIdx ( hsize_t  idx,
H5std_string &  type_name 
) const
int H5::CommonFG::iterateElems ( const char *  name,
int *  idx,
H5G_iterate_t  op,
void *  op_data 
)
Parameters
name- IN : Name of group to iterate over
idx- IN/OUT: Starting (IN) and ending (OUT) entry indices
op- IN : User's function to operate on each entry
op_data- IN/OUT: Data associated with the operation
Returns
The return value of the first operator that returns non-zero, or zero if all members were processed with no operator returning non-zero.
Exceptions
H5::FileIExceptionor H5::GroupIException
int H5::CommonFG::iterateElems ( const H5std_string &  name,
int *  idx,
H5G_iterate_t  op,
void *  op_data 
)
void H5::CommonFG::link ( H5L_type_t  link_type,
const char *  curr_name,
const char *  new_name 
) const
Parameters
link_type- IN: Link type; possible values are
  • H5G_LINK_HARD
  • H5G_LINK_SOFT
curr_name- IN: Name of the existing object if link is a hard link; can be anything for the soft link
new_name- IN: New name for the object
Exceptions
H5::FileIExceptionor H5::GroupIException
Description
Note that both names are interpreted relative to the specified location. For information on creating hard link and soft link, please refer to the C layer Reference Manual at: http://hdfgroup.org/HDF5/doc/RM/RM_H5L.html#Link-CreateHard and http://hdfgroup.org/HDF5/doc/RM/RM_H5L.html#Link-CreateSoft
Examples:
h5group.cpp.
void H5::CommonFG::link ( H5L_type_t  link_type,
const H5std_string &  curr_name,
const H5std_string &  new_name 
) const
void H5::CommonFG::mount ( const char *  name,
const H5File child,
const PropList plist 
) const
Parameters
name- IN: Name of the group
child- IN: File to mount
plist- IN: Property list to use
Exceptions
H5::FileIExceptionor H5::GroupIException

References H5::H5File::getId(), and H5::PropList::getId().

void H5::CommonFG::mount ( const char *  name,
H5File child,
PropList plist 
) const
Parameters
name- IN: Name of the group
child- IN: File to mount
plist- IN: Property list to use
Exceptions
H5::FileIExceptionor H5::GroupIException
void H5::CommonFG::mount ( const H5std_string &  name,
const H5File child,
const PropList plist 
) const
void H5::CommonFG::mount ( const H5std_string &  name,
H5File child,
PropList plist 
) const
void H5::CommonFG::move ( const char *  src,
const char *  dst 
) const
Parameters
src- IN: Object's original name
dst- IN: Object's new name
Exceptions
H5::FileIExceptionor H5::GroupIException
Note
Exercise care in moving groups as it is possible to render data in a file inaccessible with Group::move. Please refer to the Group Interface in the HDF5 User's Guide for details at: http://www.hdfgroup.org/HDF5/doc/UG/UG_frame09Groups.html
void H5::CommonFG::move ( const H5std_string &  src,
const H5std_string &  dst 
) const
ArrayType H5::CommonFG::openArrayType ( const char *  name) const
Parameters
name- IN: Name of the array datatype to open
Returns
ArrayType instance
Exceptions
H5::FileIExceptionor H5::GroupIException
ArrayType H5::CommonFG::openArrayType ( const H5std_string &  name) const
CompType H5::CommonFG::openCompType ( const char *  name) const
Parameters
name- IN: Name of the compound datatype to open
Returns
CompType instance
Exceptions
H5::FileIExceptionor H5::GroupIException
CompType H5::CommonFG::openCompType ( const H5std_string &  name) const
DataSet H5::CommonFG::openDataSet ( const char *  name) const
Parameters
name- IN: Name of the dataset to open
Returns
DataSet instance
Exceptions
H5::FileIExceptionor H5::GroupIException
Examples:
compound.cpp, h5group.cpp, and writedata.cpp.
DataSet H5::CommonFG::openDataSet ( const H5std_string &  name) const
DataType H5::CommonFG::openDataType ( const char *  name) const
Parameters
name- IN: Name of the datatype to open
Returns
DataType instance
Exceptions
H5::FileIExceptionor H5::GroupIException
DataType H5::CommonFG::openDataType ( const H5std_string &  name) const
EnumType H5::CommonFG::openEnumType ( const char *  name) const
Parameters
name- IN: Name of the enumeration datatype to open
Returns
EnumType instance
Exceptions
H5::FileIExceptionor H5::GroupIException
EnumType H5::CommonFG::openEnumType ( const H5std_string &  name) const
FloatType H5::CommonFG::openFloatType ( const char *  name) const
Parameters
name- IN: Name of the floating-point datatype to open
Returns
FloatType instance
Exceptions
H5::FileIExceptionor H5::GroupIException
FloatType H5::CommonFG::openFloatType ( const H5std_string &  name) const
Group H5::CommonFG::openGroup ( const char *  name) const
Parameters
name- IN: Name of the group to open
Returns
Group instance
Exceptions
H5::FileIExceptionor H5::GroupIException
Examples:
h5group.cpp.
Group H5::CommonFG::openGroup ( const H5std_string &  name) const
IntType H5::CommonFG::openIntType ( const char *  name) const
Parameters
name- IN: Name of the integer datatype to open
Returns
IntType instance
Exceptions
H5::FileIExceptionor H5::GroupIException
IntType H5::CommonFG::openIntType ( const H5std_string &  name) const
StrType H5::CommonFG::openStrType ( const char *  name) const
Parameters
name- IN: Name of the string datatype to open
Returns
StrType instance
Exceptions
H5::FileIExceptionor H5::GroupIException
StrType H5::CommonFG::openStrType ( const H5std_string &  name) const
VarLenType H5::CommonFG::openVarLenType ( const char *  name) const
Parameters
name- IN: Name of the variable length datatype to open
Returns
VarLenType instance
Exceptions
H5::FileIExceptionor H5::GroupIException
VarLenType H5::CommonFG::openVarLenType ( const H5std_string &  name) const
void H5::CommonFG::unlink ( const char *  name) const
Parameters
name- IN: Name of the object to be removed
Exceptions
H5::FileIExceptionor H5::GroupIException
Examples:
h5group.cpp.
void H5::CommonFG::unlink ( const H5std_string &  name) const
void H5::CommonFG::unmount ( const char *  name) const
Parameters
name- IN: Name of the file to unmount
Exceptions
H5::FileIExceptionor H5::GroupIException
void H5::CommonFG::unmount ( const H5std_string &  name) const

The documentation for this class was generated from the following files: