Help us improve by taking our short survey: https://www.hdfgroup.org/website-survey/
HDF5 Last Updated on 2025-12-16
The HDF5 Field Guide
Loading...
Searching...
No Matches
Attribute Class Reference

#include <c++/src/H5Attribute.h>

Detailed Description

Class Attribute operates on HDF5 attributes.

An attribute has many characteristics similar to a dataset, thus both Attribute and DataSet are derivatives of AbstractDs. Attribute also inherits from H5Location because an attribute can be used to specify a location.

+ Inheritance diagram for Attribute:

Public Member Functions

 Attribute ()
 Default constructor: Creates a stub attribute.
 
 Attribute (const Attribute &original)
 Copy constructor: same HDF5 object as original.
 
 Attribute (const hid_t attr_id)
 Creates an Attribute object using the id of an existing attribute.
 
virtual void close () override
 Closes this attribute.
 
virtual std::string fromClass () const override
 Returns this class name.
 
virtual hid_t getId () const override
 Get the id of this attribute.
 
virtual size_t getInMemDataSize () const override
 Gets the size in memory of the attribute's data.
 
std::string getName () const
 Returns the name of this attribute as an H5std_string.
 
ssize_t getName (char *attr_name, size_t buf_size=0) const
 Gets the name of this attribute, returning its length.
 
ssize_t getName (size_t buf_size, std::string &attr_name) const
 
std::string getName (size_t len) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an integer specifying a desired length to be retrieved of the name.
 
ssize_t getName (std::string &attr_name, size_t len=0) const
 Gets the name of this attribute, returning its length.
 
virtual DataSpace getSpace () const override
 Gets a copy of the dataspace for this attribute.
 
virtual hsize_t getStorageSize () const override
 Returns the amount of storage size required for this attribute.
 
Attributeoperator= (const Attribute &original)
 
void read (const DataType &mem_type, std::string &strg) const
 This is an overloaded member function, provided for convenience. It reads a H5std_string from this attribute.
 
void read (const DataType &mem_type, void *buf) const
 Reads data from this attribute.
 
void write (const DataType &mem_type, const std::string &strg) const
 This is an overloaded member function, provided for convenience. It writes a H5std_string to this attribute.
 
void write (const DataType &mem_type, const void *buf) const
 Writes data to this attribute.
 
virtual ~Attribute () override
 Properly terminates access to this attribute.
 
- Public Member Functions inherited from AbstractDs
ArrayType getArrayType () const
 Returns the array datatype of this abstract dataset which can be a dataset or an attribute.
 
CompType getCompType () const
 Returns the compound datatype of this abstract dataset which can be a dataset or an attribute.
 
DataType getDataType () const
 Returns the generic datatype of this abstract dataset, which can be a dataset or an attribute.
 
EnumType getEnumType () const
 Returns the enumeration datatype of this abstract dataset which can be a dataset or an attribute.
 
FloatType getFloatType () const
 Returns the floating-point datatype of this abstract dataset, which can be a dataset or an attribute.
 
IntType getIntType () const
 Returns the integer datatype of this abstract dataset which can be a dataset or an attribute.
 
StrType getStrType () const
 Returns the string datatype of this abstract dataset which can be a dataset or an attribute.
 
H5T_class_t getTypeClass () const
 Creates an AbstractDs instance using an existing id.
 
VarLenType getVarLenType () const
 Returns the variable length datatype of this abstract dataset, which can be a dataset or an attribute.
 
virtual ~AbstractDs ()=default
 
- Public Member Functions inherited from H5Location
H5O_type_t childObjType (const char *objname) const
 Returns the type of an object in this file/group, given the object's name.
 
H5O_type_t childObjType (const std::string &objname) const
 This is an overloaded member function, provided for convenience. It takes an H5std_string for the object's name.
 
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.
 
unsigned childObjVersion (const char *objname) const
 Returns the object header version of an object in this file/group, given the object's name.
 
unsigned childObjVersion (const std::string &objname) const
 This is an overloaded member function, provided for convenience. It takes an H5std_string for the object's name.
 
