Help us improve by taking our short survey: https://www.hdfgroup.org/website-survey/

| HDF5 Last Updated on 2025-11-11 The HDF5 Field Guide

- Main Page
- Getting started
- User Guide
- Reference Manual
- Cookbook
- Technical Notes
- RFCs
- Specifications
- Glossary
- Full-Text Search
- About

Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends
DataSet Class Reference

`#include <c++/src/H5DataSet.h>`

## Detailed Description

Class DataSet operates on HDF5 datasets.

An datasets 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 diagram for DataSet:

## Public Member Functions
virtual void | close () override
| DataSet ()
| DataSet (const Attribute &attr, const void *ref, H5R_type_t ref_type=H5R_OBJECT, const PropList &plist=PropList::DEFAULT)
| DataSet (const DataSet &original)
| DataSet (const H5Location &loc, const void *ref, H5R_type_t ref_type=H5R_OBJECT, const PropList &plist=PropList::DEFAULT)
| DataSet (const hid_t existing_id)
void | extend (const hsize_t *size) const
void | fillMemBuf (const void *fill, const DataType &fill_type, void *buf, const DataType &buf_type, const DataSpace &space) const
void | fillMemBuf (void *buf, const DataType &buf_type, const DataSpace &space) const
virtual H5std_string | fromClass () const override
| Returns this class name.
DSetAccPropList | getAccessPlist () const
DSetCreatPropList | getCreatePlist () const
virtual hid_t | getId () const override
virtual size_t | getInMemDataSize () const override
| Gets the size in memory of this abstract dataset.
haddr_t | getOffset () const
virtual DataSpace | getSpace () const override
| Gets the dataspace of this abstract dataset - pure virtual.
void | getSpaceStatus (H5D_space_status_t &status) const
virtual hsize_t | getStorageSize () const override
| Returns the amount of storage size required - pure virtual.
hsize_t | getVlenBufSize (const DataType &type, const DataSpace &space) const
int | iterateElems (void *buf, const DataType &type, const DataSpace &space, H5D_operator_t op, void *op_data=NULL)
DataSet & | operator= (const DataSet &original)
void | read (H5std_string &buf, const DataType &mem_type, const DataSpace &mem_space=DataSpace::ALL, const DataSpace &file_space=DataSpace::ALL, const DSetMemXferPropList &xfer_plist=DSetMemXferPropList::DEFAULT) const
void | read (void *buf, const DataType &mem_type, const DataSpace &mem_space=DataSpace::ALL, const DataSpace &file_space=DataSpace::ALL, const DSetMemXferPropList &xfer_plist=DSetMemXferPropList::DEFAULT) const
void | write (const H5std_string &buf, const DataType &mem_type, const DataSpace &mem_space=DataSpace::ALL, const DataSpace &file_space=DataSpace::ALL, const DSetMemXferPropList &xfer_plist=DSetMemXferPropList::DEFAULT) const
void | write (const void *buf, const DataType &mem_type, const DataSpace &mem_space=DataSpace::ALL, const DataSpace &file_space=DataSpace::ALL, const DSetMemXferPropList &xfer_plist=DSetMemXferPropList::DEFAULT) const
virtual | ~DataSet () override
Public Member Functions inherited from H5Object
bool | attrExists (const char *name) const
bool | attrExists (const H5std_string &name) const
Attribute | createAttribute (const char *name, const DataType &type, const DataSpace &space, const PropList &create_plist=PropList::DEFAULT) const
Attribute | createAttribute (const H5std_string &name, const DataType &type, const DataSpace &space, const PropList &create_plist=PropList::DEFAULT) const
int | getNumAttrs () const
H5std_string | getObjName () const
ssize_t | getObjName (char *obj_name, size_t buf_size=0) const
ssize_t | getObjName (H5std_string &obj_name, size_t len=0) const
int | iterateAttrs (attr_operator_t user_op, unsigned *idx=NULL, void *op_data=NULL)
unsigned | objVersion () const
Attribute | openAttribute (const char *name) const
Attribute | openAttribute (const H5std_string &name) const
Attribute | openAttribute (const unsigned int idx) const
void | removeAttr (const char *name) const
void | removeAttr (const H5std_string &name) const
void | renameAttr (const char *oldname, const char *newname) const
void | renameAttr (const H5std_string &oldname, const H5std_string &newname) const
void | visit (H5_index_t idx_type, H5_iter_order_t order, visit_operator_t user_op, void *op_data, unsigned int fields)
Public Member Functions inherited from H5Location
H5O_type_t | childObjType (const char *objname) const
H5O_type_t | childObjType (const H5std_string &objname) const
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
unsigned | childObjVersion (const char *objname) const
unsigned | childObjVersion (const H5std_string &objname) const
void | copyLink (const char *src_name, const char *dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | copyLink (const char *src_name, const Group &dst, const char *dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | copyLink (const H5std_string &src_name, const Group &dst, const H5std_string &dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | copyLink (const H5std_string &src_name, const H5std_string &dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
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
DataSet | createDataSet (const H5std_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
Group | createGroup (const char *name, const LinkCreatPropList &lcpl) const
Group | createGroup (const char *name, size_t size_hint=0) const
Group | createGroup (const H5std_string &name, const LinkCreatPropList &lcpl) const
Group | createGroup (const H5std_string &name, size_t size_hint=0) const
void | dereference (const H5Location &loc, const void *ref, H5R_type_t ref_type=H5R_OBJECT, const PropList &plist=PropList::DEFAULT)
bool | exists (const char *name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
bool | exists (const H5std_string &name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | flush (H5F_scope_t scope) const
ssize_t | getComment (const char *name, size_t buf_size, char *comment) const
H5std_string | getComment (const char *name, size_t buf_size=0) const
H5std_string | getComment (const H5std_string &name, size_t buf_size=0) const
H5std_string | getFileName () const
H5L_info2_t | getLinkInfo (const char *link_name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
H5L_info2_t | getLinkInfo (const H5std_string &link_name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
H5std_string | getLinkval (const char *link_name, size_t size=0) const
H5std_string | getLinkval (const H5std_string &link_name, size_t size=0) const
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
void | getNativeObjinfo (const char *name, H5O_native_info_t &objinfo, unsigned fields=H5O_NATIVE_INFO_HDR, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | getNativeObjinfo (const H5std_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
void | getNativeObjinfo (const H5std_string &name, H5O_native_info_t &objinfo, unsigned fields=H5O_NATIVE_INFO_HDR, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | getNativeObjinfo (H5O_native_info_t &objinfo, unsigned fields=H5O_NATIVE_INFO_HDR) const
hsize_t | getNumObjs () const
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
void | getObjinfo (const char *name, bool follow_link, H5G_stat_t &statbuf) const
void | getObjinfo (const char *name, H5G_stat_t &statbuf) const
void | getObjinfo (const char *name, H5O_info2_t &objinfo, unsigned fields=H5O_INFO_BASIC, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | getObjinfo (const H5std_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
void | getObjinfo (const H5std_string &name, bool follow_link, H5G_stat_t &statbuf) const
void | getObjinfo (const H5std_string &name, H5G_stat_t &statbuf) const
void | getObjinfo (const H5std_string &name, H5O_info2_t &objinfo, unsigned fields=H5O_INFO_BASIC, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | getObjinfo (H5O_info2_t &objinfo, unsigned fields=H5O_INFO_BASIC) const
H5std_string | getObjnameByIdx (hsize_t idx) const
ssize_t | getObjnameByIdx (hsize_t idx, char *name, size_t size) const
ssize_t | getObjnameByIdx (hsize_t idx, H5std_string &name, size_t size) const
H5G_obj_t | getObjType (void *ref, H5R_type_t ref_type=H5R_OBJECT) const
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
H5O_type_t | getRefObjType (void *ref, H5R_type_t ref_type=H5R_OBJECT) const
DataSpace | getRegion (void *ref, H5R_type_t ref_type=H5R_DATASET_REGION) const
| H5Location ()
int | iterateElems (const char *name, int *idx, H5G_iterate_t op, void *op_data)
int | iterateElems (const H5std_string &name, int *idx, H5G_iterate_t op, void *op_data)
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
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
void | link (const char *target_name, const char *link_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | link (const H5std_string &curr_name, const Group &new_loc, const H5std_string &new_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | link (const H5std_string &curr_name, const hid_t same_loc, const H5std_string &new_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | link (const H5std_string &target_name, const H5std_string &link_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | link (H5L_type_t link_type, const char *curr_name, const char *new_name) const
void | link (H5L_type_t link_type, const H5std_string &curr_name, const H5std_string &new_name) const
void | mount (const char *name, const H5File &child, const PropList &plist) const
void | mount (const H5std_string &name, const H5File &child, const PropList &plist) const
void | move (const char *src, const char *dst) const
void | move (const H5std_string &src, const H5std_string &dst) const
void | moveLink (const char *src_name, const char *dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | moveLink (const char *src_name, const Group &dst, const char *dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | moveLink (const H5std_string &src_name, const Group &dst, const H5std_string &dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | moveLink (const H5std_string &src_name, const H5std_string &dst_name, const LinkCreatPropList &lcpl=LinkCreatPropList::DEFAULT, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
bool | nameExists (const char *name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
bool | nameExists (const H5std_string &name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
DataSet | openDataSet (const char *name, const DSetAccPropList &dapl=DSetAccPropList::DEFAULT) const
DataSet | openDataSet (const H5std_string &name, const DSetAccPropList &dapl=DSetAccPropList::DEFAULT) const
Group | openGroup (const char *name) const
Group | openGroup (const H5std_string &name) const
void | reference (void *ref, const char *name, const DataSpace &dataspace, H5R_type_t ref_type=H5R_DATASET_REGION) const
void | reference (void *ref, const char *name, H5R_type_t ref_type=H5R_OBJECT) const
void | reference (void *ref, const H5std_string &name, const DataSpace &dataspace, H5R_type_t ref_type=H5R_DATASET_REGION) const
void | reference (void *ref, const H5std_string &name, H5R_type_t ref_type=H5R_OBJECT) const
void | removeComment (const char *name) const
void | removeComment (const H5std_string &name) const
void | setComment (const char *comment) const
void | setComment (const char *name, const char *comment) const
void | setComment (const H5std_string &comment) const
void | setComment (const H5std_string &name, const H5std_string &comment) const
virtual void | throwException (const H5std_string &func_name, const H5std_string &msg) const
| For subclasses, H5File and Group, to throw appropriate exception.
void | unlink (const char *link_name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | unlink (const H5std_string &link_name, const LinkAccPropList &lapl=LinkAccPropList::DEFAULT) const
void | unmount (const char *name) const
void | unmount (const H5std_string &name) const
Public Member Functions inherited from IdComponent
void | decRefCount () const
void | decRefCount (const hid_t obj_id) const
int | getCounter () const
int | getCounter (const hid_t obj_id) const
H5I_type_t | getHDFObjType () const
void | incRefCount () const
void | incRefCount (const hid_t obj_id) const
H5std_string | inMemFunc (const char *func_name) const
IdComponent & | operator= (const IdComponent &rhs)
void | setId (const hid_t new_id)
virtual | ~IdComponent ()=default
Public Member Functions inherited from AbstractDs
ArrayType | getArrayType () const
CompType | getCompType () const
DataType | getDataType () const
EnumType | getEnumType () const
FloatType | getFloatType () const
IntType | getIntType () const
StrType | getStrType () const
H5T_class_t | getTypeClass () const
VarLenType | getVarLenType () const
virtual | ~AbstractDs ()=default

## Static Public Member Functions
static void | vlenReclaim (const DataType &type, const DataSpace &space, const DSetMemXferPropList &xfer_plist, void *buf)
static void | vlenReclaim (void *buf, const DataType &type, const DataSpace &space=DataSpace::ALL, const DSetMemXferPropList &xfer_plist=DSetMemXferPropList::DEFAULT)
Static Public Member Functions inherited from IdComponent
static H5I_type_t | getHDFObjType (const hid_t obj_id)
static hsize_t | getNumMembers (H5I_type_t type)
static bool | isValid (hid_t an_id)
static bool | typeExists (H5I_type_t type)

## Protected Member Functions
virtual void | p_setId (const hid_t new_id) override
Protected Member Functions inherited from H5Object
| H5Object ()
virtual | ~H5Object () override=default
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 ()
H5std_string | p_get_file_name () const
Protected Member Functions inherited from AbstractDs
| AbstractDs ()

## Friends
void | f_DataSet_setId (DataSet *dset, hid_t new_id)

## Additional Inherited Members
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

## Constructor & Destructor Documentation

## ◆ DataSet() [1/5]

DataSet | ( | const H5Location & | loc,
|  | const void * | ref,
|  | H5R_type_t | ref_type = H5R_OBJECT,
|  | const PropList & | plist = PropList::DEFAULT )

## ◆ DataSet() [2/5]

DataSet | ( | const Attribute & | attr,
|  | const void * | ref,
|  | H5R_type_t | ref_type = H5R_OBJECT,
|  | const PropList & | plist = PropList::DEFAULT )

## ◆ DataSet() [3/5]

DataSet | ( |  | ) |

## ◆ DataSet() [4/5]

DataSet | ( | const DataSet & | original | ) |

## ◆ DataSet() [5/5]

DataSet | ( | const hid_t | existing_id | ) |

## ◆ ~DataSet()

virtual ~DataSet | ( |  | ) |
| override virtual

## Member Function Documentation

## ◆ close()

virtual void close | ( |  | ) |
| override virtual

Implements IdComponent.

## ◆ extend()

void extend | ( | const hsize_t * | size | ) | const

## ◆ fillMemBuf() [1/2]

void fillMemBuf | ( | const void * | fill,
|  | const DataType & | fill_type,
|  | void * | buf,
|  | const DataType & | buf_type,
|  | const DataSpace & | space ) const

## ◆ fillMemBuf() [2/2]

void fillMemBuf | ( | void * | buf,
|  | const DataType & | buf_type,
|  | const DataSpace & | space ) const

## ◆ fromClass()

virtual H5std_string fromClass | ( |  | ) | const
| override virtual

Returns this class name.

Reimplemented from IdComponent.

## ◆ getAccessPlist()

DSetAccPropList getAccessPlist | ( |  | ) | const

## ◆ getCreatePlist()

DSetCreatPropList getCreatePlist | ( |  | ) | const

## ◆ getId()

virtual hid_t getId | ( |  | ) | const
| override virtual

Implements H5Object.

## ◆ getInMemDataSize()

virtual size_t getInMemDataSize | ( |  | ) | const
| override virtual

Gets the size in memory of this abstract dataset.

Implements AbstractDs.

## ◆ getOffset()

haddr_t getOffset | ( |  | ) | const

## ◆ getSpace()

virtual DataSpace getSpace | ( |  | ) | const
| override virtual

Gets the dataspace of this abstract dataset - pure virtual.

Implements AbstractDs.

## ◆ getSpaceStatus()

void getSpaceStatus | ( | H5D_space_status_t & | status | ) | const

## ◆ getStorageSize()

virtual hsize_t getStorageSize | ( |  | ) | const
| override virtual

Returns the amount of storage size required - pure virtual.

Implements AbstractDs.

## ◆ getVlenBufSize()

hsize_t getVlenBufSize | ( | const DataType & | type,
|  | const DataSpace & | space ) const

## ◆ iterateElems()

int iterateElems | ( | void * | buf,
|  | const DataType & | type,
|  | const DataSpace & | space,
|  | H5D_operator_t | op,
|  | void * | op_data = NULL )

## ◆ operator=()

DataSet & operator= | ( | const DataSet & | original | ) |

## ◆ p_setId()

virtual void p_setId | ( | const hid_t | new_id | ) |
| override protected virtual

Implements H5Object.

## ◆ read() [1/2]

void read | ( | H5std_string & | buf,
|  | const DataType & | mem_type,
|  | const DataSpace & | mem_space = DataSpace::ALL,
|  | const DataSpace & | file_space = DataSpace::ALL,
|  | const DSetMemXferPropList & | xfer_plist = DSetMemXferPropList::DEFAULT ) const

## ◆ read() [2/2]

void read | ( | void * | buf,
|  | const DataType & | mem_type,
|  | const DataSpace & | mem_space = DataSpace::ALL,
|  | const DataSpace & | file_space = DataSpace::ALL,
|  | const DSetMemXferPropList & | xfer_plist = DSetMemXferPropList::DEFAULT ) const

## ◆ vlenReclaim() [1/2]

static void vlenReclaim | ( | const DataType & | type,
|  | const DataSpace & | space,
|  | const DSetMemXferPropList & | xfer_plist,
|  | void * | buf )
| static

## ◆ vlenReclaim() [2/2]

static void vlenReclaim | ( | void * | buf,
|  | const DataType & | type,
|  | const DataSpace & | space = DataSpace::ALL,
|  | const DSetMemXferPropList & | xfer_plist = DSetMemXferPropList::DEFAULT )
| static

## ◆ write() [1/2]

void write | ( | const H5std_string & | buf,
|  | const DataType & | mem_type,
|  | const DataSpace & | mem_space = DataSpace::ALL,
|  | const DataSpace & | file_space = DataSpace::ALL,
|  | const DSetMemXferPropList & | xfer_plist = DSetMemXferPropList::DEFAULT ) const

## ◆ write() [2/2]

void write | ( | const void * | buf,
|  | const DataType & | mem_type,
|  | const DataSpace & | mem_space = DataSpace::ALL,
|  | const DataSpace & | file_space = DataSpace::ALL,
|  | const DSetMemXferPropList & | xfer_plist = DSetMemXferPropList::DEFAULT ) const

## Friends And Related Symbol Documentation

## ◆ f_DataSet_setId

void f_DataSet_setId | ( | DataSet * | dset,
|  | hid_t | new_id )
| friend

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

- c++/src/H5DataSet.h