TRIQS/h5
2.0.0
C++ interface to HDF5
Toggle main menu visibility
Loading...
Searching...
No Matches
h5.hpp
Go to the documentation of this file.
1
// Copyright (c) 2019-2024 Simons Foundation
2
//
3
// Licensed under the Apache License, Version 2.0 (the "License");
4
// you may not use this file except in compliance with the License.
5
// You may obtain a copy of the License at
6
//
7
// http://www.apache.org/licenses/LICENSE-2.0.txt
8
//
9
// Unless required by applicable law or agreed to in writing, software
10
// distributed under the License is distributed on an "AS IS" BASIS,
11
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
// See the License for the specific language governing permissions and
13
// limitations under the License.
14
//
15
// Authors: Thomas Hahn, Olivier Parcollet, Nils Wentzell
16
21
22
#ifndef LIBH5_H5_HPP
23
#define LIBH5_H5_HPP
24
25
#include "
./array_interface.hpp
"
26
#include "
./complex.hpp
"
27
#include "
./file.hpp
"
28
#include "
./format.hpp
"
29
#include "
./generic.hpp
"
30
#include "
./group.hpp
"
31
#include "
./object.hpp
"
32
#include "
./scalar.hpp
"
33
#include "
./serialization.hpp
"
34
#include "
./storable.hpp
"
35
#include "
./utils.hpp
"
36
#include "
./stl/string.hpp
"
37
#include "
./stl/array.hpp
"
38
#include "
./stl/vector.hpp
"
39
#include "
./stl/map.hpp
"
40
#include "
./stl/pair.hpp
"
41
#include "
./stl/tuple.hpp
"
42
#include "
./stl/optional.hpp
"
43
#include "
./stl/variant.hpp
"
44
45
// Define this so cpp2py modules know whether hdf5 was included
46
#define H5_INTERFACE_INCLUDED
47
48
// in some old version of hdf5 (Ubuntu 12.04 e.g.), the macro is not yet defined.
49
#ifndef H5_VERSION_GE
50
#define H5_VERSION_GE(Maj, Min, Rel) \
51
(((H5_VERS_MAJOR == Maj) && (H5_VERS_MINOR == Min) && (H5_VERS_RELEASE >= Rel)) || ((H5_VERS_MAJOR == Maj) && (H5_VERS_MINOR > Min)) \
52
|| (H5_VERS_MAJOR > Maj))
53
#endif
54
55
// Python wrapping declaration
56
#ifdef C2PY_INCLUDED
57
#include <h5/_h5py.wrap.hxx>
58
#endif
59
60
#endif
// LIBH5_H5_HPP
array.hpp
Provides functions to read/write std::array objects from/to HDF5.
array_interface.hpp
Provides a generic interface to read/write n-dimensional arrays from/to HDF5.
complex.hpp
Provides a compound type and type traits for complex numbers.
file.hpp
Provides a handle to an HDF5 file.
format.hpp
Provides utilities for reading and writing hdf5_format tags.
generic.hpp
Provides a generic interface for reading/writing data from/to various HDF5 objects.
group.hpp
Provides a handle to an HDF5 group and various methods to simplify the creation/opening of subgroups,...
map.hpp
Provides functions to read/write std::map objects from/to HDF5.
object.hpp
Provides a generic handle for HDF5 objects.
optional.hpp
Provides functions to read/write std::optional objects from/to HDF5.
pair.hpp
Provides functions to read/write std::pair objects from/to HDF5.
scalar.hpp
Provides a generic interface to read/write scalars from/to HDF5.
serialization.hpp
Provides generic serialize and deserialize functions for types that can be read/written from/to HDF5.
storable.hpp
Provides the Storable concept to check if a type can be read/written from/to HDF5.
string.hpp
Provides functions to read/write std::string, char* and h5::char_buf objects from/to HDF5.
tuple.hpp
Provides functions to read/write std::tuple object from/to HDF5.
utils.hpp
Provides some utility functions for h5.
variant.hpp
Provides functions to read/write std::variant object from/to HDF5.
vector.hpp
Provides functions to read/write std::vector objects from/to HDF5.
h5
h5.hpp
Generated by
1.17.0