void copyLink (const char *src_name, const char *dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Copies a link from a group in the same location.
 
void copyLink (const char *src_name, const Group &dst, const char *dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Copies a link from one group to another.
 
void copyLink (const std::string &src_name, const Group &dst, const std::string &dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::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 src_name and dst_name.
 
void copyLink (const std::string &src_name, const std::string &dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::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 src_name and dst_name.
 
DataSet createDataSet (const char *name, const DataType &data_type, const DataSpace &data_space, const DSetCreatPropList &create_plist=DSetCreatPropList::DEFAULT, const DSetAccPropList &dapl=DSetAccPropList::DEFAULT, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT) const
 Creates a new dataset at this location.
 
DataSet createDataSet (const std::string &name, const DataType &data_type, const DataSpace &data_space, const DSetCreatPropList &create_plist=DSetCreatPropList::DEFAULT, const DSetAccPropList &dapl=DSetAccPropList::DEFAULT, const LinkCreatPropList &lcpl=LinkCreatPropList::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.
 
Group createGroup (const char *name, const LinkCreatPropList &lcpl) const
 Creates a new group at this location, which can be a file, group, dataset, attribute, or named datatype.
 
Group createGroup (const char *name, size_t size_hint=0) const
 Creates a new group at this location, which can be a file, group, dataset, attribute, or named datatype.
 
Group createGroup (const std::string &name, const LinkCreatPropList &lcpl) 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.
 
Group createGroup (const std::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.
 
void dereference (const H5Location &loc, const void *ref, H5R_type_t ref_type=H5R_OBJECT, const PropList &plist=PropList::DEFAULT)
 Dereferences a reference into an HDF5 object, given an HDF5 object.
 
bool exists (const char *name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Deprecated in favor of nameExists.
 
bool exists (const std::string &name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Deprecated in favor of nameExists.
 
void flush (H5F_scope_t scope) const
 Flushes all buffers associated with a location to disk.
 
ssize_t getComment (const char *name, size_t buf_size, char *comment) const
 Retrieves the comment for this location, returning its length.
 
std::string getComment (const char *name, size_t buf_size=0) const
 Returns the comment as string for this location, returning its length.
 
std::string getComment (const std::string &name, size_t buf_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.
 
std::string getFileName () const
 Gets the name of the file, in which an HDF5 object at this location belongs.
 
H5L_info2_t getLinkInfo (const char *link_name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Returns the information of the named link.
 
H5L_info2_t getLinkInfo (const std::string &link_name, const LinkAccPropList &lapl=LinkAccPropList::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 link_name.
 
std::string getLinkval (const char *link_name, size_t size=0) const
 Returns the name of the object that the symbolic link points to.
 
std::string getLinkval (const std::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.
 
void getNativeObjinfo (const char *grp_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t idx, H5O_native_info_t &objinfo, unsigned fields=H5O_NATIVE_INFO_HDR, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Retrieves native information about an HDF5 object given its index.
 
void getNativeObjinfo (const char *name, H5O_native_info_t &objinfo, unsigned fields=H5O_NATIVE_INFO_HDR, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Retrieves native information about an HDF5 object given its name.
 
void getNativeObjinfo (const std::string &grp_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t idx, H5O_native_info_t &objinfo, unsigned fields=H5O_NATIVE_INFO_HDR, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes a reference to an H5std_string for grp_name.
 
void getNativeObjinfo (const std::string &name, H5O_native_info_t &objinfo, unsigned fields=H5O_NATIVE_INFO_HDR, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes a reference to an H5std_string for name.
 
void getNativeObjinfo (H5O_native_info_t &objinfo, unsigned fields=H5O_NATIVE_INFO_HDR) const
 Retrieves native information about an HDF5 object.
 
hsize_t getNumObjs () const
 Deprecated - moved to H5::Group in 1.10.2.
 
void getObjinfo (const char *grp_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t idx, H5O_info2_t &objinfo, unsigned fields=H5O_INFO_BASIC, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Retrieves information about an HDF5 object given its index.
 
void getObjinfo (const char *name, bool follow_link, H5G_stat_t &statbuf) const
 Returns information about an object.
 
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 parameter follow_link.
 
void getObjinfo (const char *name, H5O_info2_t &objinfo, unsigned fields=H5O_INFO_BASIC, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Retrieves information about an HDF5 object given its name.
 
void getObjinfo (const std::string &grp_name, H5_index_t idx_type, H5_iter_order_t order, hsize_t idx, H5O_info2_t &objinfo, unsigned fields=H5O_INFO_BASIC, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes a reference to an H5std_string for name.
 
void getObjinfo (const std::string &name, bool 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.
 
void getObjinfo (const std::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.
 
void getObjinfo (const std::string &name, H5O_info2_t &objinfo, unsigned fields=H5O_INFO_BASIC, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes a reference to an H5std_string for name.
 
void getObjinfo (H5O_info2_t &objinfo, unsigned fields=H5O_INFO_BASIC) const
 Retrieves information about an HDF5 object.
 
std::string getObjnameByIdx (hsize_t idx) const
 Returns the name of an object in this group, given the object's index.
 
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.
 
ssize_t getObjnameByIdx (hsize_t idx, std::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.
 
H5G_obj_t getObjType (void *ref, H5R_type_t ref_type=H5R_OBJECT) const
 Retrieves the type of object that an object reference points to.
 
H5G_obj_t getObjTypeByIdx (hsize_t idx) const
 Returns the type of an object in this group, given the object's index. (Deprecated)
 
H5G_obj_t getObjTypeByIdx (hsize_t idx, char *type_name) const
 This is an overloaded member function, provided for convenience. It differs from the above function because it also provides the returned object type in text (char*) (Deprecated)
 
H5G_obj_t getObjTypeByIdx (hsize_t idx, std::string &type_name) const
 This is an overloaded member function, provided for convenience. It differs from the above function because it also provides the returned object type in text (H5std_string&) (Deprecated)
 
H5O_type_t getRefObjType (void *ref, H5R_type_t ref_type=H5R_OBJECT) const
 Retrieves the type of object that an object reference points to.
 
DataSpace getRegion (void *ref, H5R_type_t ref_type=H5R_DATASET_REGION) const
 Retrieves a dataspace with the region pointed to selected.
 
 H5Location ()
 
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.
 
int iterateElems (const std::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.
 
void link (const char *curr_name, const Group &new_loc, const char *new_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Creates a hard link from new_name to curr_name.
 
void link (const char *curr_name, const hid_t same_loc, const char *new_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Creates a hard link from new_name to curr_name - can be used to pass in H5L_SAME_LOC.
 
void link (const char *target_name, const char *link_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Creates a soft link from link_name to target_name.
 
void link (const std::string &curr_name, const Group &new_loc, const std::string &new_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::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 curr_name and new_name.
 
void link (const std::string &curr_name, const hid_t same_loc, const std::string &new_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::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 curr_name and new_name.
 
void link (const std::string &target_name, const std::string &link_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::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 target_name and link_name.
 
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.
 
void link (H5L_type_t link_type, const std::string &curr_name, const std::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.
 
void mount (const char *name, const H5File &child, const PropList &plist) const
 Mounts the file child onto this group.
 
void mount (const std::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.
 
void move (const char *src, const char *dst) const
 Renames an object at this location. - Deprecated in favor of moveLink()
 
void move (const std::string &src, const std::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. - Deprecated in favor of moveLink()
 
void moveLink (const char *src_name, const char *dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Renames a link in this group.
 
void moveLink (const char *src_name, const Group &dst, const char *dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Renames a link in this group and moves it to a new location.
 
void moveLink (const std::string &src_name, const Group &dst, const std::string &dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::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 src_name and dst_name.
 
void moveLink (const std::string &src_name, const std::string &dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::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 src_name and dst_name.
 
bool nameExists (const char *name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Checks if a link of a given name exists in a location.
 
bool nameExists (const std::string &name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Checks if a link of a given name exists in a location.
 
DataSet openDataSet (const char *name, const DSetAccPropList &dapl=DSetAccPropList::DEFAULT) const
 Opens an existing dataset at this location.
 
DataSet openDataSet (const std::string &name, const DSetAccPropList &dapl=DSetAccPropList::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.
 
Group openGroup (const char *name) const
 Opens an existing group in a location which can be a file or another group.
 
Group openGroup (const std::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.
 
void reference (void *ref, const char *name, const DataSpace &dataspace, H5R_type_t ref_type=H5R_DATASET_REGION) const
 Creates a reference to an HDF5 object or a dataset region.
 
void reference (void *ref, const char *name, H5R_type_t ref_type=H5R_OBJECT) const
 This is an overloaded function, provided for your convenience. It differs from the above function in that it does not take a DataSpace object and the reference type must be specified.
 
void reference (void *ref, const std::string &name, const DataSpace &dataspace, H5R_type_t ref_type=H5R_DATASET_REGION) 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.
 
void reference (void *ref, const std::string &name, H5R_type_t ref_type=H5R_OBJECT) const
 This is an overloaded function, provided for your convenience. It differs from the above function in that it takes an H5std_string for the object's name.
 
void removeComment (const char *name) const
 Removes the comment from an object specified by its name.
 
void removeComment (const std::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.
 
void setComment (const char *comment) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it doesn't take an object name.
 
void setComment (const char *name, const char *comment) const
 Sets or resets the comment for an object specified by its name.
 
void setComment (const std::string &comment) const
 This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an H5std_string for comment.
 
void setComment (const std::string &name, const std::string &comment) 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 and comment.
 
virtual void throwException (const std::string &func_name, const std::string &msg) const
 For subclasses, H5File and Group, to throw appropriate exception.
 
void unlink (const char *link_name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
 Removes the specified link from this group.
 
void unlink (const std::string &link_name, const LinkAccPropList &lapl=LinkAccPropList::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.
 
void unmount (const char *name) const
 Unmounts the specified file.
 
void unmount (const std::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.
 
- Public Member Functions inherited from IdComponent
void decRefCount () const
 Decrement reference counter for the id of this object.
 
void decRefCount (const hid_t obj_id) const
 Decrement reference counter for a given id.
 
int getCounter () const
 Returns the reference counter for the id of this object.
 
int getCounter (const hid_t obj_id) const
 Returns the reference counter for a given id.
 
H5I_type_t getHDFObjType () const
 Returns the type of the object. It is an overloaded function of the above function.
 
void incRefCount () const
 Increment reference counter for the id of this object.
 
void incRefCount (const hid_t obj_id) const
 Increment reference counter for a given id.
 
std::string inMemFunc (const char *func_name) const
 Makes and returns string "<class-name>::<func_name>".
 
IdComponentoperator= (const IdComponent &rhs)
 Assignment operator.
 
void setId (const hid_t new_id)
 Sets the identifier of this object to a new value.
 
virtual ~IdComponent ()=default
 

Protected Member Functions

virtual void p_setId (const hid_t new_id) override
 Sets the identifier of this object to a new value.
 
- Protected Member Functions inherited from AbstractDs
 AbstractDs ()
 Default constructor.
 
- Protected Member Functions inherited from H5Location
hid_t p_dereference (hid_t loc_id, const void *ref, H5R_type_t ref_type, const PropList &plist, const char *from_func)
 
H5G_obj_t p_get_obj_type (void *ref, H5R_type_t ref_type) const
 
H5O_type_t p_get_ref_obj_type (void *ref, H5R_type_t ref_type) const
 
void p_reference (void *ref, const char *name, hid_t space_id, H5R_type_t ref_type) const
 
virtual ~H5Location () override=default
 
- Protected Member Functions inherited from IdComponent
 IdComponent ()
 Default constructor.
 
std::string p_get_file_name () const
 

Friends

void f_Attribute_setId (Attribute *attr, hid_t new_id)
 

Additional Inherited Members

- Static Public Member Functions inherited from IdComponent
static H5I_type_t getHDFObjType (const hid_t obj_id)
 Given an id, returns the type of the object.
 
static hsize_t getNumMembers (H5I_type_t type)
 Returns the number of members of the given type.
 
static bool isValid (hid_t an_id)
 Checks if the given ID is valid.
 
static bool typeExists (H5I_type_t type)
 Queries if a given type is currently registered with the library.
 
- Static Protected Member Functions inherited from IdComponent
static bool p_valid_id (const hid_t obj_id)
 
- Static Protected Attributes inherited from IdComponent
static bool H5dontAtexit_called = false
 

Constructor & Destructor Documentation

◆ Attribute() [1/3]

Attribute ( const Attribute & original)

Copy constructor: same HDF5 object as original.

Parameters
original- IN: Original Attribute object to copy

◆ Attribute() [2/3]

Attribute ( )

Default constructor: Creates a stub attribute.

◆ Attribute() [3/3]

Attribute ( const hid_t existing_id)

Creates an Attribute object using the id of an existing attribute.

Parameters
existing_id- IN: Id of an existing attribute
Exceptions
H5::AttributeIException

◆ ~Attribute()

~Attribute ( )
overridevirtual

Properly terminates access to this attribute.

Member Function Documentation

◆ close()

void close ( )
overridevirtual

Closes this attribute.

Exceptions
H5::AttributeIException

Implements IdComponent.

◆ fromClass()

virtual std::string fromClass ( ) const
overridevirtual

Returns this class name.

Implements AbstractDs.

◆ getId()

hid_t getId ( ) const
overridevirtual

Get the id of this attribute.

Returns
Attribute identifier

Implements IdComponent.

◆ getInMemDataSize()

size_t getInMemDataSize ( ) const
overridevirtual

Gets the size in memory of the attribute's data.

Returns
Size of data (in memory)
Exceptions
H5::AttributeIException

Implements AbstractDs.

◆ getName() [1/5]

std::string getName ( ) const

Returns the name of this attribute as an H5std_string.

Returns
Name of the attribute
Exceptions
H5::AttributeIException

◆ getName() [2/5]

ssize_t getName ( char * attr_name,
size_t buf_size = 0 ) const

Gets the name of this attribute, returning its length.

Parameters
attr_name- OUT: Buffer for the name string as char*
buf_size- IN: Length of the buffer, default to 0
Returns
Actual length of the attribute name
Exceptions
H5::AttributeIException
Description
This function retrieves buf_size chars of the attribute's name including null termination. Thus, if the actual length of the name is more than buf_size-1, the retrieved name will be truncated to accommodate the null terminator. To get length of the attribute's name for buffer allocation, an application can call this function passing in NULL for the first argument and ignore the second argument.

◆ getName() [3/5]

ssize_t getName ( size_t buf_size,
std::string & attr_name ) const

◆ getName() [4/5]

std::string getName ( size_t len) const

This is an overloaded member function, provided for convenience. It differs from the above function in that it takes an integer specifying a desired length to be retrieved of the name.

Returns
Name (or part of name) of the attribute
Parameters
len- IN: Desired length of the name
Exceptions
H5::AttributeIException

◆ getName() [5/5]

ssize_t getName ( std::string & attr_name,
size_t len = 0 ) const

Gets the name of this attribute, returning its length.

Parameters
attr_name- OUT: Buffer for the name string as H5std_string
len- IN: Desired length of the name, default to 0
Returns
Actual length of the attribute name
Exceptions
H5::AttributeIException
Description
This function retrieves the attribute's name as a string. The buf_size can specify a specific length or default to 0, in which case the entire name will be retrieved.

◆ getSpace()

DataSpace getSpace ( ) const
overridevirtual

Gets a copy of the dataspace for this attribute.

Returns
Dataspace instance
Exceptions
H5::AttributeIException

Implements AbstractDs.

◆ getStorageSize()

hsize_t getStorageSize ( ) const
overridevirtual

Returns the amount of storage size required for this attribute.

Returns
Size of the storage or 0, for no data
Exceptions
H5::AttributeIException

Implements AbstractDs.

◆ operator=()

Attribute & operator= ( const Attribute & original)

◆ p_setId()

void p_setId ( const hid_t new_id)
overrideprotectedvirtual

Sets the identifier of this object to a new value.

Exceptions
H5::IdComponentExceptionwhen the attempt to close the HDF5 object fails

Implements IdComponent.

◆ read() [1/2]

void read ( const DataType & mem_type,
std::string & strg ) const

This is an overloaded member function, provided for convenience. It reads a H5std_string from this attribute.

Parameters
mem_type- IN: Attribute datatype (in memory)
strg- IN: Buffer for read string
Exceptions
H5::AttributeIException

◆ read() [2/2]

void read ( const DataType & mem_type,
void * buf ) const

Reads data from this attribute.

Parameters
mem_type- IN: Attribute datatype (in memory)
buf- OUT: Buffer for read data
Exceptions
H5::AttributeIException

◆ write() [1/2]

void write ( const DataType & mem_type,
const std::string & strg ) const

This is an overloaded member function, provided for convenience. It writes a H5std_string to this attribute.

Parameters
mem_type- IN: Attribute datatype (in memory)
strg- IN: Data to be written
Exceptions
H5::AttributeIException

◆ write() [2/2]

void write ( const DataType & mem_type,
const void * buf ) const

Writes data to this attribute.

Parameters
mem_type- IN: Attribute datatype (in memory)
buf- IN: Data to be written
Exceptions
H5::AttributeIException

Friends And Related Symbol Documentation

◆ f_Attribute_setId

void f_Attribute_setId ( Attribute * attr,
hid_t new_id )
friend

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