#include <deal.II/base/hdf5.h>
This class implements an HDF5 Group
Definition at line 977 of file hdf5.h.
◆ GroupAccessMode
Group access mode
Enumerator |
---|
open | Opens an existing group
|
create | Creates a new group
|
Definition at line 983 of file hdf5.h.
◆ Group() [1/2]
This constructor creates or opens a group depending on the value of mode
. The group will be placed inside the group parent_group
. The parameter mpi
defines if the I/O operations are serial or parallel. This is an internal constructor, the functions open_group() and create_group() of the current class should be used to open or create a group.
Definition at line 329 of file hdf5.cc.
◆ Group() [2/2]
HDF5::Group::Group |
( |
const std::string & |
name, |
|
|
const bool |
mpi |
|
) |
| |
|
protected |
Internal constructor used by File. The constructor sets the protected const members of HDF5Group: name
and mpi
. It does not create or open a Group.
Definition at line 366 of file hdf5.cc.
◆ open_group()
Group HDF5::Group::open_group |
( |
const std::string & |
name | ) |
const |
◆ create_group()
Group HDF5::Group::create_group |
( |
const std::string & |
name | ) |
const |
◆ open_dataset()
DataSet HDF5::Group::open_dataset |
( |
const std::string & |
name | ) |
const |
Opens a dataset.
Definition at line 389 of file hdf5.cc.
◆ create_dataset()
template<typename number >
DataSet HDF5::Group::create_dataset |
( |
const std::string & |
name, |
|
|
const std::vector< hsize_t > & |
dimensions |
|
) |
| const |
Creates a dataset. number
can be float
, double
, std::complex<float>
, std::complex<double>
, int
or unsigned int
.
Datatype conversion takes place at the time of a read or write and is automatic. See the Data Transfer: Datatype Conversion and Selection section in the HDF5 User's Guide.
Definition at line 2238 of file hdf5.h.
◆ write_dataset()
template<typename Container >
void HDF5::Group::write_dataset |
( |
const std::string & |
name, |
|
|
const Container & |
data |
|
) |
| const |
Create and write data to a dataset. number
can be float
, double
, std::complex<float>
, std::complex<double>
, int
or unsigned int
.
Datatype conversion takes place at the time of a read or write and is automatic. See the Data Transfer: Datatype Conversion and Selection section in the HDF5 User's Guide.
Container
can be std::vector<float>
, std::vector<double>
, std::vector<std::complex<float>>
, std::vector<std::complex<double>>
, std::vector<int>
, std::vector<unsigned int>
, Vector<float>
, Vector<double>
, Vector<std::complex<float>>
, Vector<std::complex<double>>
, FullMatrix<float>
, FullMatrix<double>
, FullMatrix<std::complex<float>>
or FullMatrix<std::complex<double>>
.
Definition at line 2249 of file hdf5.h.
◆ get_attribute() [1/2]
template<typename T >
T HDF5::HDF5Object::get_attribute |
( |
const std::string & |
attr_name | ) |
const |
|
inherited |
Reads an attribute. T
can be float
, double
, std::complex<float>
, std::complex<double>
, int
, unsigned int
, bool
or std::string
. Note that the encoding of std::string
is UTF8 in order to be compatible with python3.
Datatype conversion takes place at the time of a read or write and is automatic. See the Data Transfer: Datatype Conversion and Selection section in the HDF5 User's Guide.
Definition at line 1602 of file hdf5.h.
◆ get_attribute() [2/2]
template<>
std::string HDF5::HDF5Object::get_attribute |
( |
const std::string & |
attr_name | ) |
const |
|
inlineinherited |
◆ set_attribute() [1/2]
template<typename T >
void HDF5::HDF5Object::set_attribute |
( |
const std::string & |
attr_name, |
|
|
const T |
value |
|
) |
| |
|
inherited |
Writes an attribute. T
can be float
, double
, std::complex<float>
, std::complex<double>
, int
, unsigned int
, bool
or std::string
. Note that the encoding of std::string
is UTF8 in order to be compatible with python3.
Datatype conversion takes place at the time of a read or write and is automatic. See the Data Transfer: Datatype Conversion and Selection section in the HDF5 User's Guide.
Definition at line 1679 of file hdf5.h.
◆ set_attribute() [2/2]
template<>
void HDF5::HDF5Object::set_attribute |
( |
const std::string & |
attr_name, |
|
|
const std::string |
value |
|
) |
| |
|
inlineinherited |
◆ get_name()
std::string HDF5::HDF5Object::get_name |
( |
| ) |
const |
|
inherited |
Returns the name of the object. In the case of File, name corresponds to the file name. In the case of Group and DataSet, name corresponds to the name of the object in the HDF5 file.
Definition at line 82 of file hdf5.cc.
◆ name
const std::string HDF5::HDF5Object::name |
|
protectedinherited |
Name of the HDF5Object. In the case of File, name
corresponds to the file name. In the case of Group and DataSet name
corresponds to the name of the object in the HDF5 file.
Definition at line 406 of file hdf5.h.
◆ hdf5_reference
std::shared_ptr<hid_t> HDF5::HDF5Object::hdf5_reference |
|
protectedinherited |
HDF5 identifier for the objects File, Group and DataSet. The std::shared_ptr<>
pointer allows the object to be copied. For example several parts of the program can share and access the same group; when all the functions that access the group are closed, the HDF5 resources of the group will be automatically released.
Definition at line 415 of file hdf5.h.
◆ mpi
const bool HDF5::HDF5Object::mpi |
|
protectedinherited |
If true use parallel HDF5, if false use serial HDF5.
Definition at line 420 of file hdf5.h.
The documentation for this class was generated from the following files: