diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 000000000..e69de29bb diff --git a/_c_h_a_n_g_e_l_o_g_8md.html b/_c_h_a_n_g_e_l_o_g_8md.html new file mode 100644 index 000000000..d995824de --- /dev/null +++ b/_c_h_a_n_g_e_l_o_g_8md.html @@ -0,0 +1,107 @@ + + + + + + + +HighFive: /home/runner/work/HighFive/HighFive/CHANGELOG.md File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
/home/runner/work/HighFive/HighFive/CHANGELOG.md File Reference
+
+
+
+
+ + + + diff --git a/_h5__definitions_8hpp.html b/_h5__definitions_8hpp.html new file mode 100644 index 000000000..3760f3434 --- /dev/null +++ b/_h5__definitions_8hpp.html @@ -0,0 +1,278 @@ + + + + + + + +HighFive: highfive/bits/H5_definitions.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5_definitions.hpp File Reference
+
+
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+ + + +

+Macros

#define H5_DEPRECATED(msg)
 
+

Macro Definition Documentation

+ +

◆ H5_DEPRECATED

+ +
+
+ + + + + + + + +
#define H5_DEPRECATED( msg)
+
+ +
+
+
+
+ + + + diff --git a/_h5__definitions_8hpp.js b/_h5__definitions_8hpp.js new file mode 100644 index 000000000..d698e9a58 --- /dev/null +++ b/_h5__definitions_8hpp.js @@ -0,0 +1,4 @@ +var _h5__definitions_8hpp = +[ + [ "H5_DEPRECATED", "_h5__definitions_8hpp.html#ac2f1b4314e067c8a44383228d8a47cce", null ] +]; \ No newline at end of file diff --git a/_h5__definitions_8hpp__dep__incl.map b/_h5__definitions_8hpp__dep__incl.map new file mode 100644 index 000000000..ed95884a0 --- /dev/null +++ b/_h5__definitions_8hpp__dep__incl.map @@ -0,0 +1,131 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5__definitions_8hpp__dep__incl.md5 b/_h5__definitions_8hpp__dep__incl.md5 new file mode 100644 index 000000000..c09e1e4a6 --- /dev/null +++ b/_h5__definitions_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +7497ceaba3280c0dddbef010b7ab4940 \ No newline at end of file diff --git a/_h5__definitions_8hpp__dep__incl.png b/_h5__definitions_8hpp__dep__incl.png new file mode 100644 index 000000000..84cef355c Binary files /dev/null and b/_h5__definitions_8hpp__dep__incl.png differ diff --git a/_h5__definitions_8hpp_source.html b/_h5__definitions_8hpp_source.html new file mode 100644 index 000000000..eea04df7d --- /dev/null +++ b/_h5__definitions_8hpp_source.html @@ -0,0 +1,186 @@ + + + + + + + +HighFive: highfive/bits/H5_definitions.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5_definitions.hpp
+
+
+Go to the documentation of this file.
1#pragma once
+
2
+
3#if defined(__GNUC__) || defined(__clang__)
+
4#define H5_DEPRECATED(msg) __attribute__((deprecated(#msg)))
+
5#elif defined(_MSC_VER)
+
6#define H5_DEPRECATED(msg) __declspec(deprecated(#msg))
+
7#else
+
8#pragma message("WARNING: Compiler doesnt support deprecation")
+
9#define H5_DEPRECATED(msg)
+
10#endif
+
11
+
12
+
13// Forward declarations
+
14
+
+
15namespace HighFive {
+
16
+
17enum class LinkType;
+
18enum class ObjectType;
+
19enum class PropertyType;
+
20
+
21class Attribute;
+
22class DataSet;
+
23class DataSpace;
+
24class DataType;
+
25class Exception;
+
26class File;
+
27class FileDriver;
+
28class Group;
+
29class Object;
+
30class ObjectInfo;
+
31class Reference;
+
32class Selection;
+
33class SilenceHDF5;
+
34
+
35template <typename T>
+
36class AtomicType;
+
37
+
38template <typename Derivate>
+
39class AnnotateTraits;
+
40
+
41template <std::size_t N>
+ +
43
+
44template <typename Derivate>
+
45class NodeTraits;
+
46
+
47template <PropertyType T>
+
48class PropertyList;
+
49
+
50} // namespace HighFive
+
+
Definition H5Annotate_traits.hpp:18
+
create an HDF5 DataType from a C++ type
Definition H5DataType.hpp:185
+
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
+
Class representing a dataset.
Definition H5DataSet.hpp:30
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
Basic HighFive Exception class.
Definition H5Exception.hpp:23
+
file driver base concept
Definition H5FileDriver.hpp:18
+
File class.
Definition H5File.hpp:24
+
A structure representing a set of fixed-length strings.
Definition H5DataType.hpp:358
+
Represents an hdf5 group.
Definition H5Group.hpp:46
+
NodeTraits: Base class for Group and File.
Definition H5Node_traits.hpp:28
+
Definition H5Object.hpp:54
+
A class for accessing hdf5 objects info.
Definition H5Object.hpp:126
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
An HDF5 (object) reference type.
Definition H5Reference.hpp:33
+
Selection: represent a view on a slice/part of a dataset.
Definition H5Selection.hpp:27
+
Utility class to disable HDF5 stack printing inside a scope.
Definition H5Utility.hpp:24
+
PropertyType
Types of property lists.
Definition H5PropertyList.hpp:89
+
Definition H5_definitions.hpp:15
+
LinkType
The possible types of group entries (link concept)
Definition H5Node_traits.hpp:250
+
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+
+
+ + + + diff --git a/_h5_annotate__traits_8hpp.html b/_h5_annotate__traits_8hpp.html new file mode 100644 index 000000000..bb7e3d3f8 --- /dev/null +++ b/_h5_annotate__traits_8hpp.html @@ -0,0 +1,323 @@ + + + + + + + +HighFive: highfive/bits/H5Annotate_traits.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Annotate_traits.hpp File Reference
+
+
+
#include <string>
+#include "../H5Attribute.hpp"
+
+Include dependency graph for H5Annotate_traits.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  HighFive::AnnotateTraits< Derivate >
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_annotate__traits_8hpp.js b/_h5_annotate__traits_8hpp.js new file mode 100644 index 000000000..bd6ede4fd --- /dev/null +++ b/_h5_annotate__traits_8hpp.js @@ -0,0 +1,4 @@ +var _h5_annotate__traits_8hpp = +[ + [ "HighFive::AnnotateTraits< Derivate >", "class_high_five_1_1_annotate_traits.html", "class_high_five_1_1_annotate_traits" ] +]; \ No newline at end of file diff --git a/_h5_annotate__traits_8hpp__dep__incl.map b/_h5_annotate__traits_8hpp__dep__incl.map new file mode 100644 index 000000000..a9042d402 --- /dev/null +++ b/_h5_annotate__traits_8hpp__dep__incl.map @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_annotate__traits_8hpp__dep__incl.md5 b/_h5_annotate__traits_8hpp__dep__incl.md5 new file mode 100644 index 000000000..ea1e07a00 --- /dev/null +++ b/_h5_annotate__traits_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +b25e093ae6a5422c7ecb05850c19f6ea \ No newline at end of file diff --git a/_h5_annotate__traits_8hpp__dep__incl.png b/_h5_annotate__traits_8hpp__dep__incl.png new file mode 100644 index 000000000..1be6b67a1 Binary files /dev/null and b/_h5_annotate__traits_8hpp__dep__incl.png differ diff --git a/_h5_annotate__traits_8hpp__incl.map b/_h5_annotate__traits_8hpp__incl.map new file mode 100644 index 000000000..a726e9319 --- /dev/null +++ b/_h5_annotate__traits_8hpp__incl.map @@ -0,0 +1,135 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_annotate__traits_8hpp__incl.md5 b/_h5_annotate__traits_8hpp__incl.md5 new file mode 100644 index 000000000..f4a76ef83 --- /dev/null +++ b/_h5_annotate__traits_8hpp__incl.md5 @@ -0,0 +1 @@ +5f59783fe3f0404c07c244be85671ccc \ No newline at end of file diff --git a/_h5_annotate__traits_8hpp__incl.png b/_h5_annotate__traits_8hpp__incl.png new file mode 100644 index 000000000..1a5b52a04 Binary files /dev/null and b/_h5_annotate__traits_8hpp__incl.png differ diff --git a/_h5_annotate__traits_8hpp_source.html b/_h5_annotate__traits_8hpp_source.html new file mode 100644 index 000000000..557e9c1c2 --- /dev/null +++ b/_h5_annotate__traits_8hpp_source.html @@ -0,0 +1,168 @@ + + + + + + + +HighFive: highfive/bits/H5Annotate_traits.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Annotate_traits.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <string>
+
12
+
13#include "../H5Attribute.hpp"
+
14
+
15namespace HighFive {
+
16
+
17template <typename Derivate>
+
+ +
19 public:
+
27 Attribute createAttribute(const std::string& attribute_name,
+
28 const DataSpace& space,
+
29 const DataType& type);
+
30
+
38 template <typename Type>
+
39 Attribute createAttribute(const std::string& attribute_name, const DataSpace& space);
+
40
+
49 template <typename T>
+
50 Attribute createAttribute(const std::string& attribute_name, const T& data);
+
51
+
55 void deleteAttribute(const std::string& attribute_name);
+
56
+
61 Attribute getAttribute(const std::string& attribute_name) const;
+
62
+
66 size_t getNumberAttributes() const;
+
67
+
71 std::vector<std::string> listAttributeNames() const;
+
72
+
76 bool hasAttribute(const std::string& attr_name) const;
+
77
+
78 private:
+
79 using derivate_type = Derivate;
+
80};
+
+
81} // namespace HighFive
+
Definition H5Annotate_traits.hpp:18
+
Attribute createAttribute(const std::string &attribute_name, const DataSpace &space, const DataType &type)
create a new attribute with the name attribute_name
Definition H5Annotate_traits_misc.hpp:23
+
std::vector< std::string > listAttributeNames() const
list all attribute name of the node / group
Definition H5Annotate_traits_misc.hpp:88
+
void deleteAttribute(const std::string &attribute_name)
deleteAttribute let you delete an attribute by its name.
Definition H5Annotate_traits_misc.hpp:59
+
Attribute getAttribute(const std::string &attribute_name) const
open an existing attribute with the name attribute_name
Definition H5Annotate_traits_misc.hpp:67
+
bool hasAttribute(const std::string &attr_name) const
checks an attribute exists
Definition H5Annotate_traits_misc.hpp:109
+
size_t getNumberAttributes() const
return the number of attributes of the node / group
Definition H5Annotate_traits_misc.hpp:78
+
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
Definition H5_definitions.hpp:15
+
+
+ + + + diff --git a/_h5_annotate__traits__misc_8hpp.html b/_h5_annotate__traits__misc_8hpp.html new file mode 100644 index 000000000..726c06989 --- /dev/null +++ b/_h5_annotate__traits__misc_8hpp.html @@ -0,0 +1,330 @@ + + + + + + + +HighFive: highfive/bits/H5Annotate_traits_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Annotate_traits_misc.hpp File Reference
+
+
+
#include <string>
+#include <vector>
+#include <H5Apublic.h>
+#include <H5Ppublic.h>
+#include "H5Attribute_misc.hpp"
+#include "H5Iterables_misc.hpp"
+
+Include dependency graph for H5Annotate_traits_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_annotate__traits__misc_8hpp__dep__incl.map b/_h5_annotate__traits__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..7c150265c --- /dev/null +++ b/_h5_annotate__traits__misc_8hpp__dep__incl.map @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_annotate__traits__misc_8hpp__dep__incl.md5 b/_h5_annotate__traits__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..7cc36039f --- /dev/null +++ b/_h5_annotate__traits__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +d0d9af31102048f976c29315b82ed19d \ No newline at end of file diff --git a/_h5_annotate__traits__misc_8hpp__dep__incl.png b/_h5_annotate__traits__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..8ef0ccc2f Binary files /dev/null and b/_h5_annotate__traits__misc_8hpp__dep__incl.png differ diff --git a/_h5_annotate__traits__misc_8hpp__incl.map b/_h5_annotate__traits__misc_8hpp__incl.map new file mode 100644 index 000000000..22c3fa130 --- /dev/null +++ b/_h5_annotate__traits__misc_8hpp__incl.map @@ -0,0 +1,158 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_annotate__traits__misc_8hpp__incl.md5 b/_h5_annotate__traits__misc_8hpp__incl.md5 new file mode 100644 index 000000000..afde6751f --- /dev/null +++ b/_h5_annotate__traits__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +58375069ced7eb6d891661a3e6ef5be2 \ No newline at end of file diff --git a/_h5_annotate__traits__misc_8hpp__incl.png b/_h5_annotate__traits__misc_8hpp__incl.png new file mode 100644 index 000000000..f1d2a9252 Binary files /dev/null and b/_h5_annotate__traits__misc_8hpp__incl.png differ diff --git a/_h5_annotate__traits__misc_8hpp_source.html b/_h5_annotate__traits__misc_8hpp_source.html new file mode 100644 index 000000000..8a3e01f2a --- /dev/null +++ b/_h5_annotate__traits__misc_8hpp_source.html @@ -0,0 +1,279 @@ + + + + + + + +HighFive: highfive/bits/H5Annotate_traits_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Annotate_traits_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <string>
+
12#include <vector>
+
13
+
14#include <H5Apublic.h>
+
15#include <H5Ppublic.h>
+
16
+
17#include "H5Attribute_misc.hpp"
+
18#include "H5Iterables_misc.hpp"
+
19
+
20namespace HighFive {
+
21
+
22template <typename Derivate>
+
+
23inline Attribute AnnotateTraits<Derivate>::createAttribute(const std::string& attribute_name,
+
24 const DataSpace& space,
+
25 const DataType& dtype) {
+
26 auto attr_id = H5Acreate2(static_cast<Derivate*>(this)->getId(),
+
+
27 attribute_name.c_str(),
+
28 dtype.getId(),
+
29 space.getId(),
+
30 H5P_DEFAULT,
+
31 H5P_DEFAULT);
+
32 if (attr_id < 0) {
+ +
34 std::string("Unable to create the attribute \"") + attribute_name + "\":");
+
35 }
+
36 return detail::make_attribute(attr_id);
+
37}
+
+
+
38
+
+
39template <typename Derivate>
+
40template <typename Type>
+
+
41inline Attribute AnnotateTraits<Derivate>::createAttribute(const std::string& attribute_name,
+
42 const DataSpace& space) {
+
43 return createAttribute(attribute_name, space, create_and_check_datatype<Type>());
+
44}
+
+
+
45
+
46template <typename Derivate>
+
47template <typename T>
+
+
48inline Attribute AnnotateTraits<Derivate>::createAttribute(const std::string& attribute_name,
+
49 const T& data) {
+
+ +
51 createAttribute(attribute_name,
+
52 DataSpace::From(data),
+
53 create_and_check_datatype<typename details::inspector<T>::base_type>());
+
54 att.write(data);
+
+
55 return att;
+
56}
+
57
+
58template <typename Derivate>
+
+
59inline void AnnotateTraits<Derivate>::deleteAttribute(const std::string& attribute_name) {
+
60 if (H5Adelete(static_cast<const Derivate*>(this)->getId(), attribute_name.c_str()) < 0) {
+
+ +
62 std::string("Unable to delete attribute \"") + attribute_name + "\":");
+
63 }
+
64}
+
65
+
+
66template <typename Derivate>
+
+
67inline Attribute AnnotateTraits<Derivate>::getAttribute(const std::string& attribute_name) const {
+
68 const auto attr_id =
+
69 H5Aopen(static_cast<const Derivate*>(this)->getId(), attribute_name.c_str(), H5P_DEFAULT);
+
70 if (attr_id < 0) {
+
+ +
72 std::string("Unable to open the attribute \"") + attribute_name + "\":");
+
73 }
+
74 return detail::make_attribute(attr_id);
+
75}
+
+ +
77template <typename Derivate>
+
+ +
79 int res = H5Aget_num_attrs(static_cast<const Derivate*>(this)->getId());
+
80 if (res < 0) {
+ +
82 std::string("Unable to count attributes in existing group or file"));
+
83 }
+
84 return static_cast<size_t>(res);
+
85}
+
+
86
+
87template <typename Derivate>
+
+
88inline std::vector<std::string> AnnotateTraits<Derivate>::listAttributeNames() const {
+
89 std::vector<std::string> names;
+
90 details::HighFiveIterateData iterateData(names);
+
91
+
92 size_t num_objs = getNumberAttributes();
+
93 names.reserve(num_objs);
+
94
+
95 if (H5Aiterate2(static_cast<const Derivate*>(this)->getId(),
+
96 H5_INDEX_NAME,
+
97 H5_ITER_INC,
+
98 NULL,
+
99 &details::internal_high_five_iterate<H5A_info_t>,
+
100 static_cast<void*>(&iterateData)) < 0) {
+ +
102 std::string("Unable to list attributes in group"));
+
103 }
+
104
+
105 return names;
+
106}
+
+
107
+
108template <typename Derivate>
+
+
109inline bool AnnotateTraits<Derivate>::hasAttribute(const std::string& attr_name) const {
+
110 int res = H5Aexists(static_cast<const Derivate*>(this)->getId(), attr_name.c_str());
+
111 if (res < 0) {
+ +
113 std::string("Unable to check for attribute in group"));
+
114 }
+
115 return res;
+
116}
+
+
+
117
+
118} // namespace HighFive
+
+
+
+
+
+
+
+
+ + +
Attribute createAttribute(const std::string &attribute_name, const DataSpace &space, const DataType &type)
create a new attribute with the name attribute_name
Definition H5Annotate_traits_misc.hpp:23
+
std::vector< std::string > listAttributeNames() const
list all attribute name of the node / group
Definition H5Annotate_traits_misc.hpp:88
+
void deleteAttribute(const std::string &attribute_name)
deleteAttribute let you delete an attribute by its name.
Definition H5Annotate_traits_misc.hpp:59
+
Attribute getAttribute(const std::string &attribute_name) const
open an existing attribute with the name attribute_name
Definition H5Annotate_traits_misc.hpp:67
+
bool hasAttribute(const std::string &attr_name) const
checks an attribute exists
Definition H5Annotate_traits_misc.hpp:109
+
size_t getNumberAttributes() const
return the number of attributes of the node / group
Definition H5Annotate_traits_misc.hpp:78
+
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
+
void write(const T &value)
Write the value into the Attribute.
Definition H5Attribute_misc.hpp:124
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
static DataSpace From(const T &value)
Automatically deduce the DataSpace from a container/value.
Definition H5Dataspace_misc.hpp:136
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
Definition H5_definitions.hpp:15
+
DataType create_and_check_datatype()
Create a DataType instance representing type T and perform a sanity check on its size.
Definition H5DataType_misc.hpp:573
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_attribute_8hpp.html b/_h5_attribute_8hpp.html new file mode 100644 index 000000000..3fb8fba55 --- /dev/null +++ b/_h5_attribute_8hpp.html @@ -0,0 +1,334 @@ + + + + + + + +HighFive: highfive/H5Attribute.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Attribute.hpp File Reference
+
+
+
#include <vector>
+#include <H5Apublic.h>
+#include "H5DataType.hpp"
+#include "H5Object.hpp"
+#include "bits/H5Friends.hpp"
+#include "bits/H5Path_traits.hpp"
+
+Include dependency graph for H5Attribute.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  HighFive::Attribute
 Class representing an Attribute of a DataSet or Group. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_attribute_8hpp.js b/_h5_attribute_8hpp.js new file mode 100644 index 000000000..07d5fd431 --- /dev/null +++ b/_h5_attribute_8hpp.js @@ -0,0 +1,4 @@ +var _h5_attribute_8hpp = +[ + [ "HighFive::Attribute", "class_high_five_1_1_attribute.html", "class_high_five_1_1_attribute" ] +]; \ No newline at end of file diff --git a/_h5_attribute_8hpp__dep__incl.map b/_h5_attribute_8hpp__dep__incl.map new file mode 100644 index 000000000..85a6ae28e --- /dev/null +++ b/_h5_attribute_8hpp__dep__incl.map @@ -0,0 +1,56 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_attribute_8hpp__dep__incl.md5 b/_h5_attribute_8hpp__dep__incl.md5 new file mode 100644 index 000000000..f276103a0 --- /dev/null +++ b/_h5_attribute_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +1ecdaf6a1a49ab6ae59516e9559b2dff \ No newline at end of file diff --git a/_h5_attribute_8hpp__dep__incl.png b/_h5_attribute_8hpp__dep__incl.png new file mode 100644 index 000000000..2d5b53723 Binary files /dev/null and b/_h5_attribute_8hpp__dep__incl.png differ diff --git a/_h5_attribute_8hpp__incl.map b/_h5_attribute_8hpp__incl.map new file mode 100644 index 000000000..ac08687ec --- /dev/null +++ b/_h5_attribute_8hpp__incl.map @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_attribute_8hpp__incl.md5 b/_h5_attribute_8hpp__incl.md5 new file mode 100644 index 000000000..b39154cd7 --- /dev/null +++ b/_h5_attribute_8hpp__incl.md5 @@ -0,0 +1 @@ +8bc2bd1b00f9ebb7b1b4c8a6ddbdddd0 \ No newline at end of file diff --git a/_h5_attribute_8hpp__incl.png b/_h5_attribute_8hpp__incl.png new file mode 100644 index 000000000..95cc18afa Binary files /dev/null and b/_h5_attribute_8hpp__incl.png differ diff --git a/_h5_attribute_8hpp_source.html b/_h5_attribute_8hpp_source.html new file mode 100644 index 000000000..49d25aa36 --- /dev/null +++ b/_h5_attribute_8hpp_source.html @@ -0,0 +1,230 @@ + + + + + + + +HighFive: highfive/H5Attribute.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Attribute.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Ali Can Demiralp <ali.demiralp@rwth-aachen.de>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <vector>
+
12
+
13#include <H5Apublic.h>
+
14
+
15#include "H5DataType.hpp"
+
16#include "H5Object.hpp"
+
17#include "bits/H5Friends.hpp"
+ +
19
+
20namespace HighFive {
+
21class DataSpace;
+
22
+
23namespace detail {
+
24
+
40Attribute make_attribute(hid_t hid);
+
41} // namespace detail
+
42
+
+
46class Attribute: public Object, public PathTraits<Attribute> {
+
47 public:
+ +
49
+
56 std::string getName() const;
+
57
+
63 size_t getStorageSize() const;
+
64
+
71 DataType getDataType() const;
+
72
+
79 DataSpace getSpace() const;
+
80
+
84 DataSpace getMemSpace() const;
+
85
+
93 template <typename T>
+
94 T read() const;
+
95
+
113 template <typename T>
+
114 void read(T& array) const;
+
115
+
134 template <typename T>
+
135 void read(T* array, const DataType& mem_datatype) const;
+
136
+
156 template <typename T>
+
157 void read(T* array) const;
+
158
+
176 template <typename T>
+
177 void write(const T& value);
+
178
+
202 template <typename T>
+
203 void write_raw(const T* buffer, const DataType& mem_datatype);
+
204
+
225 template <typename T>
+
226 void write_raw(const T* buffer);
+
227
+
+ +
242 return details::get_plist<AttributeCreateProps>(*this, H5Aget_create_plist);
+
243 }
+
+
244
+
245 // No empty attributes
+
246 Attribute() = delete;
+
247
+
248 protected:
+
249 using Object::Object;
+
250
+
251 private:
+
252#if HIGHFIVE_HAS_FRIEND_DECLARATIONS
+
253 template <typename Derivate>
+
254 friend class ::HighFive::AnnotateTraits;
+
255#endif
+
256
+
257 friend Attribute detail::make_attribute(hid_t);
+
258};
+
+
259
+
260namespace detail {
+
261inline Attribute make_attribute(hid_t hid) {
+
262 return Attribute(hid);
+
263}
+
264} // namespace detail
+
265
+
266} // namespace HighFive
+ + + + +
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
+
DataSpace getSpace() const
Get the DataSpace of the current Attribute.
Definition H5Attribute_misc.hpp:42
+
DataType getDataType() const
Get the DataType of the Attribute.
Definition H5Attribute_misc.hpp:36
+
std::string getName() const
Get the name of the current Attribute.
Definition H5Attribute_misc.hpp:27
+
static const ObjectType type
Definition H5Attribute.hpp:48
+
T read() const
Get the value of the Attribute.
Definition H5Attribute_misc.hpp:55
+
DataSpace getMemSpace() const
Get the DataSpace of the current Attribute.
Definition H5Attribute_misc.hpp:50
+
void write(const T &value)
Write the value into the Attribute.
Definition H5Attribute_misc.hpp:124
+ +
void write_raw(const T *buffer, const DataType &mem_datatype)
Write from a raw pointer.
Definition H5Attribute_misc.hpp:149
+
size_t getStorageSize() const
The number of bytes required to store the attribute in the HDF5 file.
Definition H5Attribute_misc.hpp:32
+
AttributeCreateProps getCreatePropertyList() const
The create property list used for this attribute.
Definition H5Attribute.hpp:241
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
Definition H5Object.hpp:54
+
Object()
Definition H5Object_misc.hpp:24
+
Definition H5Path_traits.hpp:16
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
Definition H5_definitions.hpp:15
+
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+ + +
+
+ + + + diff --git a/_h5_attribute__misc_8hpp.html b/_h5_attribute__misc_8hpp.html new file mode 100644 index 000000000..a6b025691 --- /dev/null +++ b/_h5_attribute__misc_8hpp.html @@ -0,0 +1,333 @@ + + + + + + + +HighFive: highfive/bits/H5Attribute_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Attribute_misc.hpp File Reference
+
+
+
#include <algorithm>
+#include <functional>
+#include <numeric>
+#include <sstream>
+#include <string>
+#include <H5Apublic.h>
+#include <H5Ppublic.h>
+#include "../H5DataSpace.hpp"
+#include "H5Converter_misc.hpp"
+#include "H5ReadWrite_misc.hpp"
+#include "H5Utils.hpp"
+
+Include dependency graph for H5Attribute_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_attribute__misc_8hpp__dep__incl.map b/_h5_attribute__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..36e530a82 --- /dev/null +++ b/_h5_attribute__misc_8hpp__dep__incl.map @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_attribute__misc_8hpp__dep__incl.md5 b/_h5_attribute__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..765d5bab8 --- /dev/null +++ b/_h5_attribute__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +cd6fbe81b74e4053765726d875dc0882 \ No newline at end of file diff --git a/_h5_attribute__misc_8hpp__dep__incl.png b/_h5_attribute__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..5e379689a Binary files /dev/null and b/_h5_attribute__misc_8hpp__dep__incl.png differ diff --git a/_h5_attribute__misc_8hpp__incl.map b/_h5_attribute__misc_8hpp__incl.map new file mode 100644 index 000000000..daa349daa --- /dev/null +++ b/_h5_attribute__misc_8hpp__incl.map @@ -0,0 +1,154 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_attribute__misc_8hpp__incl.md5 b/_h5_attribute__misc_8hpp__incl.md5 new file mode 100644 index 000000000..f533cd053 --- /dev/null +++ b/_h5_attribute__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +d1b7fe00b26cde80e4b4d36881b50592 \ No newline at end of file diff --git a/_h5_attribute__misc_8hpp__incl.png b/_h5_attribute__misc_8hpp__incl.png new file mode 100644 index 000000000..203590010 Binary files /dev/null and b/_h5_attribute__misc_8hpp__incl.png differ diff --git a/_h5_attribute__misc_8hpp_source.html b/_h5_attribute__misc_8hpp_source.html new file mode 100644 index 000000000..e0b6fb28c --- /dev/null +++ b/_h5_attribute__misc_8hpp_source.html @@ -0,0 +1,321 @@ + + + + + + + +HighFive: highfive/bits/H5Attribute_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Attribute_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Ali Can Demiralp <ali.demiralp@rwth-aachen.de>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <algorithm>
+
12#include <functional>
+
13#include <numeric>
+
14#include <sstream>
+
15#include <string>
+
16
+
17#include <H5Apublic.h>
+
18#include <H5Ppublic.h>
+
19
+
20#include "../H5DataSpace.hpp"
+
21#include "H5Converter_misc.hpp"
+
22#include "H5ReadWrite_misc.hpp"
+
23#include "H5Utils.hpp"
+
24
+
25namespace HighFive {
+
26
+
+
27inline std::string Attribute::getName() const {
+
28 return details::get_name(
+
29 [&](char* buffer, size_t length) { return H5Aget_name(_hid, length, buffer); });
+
30}
+
+
31
+
+
32inline size_t Attribute::getStorageSize() const {
+
33 return static_cast<size_t>(H5Aget_storage_size(_hid));
+
34}
+
+
35
+
+ +
37 DataType res;
+
38 res._hid = H5Aget_type(_hid);
+
39 return res;
+
40}
+
+
41
+
+ +
43 DataSpace space;
+
44 if ((space._hid = H5Aget_space(_hid)) < 0) {
+
45 HDF5ErrMapper::ToException<AttributeException>("Unable to get DataSpace out of Attribute");
+
46 }
+
47 return space;
+
48}
+
+
49
+
+ +
51 return getSpace();
+
52}
+
+
53
+
54template <typename T>
+
+
55inline T Attribute::read() const {
+
56 T array;
+
57 read(array);
+
58 return array;
+
59}
+
+
60
+
61template <typename T>
+
+
62inline void Attribute::read(T& array) const {
+
63 const DataSpace& mem_space = getMemSpace();
+
64 auto file_datatype = getDataType();
+
65 const details::BufferInfo<T> buffer_info(
+
66 file_datatype,
+
67 [this]() -> std::string { return this->getName(); },
+
68 details::BufferInfo<T>::read);
+
69
+
70 if (!details::checkDimensions(mem_space, buffer_info.n_dimensions)) {
+
71 std::ostringstream ss;
+
72 ss << "Impossible to read DataSet of dimensions " << mem_space.getNumberDimensions()
+
73 << " into arrays of dimensions " << buffer_info.n_dimensions;
+
74 throw DataSpaceException(ss.str());
+
75 }
+
76 auto dims = mem_space.getDimensions();
+
77
+
78 if (mem_space.getElementCount() == 0) {
+
79 auto effective_dims = details::squeezeDimensions(dims,
+
80 details::inspector<T>::recursive_ndim);
+
81
+
82 details::inspector<T>::prepare(array, effective_dims);
+
83 return;
+
84 }
+
85
+
86 auto r = details::data_converter::get_reader<T>(dims, array, file_datatype);
+
87 read(r.getPointer(), buffer_info.data_type);
+
88 // re-arrange results
+
89 r.unserialize(array);
+
90
+
91 auto t = buffer_info.data_type;
+
92 auto c = t.getClass();
+
93
+
94 if (c == DataTypeClass::VarLen || t.isVariableStr()) {
+
95#if H5_VERSION_GE(1, 12, 0)
+
96 // This one have been created in 1.12.0
+
97 (void) H5Treclaim(t.getId(), mem_space.getId(), H5P_DEFAULT, r.getPointer());
+
98#else
+
99 // This one is deprecated since 1.12.0
+
100 (void) H5Dvlen_reclaim(t.getId(), mem_space.getId(), H5P_DEFAULT, r.getPointer());
+
101#endif
+
102 }
+
103}
+
+
104
+
105template <typename T>
+
+
106inline void Attribute::read(T* array, const DataType& mem_datatype) const {
+
107 static_assert(!std::is_const<T>::value,
+
108 "read() requires a non-const structure to read data into");
+
109
+
110 if (H5Aread(getId(), mem_datatype.getId(), static_cast<void*>(array)) < 0) {
+
111 HDF5ErrMapper::ToException<AttributeException>("Error during HDF5 Read: ");
+
112 }
+
113}
+
+
114
+
115template <typename T>
+
+
116inline void Attribute::read(T* array) const {
+
117 using element_type = typename details::inspector<T>::base_type;
+
118 const DataType& mem_datatype = create_and_check_datatype<element_type>();
+
119
+
120 read(array, mem_datatype);
+
121}
+
+
122
+
123template <typename T>
+
+
124inline void Attribute::write(const T& buffer) {
+
125 const DataSpace& mem_space = getMemSpace();
+
126
+
127 if (mem_space.getElementCount() == 0) {
+
128 return;
+
129 }
+
130
+
131 auto file_datatype = getDataType();
+
132
+
133 const details::BufferInfo<T> buffer_info(
+
134 file_datatype,
+
135 [this]() -> std::string { return this->getName(); },
+
136 details::BufferInfo<T>::write);
+
137
+
138 if (!details::checkDimensions(mem_space, buffer_info.n_dimensions)) {
+
139 std::ostringstream ss;
+
140 ss << "Impossible to write buffer of dimensions " << buffer_info.n_dimensions
+
141 << " into dataset of dimensions " << mem_space.getNumberDimensions();
+
142 throw DataSpaceException(ss.str());
+
143 }
+
144 auto w = details::data_converter::serialize<T>(buffer, file_datatype);
+
145 write_raw(w.getPointer(), buffer_info.data_type);
+
146}
+
+
147
+
148template <typename T>
+
+
149inline void Attribute::write_raw(const T* buffer, const DataType& mem_datatype) {
+
150 if (H5Awrite(getId(), mem_datatype.getId(), buffer) < 0) {
+
151 HDF5ErrMapper::ToException<DataSetException>("Error during HDF5 Write: ");
+
152 }
+
153}
+
+
154
+
155template <typename T>
+
+
156inline void Attribute::write_raw(const T* buffer) {
+
157 using element_type = typename details::inspector<T>::base_type;
+
158 const auto& mem_datatype = create_and_check_datatype<element_type>();
+
159
+
160 write_raw(buffer, mem_datatype);
+
161}
+
+
162
+
163} // namespace HighFive
+ + + +
DataSpace getSpace() const
Get the DataSpace of the current Attribute.
Definition H5Attribute_misc.hpp:42
+
DataType getDataType() const
Get the DataType of the Attribute.
Definition H5Attribute_misc.hpp:36
+
std::string getName() const
Get the name of the current Attribute.
Definition H5Attribute_misc.hpp:27
+
T read() const
Get the value of the Attribute.
Definition H5Attribute_misc.hpp:55
+
DataSpace getMemSpace() const
Get the DataSpace of the current Attribute.
Definition H5Attribute_misc.hpp:50
+
void write(const T &value)
Write the value into the Attribute.
Definition H5Attribute_misc.hpp:124
+
void write_raw(const T *buffer, const DataType &mem_datatype)
Write from a raw pointer.
Definition H5Attribute_misc.hpp:149
+
size_t getStorageSize() const
The number of bytes required to store the attribute in the HDF5 file.
Definition H5Attribute_misc.hpp:32
+
Exception specific to HighFive DataSpace interface.
Definition H5Exception.hpp:112
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
size_t getNumberDimensions() const
Returns the number of dimensions of a DataSpace.
Definition H5Dataspace_misc.hpp:93
+
size_t getElementCount() const
Return the number of elements in this DataSpace.
Definition H5Dataspace_misc.hpp:112
+
std::vector< size_t > getDimensions() const
Returns the size of the dataset in each dimension.
Definition H5Dataspace_misc.hpp:102
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
hid_t _hid
Definition H5Object.hpp:105
+
Definition H5_definitions.hpp:15
+ +
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_converter__misc_8hpp.html b/_h5_converter__misc_8hpp.html new file mode 100644 index 000000000..b1a9f8776 --- /dev/null +++ b/_h5_converter__misc_8hpp.html @@ -0,0 +1,332 @@ + + + + + + + +HighFive: highfive/bits/H5Converter_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Converter_misc.hpp File Reference
+
+
+
#include <type_traits>
+#include "H5Inspector_misc.hpp"
+#include "../H5DataType.hpp"
+
+Include dependency graph for H5Converter_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_converter__misc_8hpp__dep__incl.map b/_h5_converter__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..53549ccf6 --- /dev/null +++ b/_h5_converter__misc_8hpp__dep__incl.map @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_converter__misc_8hpp__dep__incl.md5 b/_h5_converter__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..89e32c211 --- /dev/null +++ b/_h5_converter__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +64799dabac0b4d8d40bd2207016ea188 \ No newline at end of file diff --git a/_h5_converter__misc_8hpp__dep__incl.png b/_h5_converter__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..29ee50671 Binary files /dev/null and b/_h5_converter__misc_8hpp__dep__incl.png differ diff --git a/_h5_converter__misc_8hpp__incl.map b/_h5_converter__misc_8hpp__incl.map new file mode 100644 index 000000000..725eb93ef --- /dev/null +++ b/_h5_converter__misc_8hpp__incl.map @@ -0,0 +1,132 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_converter__misc_8hpp__incl.md5 b/_h5_converter__misc_8hpp__incl.md5 new file mode 100644 index 000000000..5cba040dc --- /dev/null +++ b/_h5_converter__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +e2ff89b3f80e2e2d5c992c3c5548f6f2 \ No newline at end of file diff --git a/_h5_converter__misc_8hpp__incl.png b/_h5_converter__misc_8hpp__incl.png new file mode 100644 index 000000000..eebe10e4c Binary files /dev/null and b/_h5_converter__misc_8hpp__incl.png differ diff --git a/_h5_converter__misc_8hpp_source.html b/_h5_converter__misc_8hpp_source.html new file mode 100644 index 000000000..8f58fbf7c --- /dev/null +++ b/_h5_converter__misc_8hpp_source.html @@ -0,0 +1,474 @@ + + + + + + + +HighFive: highfive/bits/H5Converter_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Converter_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c) 2022 Blue Brain Project
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <type_traits>
+
12
+
13#include "H5Inspector_misc.hpp"
+
14#include "../H5DataType.hpp"
+
15
+
16namespace HighFive {
+
17namespace details {
+
18
+
19template <class T>
+
20struct is_std_string {
+
21 static constexpr bool value =
+
22 std::is_same<typename inspector<T>::base_type, std::string>::value;
+
23};
+
24
+
25template <class T, class V = void>
+
26struct enable_shallow_copy
+
27 : public std::enable_if<!is_std_string<T>::value && inspector<T>::is_trivially_copyable, V> {};
+
28
+
29template <class T, class V = void>
+
30struct enable_deep_copy
+
31 : public std::enable_if<!is_std_string<T>::value && !inspector<T>::is_trivially_copyable, V> {};
+
32
+
33template <class T, class V = void>
+
34struct enable_string_copy: public std::enable_if<is_std_string<T>::value, V> {};
+
35
+
36
+
37template <typename T, bool IsReadOnly>
+
38struct ShallowCopyBuffer {
+
39 using type = unqualified_t<T>;
+
40 using hdf5_type =
+
41 typename std::conditional<IsReadOnly,
+
42 typename std::add_const<typename inspector<T>::hdf5_type>::type,
+
43 typename inspector<T>::hdf5_type>::type;
+
44
+
45 ShallowCopyBuffer() = delete;
+
46
+
47 explicit ShallowCopyBuffer(typename std::conditional<IsReadOnly, const T&, T&>::type val)
+
48 : ptr(inspector<T>::data(val)){};
+
49
+
50 hdf5_type* getPointer() const {
+
51 return ptr;
+
52 }
+
53
+
54 hdf5_type* begin() const {
+
55 return getPointer();
+
56 }
+
57
+
58 void unserialize(T& /* val */) const {
+
59 /* nothing to do. */
+
60 }
+
61
+
62 private:
+
63 hdf5_type* ptr;
+
64};
+
65
+
66template <class T>
+
67struct DeepCopyBuffer {
+
68 using type = unqualified_t<T>;
+
69 using hdf5_type = typename inspector<type>::hdf5_type;
+
70
+
71 explicit DeepCopyBuffer(const std::vector<size_t>& _dims)
+
72 : buffer(inspector<T>::getSize(_dims))
+
73 , dims(_dims) {}
+
74
+
75 hdf5_type* getPointer() {
+
76 return buffer.data();
+
77 }
+
78
+
79 hdf5_type const* getPointer() const {
+
80 return buffer.data();
+
81 }
+
82
+
83 hdf5_type* begin() {
+
84 return getPointer();
+
85 }
+
86
+
87 hdf5_type const* begin() const {
+
88 return getPointer();
+
89 }
+
90
+
91 void unserialize(T& val) const {
+
92 inspector<type>::unserialize(buffer.data(), dims, val);
+
93 }
+
94
+
95 private:
+
96 std::vector<hdf5_type> buffer;
+
97 std::vector<size_t> dims;
+
98};
+
99
+
100enum class BufferMode { Read, Write };
+
101
+
102
+
106inline size_t char_buffer_size(char const* const str, size_t max_string_length) {
+
107 for (size_t i = 0; i <= max_string_length; ++i) {
+
108 if (str[i] == '\0') {
+
109 return i;
+
110 }
+
111 }
+
112
+
113 return max_string_length;
+
114}
+
115
+
116
+
164template <typename T, BufferMode buffer_mode>
+
165struct StringBuffer {
+
166 using type = unqualified_t<T>;
+
167 using hdf5_type = typename inspector<type>::hdf5_type;
+
168
+
169 class StringView {
+
170 public:
+
171 StringView(StringBuffer<T, buffer_mode>& _buffer, size_t _i)
+
172 : buffer(_buffer)
+
173 , i(_i) {}
+
174
+
182 void assign(char const* data, size_t length, StringPadding padding) {
+
183 if (buffer.isVariableLengthString()) {
+
184 if (padding == StringPadding::NullTerminated) {
+
185 buffer.variable_length_pointers[i] = data;
+
186 } else {
+
187 buffer.variable_length_buffer[i] = std::string(data, length);
+
188 buffer.variable_length_pointers[i] = buffer.variable_length_buffer[i].data();
+
189 }
+
190 } else if (buffer.isFixedLengthString()) {
+
191 // If the buffer is fixed-length and null-terminated, then
+
192 // `buffer.string_length` doesn't include the null-character.
+
193 if (length > buffer.string_length) {
+
194 throw std::invalid_argument("String length too big.");
+
195 }
+
196
+
197 memcpy(&buffer.fixed_length_buffer[i * buffer.string_size], data, length);
+
198 }
+
199 }
+
200
+
201 private:
+
202 StringBuffer<T, buffer_mode>& buffer;
+
203 size_t i;
+
204 };
+
205
+
206
+
207 class StringConstView {
+
208 public:
+
209 StringConstView(const StringBuffer<T, buffer_mode>& _buffer, size_t _i)
+
210 : buffer(_buffer)
+
211 , i(_i) {}
+
212
+
216 char const* data() const {
+
217 if (buffer.isVariableLengthString()) {
+
218 return buffer.variable_length_pointers[i];
+
219 } else {
+
220 return &buffer.fixed_length_buffer[i * buffer.string_size];
+
221 }
+
222 }
+
223
+
230 size_t length() const {
+
231 if (buffer.isNullTerminated()) {
+
232 return char_buffer_size(data(), buffer.string_length);
+
233 } else {
+
234 return buffer.string_length;
+
235 }
+
236 }
+
237
+
238 private:
+
239 const StringBuffer<T, buffer_mode>& buffer;
+
240 size_t i;
+
241 };
+
242
+
243
+
244 class Iterator {
+
245 public:
+
246 Iterator(StringBuffer<T, buffer_mode>& _buffer, size_t _pos)
+
247 : buffer(_buffer)
+
248 , pos(_pos) {}
+
249
+
250 Iterator operator+(size_t n_strings) const {
+
251 return Iterator(buffer, pos + n_strings);
+
252 }
+
253
+
254 void operator+=(size_t n_strings) {
+
255 pos += n_strings;
+
256 }
+
257
+
258 StringView operator*() {
+
259 return StringView(buffer, pos);
+
260 }
+
261
+
262 StringConstView operator*() const {
+
263 return StringConstView(buffer, pos);
+
264 }
+
265
+
266 private:
+
267 StringBuffer<T, buffer_mode>& buffer;
+
268 size_t pos;
+
269 };
+
270
+
271 StringBuffer(std::vector<size_t> _dims, const DataType& _file_datatype)
+
272 : file_datatype(_file_datatype.asStringType())
+
273 , padding(file_datatype.getPadding())
+
274 , string_size(file_datatype.isVariableStr() ? size_t(-1) : file_datatype.getSize())
+
275 , string_length(string_size - size_t(isNullTerminated()))
+
276 , dims(_dims) {
+
277 if (string_size == 0 && isNullTerminated()) {
+
278 throw DataTypeException(
+
279 "Fixed-length, null-terminated need at least one byte to store the "
+
280 "null-character.");
+
281 }
+
282
+
283 auto n_strings = compute_total_size(dims);
+
284 if (isVariableLengthString()) {
+
285 variable_length_buffer.resize(n_strings);
+
286 variable_length_pointers.resize(n_strings);
+
287 } else {
+
288 char pad = padding == StringPadding::SpacePadded ? ' ' : '\0';
+
289 fixed_length_buffer.assign(n_strings * string_size, pad);
+
290 }
+
291 }
+
292
+
293 bool isVariableLengthString() const {
+
294 return file_datatype.isVariableStr();
+
295 }
+
296
+
297 bool isFixedLengthString() const {
+
298 return file_datatype.isFixedLenStr();
+
299 }
+
300
+
301 bool isNullTerminated() const {
+
302 return file_datatype.getPadding() == StringPadding::NullTerminated;
+
303 }
+
304
+
305
+
306 void* getPointer() {
+
307 if (file_datatype.isVariableStr()) {
+
308 return variable_length_pointers.data();
+
309 } else {
+
310 return fixed_length_buffer.data();
+
311 }
+
312 }
+
313
+
314 Iterator begin() {
+
315 return Iterator(*this, 0ul);
+
316 }
+
317
+
318 void unserialize(T& val) {
+
319 inspector<type>::unserialize(begin(), dims, val);
+
320 }
+
321
+
322 private:
+
323 StringType file_datatype;
+
324 StringPadding padding;
+
325 size_t string_size; // Size of buffer required to store the string.
+
326 // Meaningful for fixed length strings only.
+
327 size_t string_length; // Semantic length of string.
+
328 std::vector<size_t> dims;
+
329
+
330 std::vector<char> fixed_length_buffer;
+
331 std::vector<std::string> variable_length_buffer;
+
332 std::vector<
+
333 typename std::conditional<buffer_mode == BufferMode::Write, const char, char>::type*>
+
334 variable_length_pointers;
+
335};
+
336
+
337
+
338template <typename T, typename Enable = void>
+
339struct Writer;
+
340
+
341template <typename T>
+
342struct Writer<T, typename enable_shallow_copy<T>::type>: public ShallowCopyBuffer<T, true> {
+
343 private:
+
344 using super = ShallowCopyBuffer<T, true>;
+
345
+
346 public:
+
347 explicit Writer(const T& val, const DataType& /* file_datatype */)
+
348 : super(val){};
+
349};
+
350
+
351template <typename T>
+
352struct Writer<T, typename enable_deep_copy<T>::type>: public DeepCopyBuffer<T> {
+
353 explicit Writer(const T& val, const DataType& /* file_datatype */)
+
354 : DeepCopyBuffer<T>(inspector<T>::getDimensions(val)) {
+
355 inspector<T>::serialize(val, this->begin());
+
356 }
+
357};
+
358
+
359template <typename T>
+
360struct Writer<T, typename enable_string_copy<T>::type>: public StringBuffer<T, BufferMode::Write> {
+
361 explicit Writer(const T& val, const DataType& _file_datatype)
+
362 : StringBuffer<T, BufferMode::Write>(inspector<T>::getDimensions(val), _file_datatype) {
+
363 inspector<T>::serialize(val, this->begin());
+
364 }
+
365};
+
366
+
367template <typename T, typename Enable = void>
+
368struct Reader;
+
369
+
370template <typename T>
+
371struct Reader<T, typename enable_shallow_copy<T>::type>: public ShallowCopyBuffer<T, false> {
+
372 private:
+
373 using super = ShallowCopyBuffer<T, false>;
+
374 using type = typename super::type;
+
375
+
376 public:
+
377 Reader(const std::vector<size_t>&, type& val, const DataType& /* file_datatype */)
+
378 : super(val) {}
+
379};
+
380
+
381template <typename T>
+
382struct Reader<T, typename enable_deep_copy<T>::type>: public DeepCopyBuffer<T> {
+
383 private:
+
384 using super = DeepCopyBuffer<T>;
+
385 using type = typename super::type;
+
386
+
387 public:
+
388 Reader(const std::vector<size_t>& _dims, type&, const DataType& /* file_datatype */)
+
389 : super(_dims) {}
+
390};
+
391
+
392
+
393template <typename T>
+
394struct Reader<T, typename enable_string_copy<T>::type>: public StringBuffer<T, BufferMode::Write> {
+
395 public:
+
396 explicit Reader(const std::vector<size_t>& _dims,
+
397 const T& /* val */,
+
398 const DataType& _file_datatype)
+
399 : StringBuffer<T, BufferMode::Write>(_dims, _file_datatype) {}
+
400};
+
401
+
402struct data_converter {
+
403 template <typename T>
+
404 static Writer<T> serialize(const typename inspector<T>::type& val,
+
405 const DataType& file_datatype) {
+
406 return Writer<T>(val, file_datatype);
+
407 }
+
408
+
409 template <typename T>
+
410 static Reader<T> get_reader(const std::vector<size_t>& dims,
+
411 T& val,
+
412 const DataType& file_datatype) {
+
413 // TODO Use bufferinfo for recursive_ndim
+
414 auto effective_dims = details::squeezeDimensions(dims, inspector<T>::recursive_ndim);
+
415 inspector<T>::prepare(val, effective_dims);
+
416 return Reader<T>(effective_dims, val, file_datatype);
+
417 }
+
418};
+
419
+
420} // namespace details
+
421} // namespace HighFive
+ +
size_t getSize(const File &file, const std::string &path)
Get the size of an existing DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:82
+
Definition H5_definitions.hpp:15
+
StringPadding
Definition string_padding.hpp:7
+ + +
size_t compute_total_size(const std::vector< size_t > &dims)
Definition H5Inspector_misc.hpp:128
+
+
+ + + + diff --git a/_h5_data_set_8hpp.html b/_h5_data_set_8hpp.html new file mode 100644 index 000000000..96368ccc0 --- /dev/null +++ b/_h5_data_set_8hpp.html @@ -0,0 +1,341 @@ + + + + + + + +HighFive: highfive/H5DataSet.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5DataSet.hpp File Reference
+
+
+
#include <vector>
+#include "H5DataSpace.hpp"
+#include "H5DataType.hpp"
+#include "H5Object.hpp"
+#include "bits/H5_definitions.hpp"
+#include "bits/H5Annotate_traits.hpp"
+#include "bits/H5Slice_traits.hpp"
+#include "bits/H5Path_traits.hpp"
+
+Include dependency graph for H5DataSet.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  HighFive::DataSet
 Class representing a dataset. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_data_set_8hpp.js b/_h5_data_set_8hpp.js new file mode 100644 index 000000000..2a562c59a --- /dev/null +++ b/_h5_data_set_8hpp.js @@ -0,0 +1,4 @@ +var _h5_data_set_8hpp = +[ + [ "HighFive::DataSet", "class_high_five_1_1_data_set.html", "class_high_five_1_1_data_set" ] +]; \ No newline at end of file diff --git a/_h5_data_set_8hpp__dep__incl.map b/_h5_data_set_8hpp__dep__incl.map new file mode 100644 index 000000000..7402d31b5 --- /dev/null +++ b/_h5_data_set_8hpp__dep__incl.map @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_data_set_8hpp__dep__incl.md5 b/_h5_data_set_8hpp__dep__incl.md5 new file mode 100644 index 000000000..f125ef66b --- /dev/null +++ b/_h5_data_set_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +f0c69396e8decb9ff40b3fd08ed3d7f4 \ No newline at end of file diff --git a/_h5_data_set_8hpp__dep__incl.png b/_h5_data_set_8hpp__dep__incl.png new file mode 100644 index 000000000..1f6debd18 Binary files /dev/null and b/_h5_data_set_8hpp__dep__incl.png differ diff --git a/_h5_data_set_8hpp__incl.map b/_h5_data_set_8hpp__incl.map new file mode 100644 index 000000000..97b31de1e --- /dev/null +++ b/_h5_data_set_8hpp__incl.map @@ -0,0 +1,153 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_data_set_8hpp__incl.md5 b/_h5_data_set_8hpp__incl.md5 new file mode 100644 index 000000000..37d97753b --- /dev/null +++ b/_h5_data_set_8hpp__incl.md5 @@ -0,0 +1 @@ +b838efabc89419cfc97171600506d523 \ No newline at end of file diff --git a/_h5_data_set_8hpp__incl.png b/_h5_data_set_8hpp__incl.png new file mode 100644 index 000000000..cb4479e95 Binary files /dev/null and b/_h5_data_set_8hpp__incl.png differ diff --git a/_h5_data_set_8hpp_source.html b/_h5_data_set_8hpp_source.html new file mode 100644 index 000000000..e076cc61d --- /dev/null +++ b/_h5_data_set_8hpp_source.html @@ -0,0 +1,233 @@ + + + + + + + +HighFive: highfive/H5DataSet.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5DataSet.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <vector>
+
12
+
13#include "H5DataSpace.hpp"
+
14#include "H5DataType.hpp"
+
15#include "H5Object.hpp"
+ + + + + +
21
+
22namespace HighFive {
+
23
+
+
27class DataSet: public Object,
+
28 public SliceTraits<DataSet>,
+
29 public AnnotateTraits<DataSet>,
+
30 public PathTraits<DataSet> {
+
31 public:
+ +
33
+
38 uint64_t getStorageSize() const;
+
39
+
44 uint64_t getOffset() const;
+
45
+
50 DataType getDataType() const;
+
51
+
56 DataSpace getSpace() const;
+
57
+
63 DataSpace getMemSpace() const;
+
64
+
65
+
71 void resize(const std::vector<size_t>& dims);
+
72
+
73
+
+
78 inline std::vector<size_t> getDimensions() const {
+
79 return getSpace().getDimensions();
+
80 }
+
+
81
+
+
87 inline size_t getElementCount() const {
+
88 return getSpace().getElementCount();
+
89 }
+
+
90
+
+ +
93 return details::get_plist<DataSetCreateProps>(*this, H5Dget_create_plist);
+
94 }
+
+
95
+
+ +
98 return details::get_plist<DataSetAccessProps>(*this, H5Dget_access_plist);
+
99 }
+
+
100
+
102 H5_DEPRECATED("Default constructor creates unsafe uninitialized objects")
+
103 DataSet() = default;
+
104
+
105 protected:
+
106 using Object::Object; // bring DataSet(hid_t)
+
107
+
+
108 DataSet(Object&& o) noexcept
+
109 : Object(std::move(o)) {}
+
+
110
+
111 friend class Reference;
+
112 template <typename Derivate>
+
113 friend class NodeTraits;
+
114};
+
+
115
+
116} // namespace HighFive
+ +
#define H5_DEPRECATED(msg)
Definition H5_definitions.hpp:9
+ + + + + + +
Definition H5Annotate_traits.hpp:18
+
Class representing a dataset.
Definition H5DataSet.hpp:30
+
DataSpace getMemSpace() const
getMemSpace
Definition H5DataSet_misc.hpp:40
+
void resize(const std::vector< size_t > &dims)
Change the size of the dataset.
Definition H5DataSet_misc.hpp:52
+
DataType getDataType() const
getDataType
Definition H5DataSet_misc.hpp:28
+
DataSetCreateProps getCreatePropertyList() const
Get the list of properties for creation of this dataset.
Definition H5DataSet.hpp:92
+
uint64_t getOffset() const
getOffset
Definition H5DataSet_misc.hpp:44
+
uint64_t getStorageSize() const
getStorageSize
Definition H5DataSet_misc.hpp:24
+
DataSpace getSpace() const
getSpace
Definition H5DataSet_misc.hpp:32
+
static const ObjectType type
Definition H5DataSet.hpp:32
+
size_t getElementCount() const
Get the total number of elements in the current dataset. E.g. 2x2x2 matrix has size 8....
Definition H5DataSet.hpp:87
+
DataSetAccessProps getAccessPropertyList() const
Get the list of properties for accession of this dataset.
Definition H5DataSet.hpp:97
+
std::vector< size_t > getDimensions() const
Get the dimensions of the whole DataSet. This is a shorthand for getSpace().getDimensions()
Definition H5DataSet.hpp:78
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
size_t getElementCount() const
Return the number of elements in this DataSpace.
Definition H5Dataspace_misc.hpp:112
+
std::vector< size_t > getDimensions() const
Returns the size of the dataset in each dimension.
Definition H5Dataspace_misc.hpp:102
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
NodeTraits: Base class for Group and File.
Definition H5Node_traits.hpp:28
+
Definition H5Object.hpp:54
+
Definition H5Path_traits.hpp:16
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
An HDF5 (object) reference type.
Definition H5Reference.hpp:33
+
Definition H5Slice_traits.hpp:249
+
Definition H5_definitions.hpp:15
+
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+ +
+
+ + + + diff --git a/_h5_data_set__misc_8hpp.html b/_h5_data_set__misc_8hpp.html new file mode 100644 index 000000000..3b57ad766 --- /dev/null +++ b/_h5_data_set__misc_8hpp.html @@ -0,0 +1,228 @@ + + + + + + + +HighFive: highfive/bits/H5DataSet_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5DataSet_misc.hpp File Reference
+
+
+
#include <algorithm>
+#include <functional>
+#include <numeric>
+#include <sstream>
+#include <string>
+#include <H5Dpublic.h>
+#include <H5Ppublic.h>
+#include "H5Utils.hpp"
+
+Include dependency graph for H5DataSet_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_data_set__misc_8hpp__dep__incl.map b/_h5_data_set__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..3353cd8ab --- /dev/null +++ b/_h5_data_set__misc_8hpp__dep__incl.map @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_data_set__misc_8hpp__dep__incl.md5 b/_h5_data_set__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..ea6adc8ed --- /dev/null +++ b/_h5_data_set__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +3f9160900530ea0647d2ea87b49a150d \ No newline at end of file diff --git a/_h5_data_set__misc_8hpp__dep__incl.png b/_h5_data_set__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..9ff6f11e7 Binary files /dev/null and b/_h5_data_set__misc_8hpp__dep__incl.png differ diff --git a/_h5_data_set__misc_8hpp__incl.map b/_h5_data_set__misc_8hpp__incl.map new file mode 100644 index 000000000..f7862564c --- /dev/null +++ b/_h5_data_set__misc_8hpp__incl.map @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_data_set__misc_8hpp__incl.md5 b/_h5_data_set__misc_8hpp__incl.md5 new file mode 100644 index 000000000..3daf8f12c --- /dev/null +++ b/_h5_data_set__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +b0fe88d9032bae543acf8edba3689c44 \ No newline at end of file diff --git a/_h5_data_set__misc_8hpp__incl.png b/_h5_data_set__misc_8hpp__incl.png new file mode 100644 index 000000000..e65f54bc0 Binary files /dev/null and b/_h5_data_set__misc_8hpp__incl.png differ diff --git a/_h5_data_set__misc_8hpp_source.html b/_h5_data_set__misc_8hpp_source.html new file mode 100644 index 000000000..9a56c0249 --- /dev/null +++ b/_h5_data_set__misc_8hpp_source.html @@ -0,0 +1,205 @@ + + + + + + + +HighFive: highfive/bits/H5DataSet_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5DataSet_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <algorithm>
+
12#include <functional>
+
13#include <numeric>
+
14#include <sstream>
+
15#include <string>
+
16
+
17#include <H5Dpublic.h>
+
18#include <H5Ppublic.h>
+
19
+
20#include "H5Utils.hpp"
+
21
+
22namespace HighFive {
+
23
+
+
24inline uint64_t DataSet::getStorageSize() const {
+
25 return H5Dget_storage_size(_hid);
+
26}
+
+
27
+
+ +
29 return DataType(H5Dget_type(_hid));
+
30}
+
+
31
+
+ +
33 DataSpace space;
+
34 if ((space._hid = H5Dget_space(_hid)) < 0) {
+
35 HDF5ErrMapper::ToException<DataSetException>("Unable to get DataSpace out of DataSet");
+
36 }
+
37 return space;
+
38}
+
+
39
+
+ +
41 return getSpace();
+
42}
+
+
43
+
+
44inline uint64_t DataSet::getOffset() const {
+
45 uint64_t addr = H5Dget_offset(_hid);
+
46 if (addr == HADDR_UNDEF) {
+
47 HDF5ErrMapper::ToException<DataSetException>("Cannot get offset of DataSet.");
+
48 }
+
49 return addr;
+
50}
+
+
51
+
+
52inline void DataSet::resize(const std::vector<size_t>& dims) {
+
53 const size_t numDimensions = getSpace().getDimensions().size();
+
54 if (dims.size() != numDimensions) {
+
55 HDF5ErrMapper::ToException<DataSetException>("Invalid dataspace dimensions, got " +
+
56 std::to_string(dims.size()) + " expected " +
+
57 std::to_string(numDimensions));
+
58 }
+
59
+
60 std::vector<hsize_t> real_dims(dims.begin(), dims.end());
+
61
+
62 if (H5Dset_extent(getId(), real_dims.data()) < 0) {
+
63 HDF5ErrMapper::ToException<DataSetException>("Could not resize dataset.");
+
64 }
+
65}
+
+
66
+
67} // namespace HighFive
+ +
DataSpace getMemSpace() const
getMemSpace
Definition H5DataSet_misc.hpp:40
+
void resize(const std::vector< size_t > &dims)
Change the size of the dataset.
Definition H5DataSet_misc.hpp:52
+
DataType getDataType() const
getDataType
Definition H5DataSet_misc.hpp:28
+
uint64_t getOffset() const
getOffset
Definition H5DataSet_misc.hpp:44
+
uint64_t getStorageSize() const
getStorageSize
Definition H5DataSet_misc.hpp:24
+
DataSpace getSpace() const
getSpace
Definition H5DataSet_misc.hpp:32
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
std::vector< size_t > getDimensions() const
Returns the size of the dataset in each dimension.
Definition H5Dataspace_misc.hpp:102
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
hid_t _hid
Definition H5Object.hpp:105
+
Definition H5_definitions.hpp:15
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_data_space_8hpp.html b/_h5_data_space_8hpp.html new file mode 100644 index 000000000..ca0235986 --- /dev/null +++ b/_h5_data_space_8hpp.html @@ -0,0 +1,342 @@ + + + + + + + +HighFive: highfive/H5DataSpace.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5DataSpace.hpp File Reference
+
+
+
#include <vector>
+#include <array>
+#include <cstdint>
+#include <type_traits>
+#include <initializer_list>
+#include "H5Object.hpp"
+#include "bits/H5_definitions.hpp"
+#include "bits/H5Dataspace_misc.hpp"
+
+Include dependency graph for H5DataSpace.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  HighFive::DataSpace
 Class representing the space (dimensions) of a DataSet. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_data_space_8hpp.js b/_h5_data_space_8hpp.js new file mode 100644 index 000000000..88a87ac0c --- /dev/null +++ b/_h5_data_space_8hpp.js @@ -0,0 +1,4 @@ +var _h5_data_space_8hpp = +[ + [ "HighFive::DataSpace", "class_high_five_1_1_data_space.html", "class_high_five_1_1_data_space" ] +]; \ No newline at end of file diff --git a/_h5_data_space_8hpp__dep__incl.map b/_h5_data_space_8hpp__dep__incl.map new file mode 100644 index 000000000..0ded98b1c --- /dev/null +++ b/_h5_data_space_8hpp__dep__incl.map @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_data_space_8hpp__dep__incl.md5 b/_h5_data_space_8hpp__dep__incl.md5 new file mode 100644 index 000000000..265c820d8 --- /dev/null +++ b/_h5_data_space_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +71b141c4fd86d1646dc574943a1c0711 \ No newline at end of file diff --git a/_h5_data_space_8hpp__dep__incl.png b/_h5_data_space_8hpp__dep__incl.png new file mode 100644 index 000000000..dd110a26c Binary files /dev/null and b/_h5_data_space_8hpp__dep__incl.png differ diff --git a/_h5_data_space_8hpp__incl.map b/_h5_data_space_8hpp__incl.map new file mode 100644 index 000000000..cab058fec --- /dev/null +++ b/_h5_data_space_8hpp__incl.map @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_data_space_8hpp__incl.md5 b/_h5_data_space_8hpp__incl.md5 new file mode 100644 index 000000000..a95161c53 --- /dev/null +++ b/_h5_data_space_8hpp__incl.md5 @@ -0,0 +1 @@ +ac4f7a8c21dc06bb1ae9c33920f511f6 \ No newline at end of file diff --git a/_h5_data_space_8hpp__incl.png b/_h5_data_space_8hpp__incl.png new file mode 100644 index 000000000..e2f1736ca Binary files /dev/null and b/_h5_data_space_8hpp__incl.png differ diff --git a/_h5_data_space_8hpp_source.html b/_h5_data_space_8hpp_source.html new file mode 100644 index 000000000..d92f5b857 --- /dev/null +++ b/_h5_data_space_8hpp_source.html @@ -0,0 +1,221 @@ + + + + + + + +HighFive: highfive/H5DataSpace.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5DataSpace.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <vector>
+
12#include <array>
+
13#include <cstdint>
+
14#include <type_traits>
+
15#include <initializer_list>
+
16
+
17#include "H5Object.hpp"
+ +
19
+
20namespace HighFive {
+
21
+
+
31class DataSpace: public Object {
+
32 public:
+ +
34
+
41 static const size_t UNLIMITED = SIZE_MAX;
+
42
+
+ + + +
51 // simple dataspace are handle directly from their dimensions
+
52 };
+
+
53
+
62 explicit DataSpace(const std::vector<size_t>& dims);
+
63
+
72 template <size_t N>
+
73 explicit DataSpace(const std::array<size_t, N>& dims);
+
74
+
83 DataSpace(const std::initializer_list<size_t>& dims);
+
84
+
94 template <typename... Args>
+
95 explicit DataSpace(size_t dim1, Args... dims);
+
96
+
108 // Attention: Explicitly disable DataSpace(int_like, int_like) from trying
+
109 // to use this constructor
+
110 template <typename IT,
+
111 typename = typename std::enable_if<!std::is_integral<IT>::value, IT>::type>
+
112 DataSpace(const IT begin, const IT end);
+
113
+
126 explicit DataSpace(const std::vector<size_t>& dims, const std::vector<size_t>& maxdims);
+
127
+
146 explicit DataSpace(DataspaceType space_type);
+
147
+
156 DataSpace clone() const;
+
157
+
164 size_t getNumberDimensions() const;
+
165
+
179 std::vector<size_t> getDimensions() const;
+
180
+
188 size_t getElementCount() const;
+
189
+
202 std::vector<size_t> getMaxDimensions() const;
+
203
+
217 template <typename T>
+
218 static DataSpace From(const T& value);
+
219
+
229 template <std::size_t N, std::size_t Width>
+
230 static DataSpace FromCharArrayStrings(const char (&string_array)[N][Width]);
+
231
+
232 protected:
+
233 DataSpace() = default;
+
234
+
235 friend class Attribute;
+
236 friend class File;
+
237 friend class DataSet;
+
238};
+
+
239
+
240} // namespace HighFive
+
241
+
242// We include bits right away since DataSpace is user-constructible
+ + + + +
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
+
Class representing a dataset.
Definition H5DataSet.hpp:30
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
static DataSpace FromCharArrayStrings(const char(&string_array)[N][Width])
Create a DataSpace from a value of type string array.
Definition H5Dataspace_misc.hpp:142
+
static const ObjectType type
Definition H5DataSpace.hpp:33
+
static DataSpace From(const T &value)
Automatically deduce the DataSpace from a container/value.
Definition H5Dataspace_misc.hpp:136
+
size_t getNumberDimensions() const
Returns the number of dimensions of a DataSpace.
Definition H5Dataspace_misc.hpp:93
+
std::vector< size_t > getMaxDimensions() const
Returns the maximum size of the dataset in each dimension.
Definition H5Dataspace_misc.hpp:122
+
DataspaceType
An enum to create scalar and null DataSpace with DataSpace::DataSpace(DataspaceType dtype).
Definition H5DataSpace.hpp:48
+
@ dataspace_scalar
Value to create scalar DataSpace.
Definition H5DataSpace.hpp:49
+
@ dataspace_null
Value to create null DataSpace.
Definition H5DataSpace.hpp:50
+
size_t getElementCount() const
Return the number of elements in this DataSpace.
Definition H5Dataspace_misc.hpp:112
+
std::vector< size_t > getDimensions() const
Returns the size of the dataset in each dimension.
Definition H5Dataspace_misc.hpp:102
+
DataSpace clone() const
Create a copy of the DataSpace which will have different id.
Definition H5Dataspace_misc.hpp:85
+ +
static const size_t UNLIMITED
Magic value to specify that a DataSpace can grow without limit.
Definition H5DataSpace.hpp:41
+
File class.
Definition H5File.hpp:24
+
Definition H5Object.hpp:54
+
Definition H5_definitions.hpp:15
+
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+ +
+
+ + + + diff --git a/_h5_data_type_8hpp.html b/_h5_data_type_8hpp.html new file mode 100644 index 000000000..42912702d --- /dev/null +++ b/_h5_data_type_8hpp.html @@ -0,0 +1,470 @@ + + + + + + + +HighFive: highfive/H5DataType.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5DataType.hpp File Reference
+
+
+
#include <type_traits>
+#include <vector>
+#include <H5Tpublic.h>
+#include "H5Object.hpp"
+#include "bits/H5Utils.hpp"
+#include "bits/string_padding.hpp"
+#include "H5PropertyList.hpp"
+#include "bits/H5DataType_misc.hpp"
+
+Include dependency graph for H5DataType.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  HighFive::DataType
 HDF5 Data Type. More...
 
class  HighFive::StringType
 
class  HighFive::FixedLengthStringType
 
class  HighFive::VariableLengthStringType
 
class  HighFive::AtomicType< T >
 create an HDF5 DataType from a C++ type More...
 
class  HighFive::CompoundType
 Create a compound HDF5 datatype. More...
 
struct  HighFive::CompoundType::member_def
 Use for defining a sub-type of compound type. More...
 
class  HighFive::EnumType< T >
 Create a enum HDF5 datatype. More...
 
struct  HighFive::EnumType< T >::member_def
 Use for defining a member of enum type. More...
 
class  HighFive::FixedLenStringArray< N >
 A structure representing a set of fixed-length strings. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+ + + + +

+Macros

#define HIGHFIVE_REGISTER_TYPE(type, function)
 Macro to extend datatype of HighFive.
 
+ + + + + + +

+Enumerations

enum class  HighFive::DataTypeClass {
+  HighFive::Time = 1 << 1 +, HighFive::Integer = 1 << 2 +, HighFive::Float = 1 << 3 +, HighFive::String = 1 << 4 +,
+  HighFive::BitField = 1 << 5 +, HighFive::Opaque = 1 << 6 +, HighFive::Compound = 1 << 7 +, HighFive::Reference = 1 << 8 +,
+  HighFive::Enum = 1 << 9 +, HighFive::VarLen = 1 << 10 +, HighFive::Array = 1 << 11 +, HighFive::Invalid = 0 +
+ }
 Enum of Fundamental data classes. More...
 
enum class  HighFive::CharacterSet : std::underlying_type< H5T_cset_t >::type { HighFive::Ascii = H5T_CSET_ASCII +, HighFive::Utf8 = H5T_CSET_UTF8 + }
 
+ + + + + + + + + + + + + +

+Functions

DataTypeClass HighFive::operator| (DataTypeClass lhs, DataTypeClass rhs)
 
DataTypeClass HighFive::operator& (DataTypeClass lhs, DataTypeClass rhs)
 
template<typename T >
DataType HighFive::create_datatype ()
 Create a DataType instance representing type T.
 
template<typename T >
DataType HighFive::create_and_check_datatype ()
 Create a DataType instance representing type T and perform a sanity check on its size.
 
+

Macro Definition Documentation

+ +

◆ HIGHFIVE_REGISTER_TYPE

+ +
+
+ + + + + + + + + + + + + + + + + + +
#define HIGHFIVE_REGISTER_TYPE( type,
 function 
)
+
+Value:
template <> \
+
inline HighFive::DataType HighFive::create_datatype<type>() { \
+
return function(); \
+
}
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
+

Macro to extend datatype of HighFive.

+

This macro has to be called outside of any namespace.

+
enum FooBar { FOO = 1, BAR = 2 };
+
EnumType create_enum_foobar() {
+
return EnumType<FooBar>({{"FOO", FooBar::FOO},
+
{"BAR", FooBar::BAR}});
+
}
+
HIGHFIVE_REGISTER_TYPE(FooBar, create_enum_foobar)
+
#define HIGHFIVE_REGISTER_TYPE(type, function)
Macro to extend datatype of HighFive.
Definition H5DataType.hpp:482
+
+
+
+
+
+ + + + diff --git a/_h5_data_type_8hpp.js b/_h5_data_type_8hpp.js new file mode 100644 index 000000000..f792109f9 --- /dev/null +++ b/_h5_data_type_8hpp.js @@ -0,0 +1,36 @@ +var _h5_data_type_8hpp = +[ + [ "HighFive::DataType", "class_high_five_1_1_data_type.html", "class_high_five_1_1_data_type" ], + [ "HighFive::StringType", "class_high_five_1_1_string_type.html", "class_high_five_1_1_string_type" ], + [ "HighFive::FixedLengthStringType", "class_high_five_1_1_fixed_length_string_type.html", "class_high_five_1_1_fixed_length_string_type" ], + [ "HighFive::VariableLengthStringType", "class_high_five_1_1_variable_length_string_type.html", "class_high_five_1_1_variable_length_string_type" ], + [ "HighFive::AtomicType< T >", "class_high_five_1_1_atomic_type.html", "class_high_five_1_1_atomic_type" ], + [ "HighFive::CompoundType", "class_high_five_1_1_compound_type.html", "class_high_five_1_1_compound_type" ], + [ "HighFive::CompoundType::member_def", "struct_high_five_1_1_compound_type_1_1member__def.html", "struct_high_five_1_1_compound_type_1_1member__def" ], + [ "HighFive::EnumType< T >", "class_high_five_1_1_enum_type.html", "class_high_five_1_1_enum_type" ], + [ "HighFive::EnumType< T >::member_def", "struct_high_five_1_1_enum_type_1_1member__def.html", "struct_high_five_1_1_enum_type_1_1member__def" ], + [ "HighFive::FixedLenStringArray< N >", "class_high_five_1_1_fixed_len_string_array.html", "class_high_five_1_1_fixed_len_string_array" ], + [ "HIGHFIVE_REGISTER_TYPE", "_h5_data_type_8hpp.html#aabbf38f2b276343c2b2a85116e60313c", null ], + [ "CharacterSet", "_h5_data_type_8hpp.html#a7133a7a677541ffa6780f5ca5eee6db9", [ + [ "Ascii", "_h5_data_type_8hpp.html#a7133a7a677541ffa6780f5ca5eee6db9a76b8d0dcd02ccaf203c167ced6d7ef31", null ], + [ "Utf8", "_h5_data_type_8hpp.html#a7133a7a677541ffa6780f5ca5eee6db9a81f91ccd37ce1d232cbfc1520374319d", null ] + ] ], + [ "DataTypeClass", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847b", [ + [ "Time", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847baa76d4ef5f3f6a672bbfab2865563e530", null ], + [ "Integer", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847baa0faef0851b4294c06f2b94bb1cb2044", null ], + [ "Float", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847ba22ae0e2b89e5e3d477f988cc36d3272b", null ], + [ "String", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847ba27118326006d3829667a400ad23d5d98", null ], + [ "BitField", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847ba2f706038ccc6843d07ebf1a34051a0a8", null ], + [ "Opaque", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847bafaa90538de35640e4b1e31ccf35b6eb5", null ], + [ "Compound", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847ba26154ea007c65f860de5333a555a56cf", null ], + [ "Reference", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847ba63d5049791d9d79d86e9a108b0a999ca", null ], + [ "Enum", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847bacf20423ed48998082c20099488a0917c", null ], + [ "VarLen", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847ba72c6842c18d1470d1c991f865a2fab3a", null ], + [ "Array", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847ba4410ec34d9e6c1a68100ca0ce033fb17", null ], + [ "Invalid", "_h5_data_type_8hpp.html#ad43e509d198c83c5484c796babdd847ba4bbb8f967da6d1a610596d7257179c2b", null ] + ] ], + [ "create_and_check_datatype", "_h5_data_type_8hpp.html#a43d3946c0bb037e99c803ec90dc247b4", null ], + [ "create_datatype", "_h5_data_type_8hpp.html#a6f3b307cc5b6bd82d6360f13cacac2de", null ], + [ "operator&", "_h5_data_type_8hpp.html#ad11e24eec8492d0d2c977b58b1e64dbc", null ], + [ "operator|", "_h5_data_type_8hpp.html#a98688378bfbae23ab35a06c6916c5a44", null ] +]; \ No newline at end of file diff --git a/_h5_data_type_8hpp__dep__incl.map b/_h5_data_type_8hpp__dep__incl.map new file mode 100644 index 000000000..7333ebdf5 --- /dev/null +++ b/_h5_data_type_8hpp__dep__incl.map @@ -0,0 +1,82 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_data_type_8hpp__dep__incl.md5 b/_h5_data_type_8hpp__dep__incl.md5 new file mode 100644 index 000000000..d418ca73e --- /dev/null +++ b/_h5_data_type_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +ec5b8d427e13478c9287d93bfb2df842 \ No newline at end of file diff --git a/_h5_data_type_8hpp__dep__incl.png b/_h5_data_type_8hpp__dep__incl.png new file mode 100644 index 000000000..4d4701533 Binary files /dev/null and b/_h5_data_type_8hpp__dep__incl.png differ diff --git a/_h5_data_type_8hpp__incl.map b/_h5_data_type_8hpp__incl.map new file mode 100644 index 000000000..b42de8199 --- /dev/null +++ b/_h5_data_type_8hpp__incl.map @@ -0,0 +1,128 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_data_type_8hpp__incl.md5 b/_h5_data_type_8hpp__incl.md5 new file mode 100644 index 000000000..c513ddd53 --- /dev/null +++ b/_h5_data_type_8hpp__incl.md5 @@ -0,0 +1 @@ +17702ad31786ee88e35bd47de2106748 \ No newline at end of file diff --git a/_h5_data_type_8hpp__incl.png b/_h5_data_type_8hpp__incl.png new file mode 100644 index 000000000..e29cecf36 Binary files /dev/null and b/_h5_data_type_8hpp__incl.png differ diff --git a/_h5_data_type_8hpp_source.html b/_h5_data_type_8hpp_source.html new file mode 100644 index 000000000..051d88d65 --- /dev/null +++ b/_h5_data_type_8hpp_source.html @@ -0,0 +1,645 @@ + + + + + + + +HighFive: highfive/H5DataType.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5DataType.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <type_traits>
+
12#include <vector>
+
13
+
14#include <H5Tpublic.h>
+
15
+
16#include "H5Object.hpp"
+
17#include "bits/H5Utils.hpp"
+
18
+ +
20#include "H5PropertyList.hpp"
+
21
+
22namespace HighFive {
+
23
+
24
+
+
28enum class DataTypeClass {
+
29 Time = 1 << 1,
+
30 Integer = 1 << 2,
+
31 Float = 1 << 3,
+
32 String = 1 << 4,
+
33 BitField = 1 << 5,
+
34 Opaque = 1 << 6,
+
35 Compound = 1 << 7,
+
36 Reference = 1 << 8,
+
37 Enum = 1 << 9,
+
38 VarLen = 1 << 10,
+
39 Array = 1 << 11,
+
40 Invalid = 0
+
41};
+
+
42
+
+ +
44 using T = std::underlying_type<DataTypeClass>::type;
+
45 return static_cast<DataTypeClass>(static_cast<T>(lhs) | static_cast<T>(rhs));
+
46}
+
+
47
+
+ +
49 using T = std::underlying_type<DataTypeClass>::type;
+
50 return static_cast<DataTypeClass>(static_cast<T>(lhs) & static_cast<T>(rhs));
+
51}
+
+
52
+
53class StringType;
+
54
+
+
58class DataType: public Object {
+
59 public:
+
60 bool operator==(const DataType& other) const;
+
61
+
62 bool operator!=(const DataType& other) const;
+
63
+
67 DataTypeClass getClass() const;
+
68
+
75 size_t getSize() const;
+
76
+
80 std::string string() const;
+
81
+
85 bool isVariableStr() const;
+
86
+
90 bool isFixedLenStr() const;
+
91
+ +
96
+
101 bool empty() const noexcept;
+
102
+
104 bool isReference() const;
+
105
+
+ +
108 return details::get_plist<DataTypeCreateProps>(*this, H5Tget_create_plist);
+
109 }
+
+
110
+
111 protected:
+
112 using Object::Object;
+
113
+
114 friend class Attribute;
+
115 friend class File;
+
116 friend class DataSet;
+
117 friend class CompoundType;
+
118 template <typename Derivate>
+
119 friend class NodeTraits;
+
120};
+
+
121
+
122
+
+
123enum class CharacterSet : std::underlying_type<H5T_cset_t>::type {
+
124 Ascii = H5T_CSET_ASCII,
+
125 Utf8 = H5T_CSET_UTF8,
+
126};
+
+
127
+
+
128class StringType: public DataType {
+
129 public:
+ +
134
+ +
139
+
140 protected:
+
141 using DataType::DataType;
+
142 friend class DataType;
+
143};
+
+
144
+
+ +
146 public:
+
165 FixedLengthStringType(size_t size,
+
166 StringPadding padding,
+
167 CharacterSet character_set = CharacterSet::Ascii);
+
168};
+
+
169
+
+ +
171 public:
+ +
176};
+
+
177
+
178
+
184template <typename T>
+
+
185class AtomicType: public DataType {
+
186 public:
+
187 AtomicType();
+
188
+
189 using basic_type = T;
+
190};
+
+
191
+
192
+
+
196class CompoundType: public DataType {
+
197 public:
+
+
200 struct member_def {
+
+
201 member_def(std::string t_name, DataType t_base_type, size_t t_offset = 0)
+
202 : name(std::move(t_name))
+
203 , base_type(std::move(t_base_type))
+
204 , offset(t_offset) {}
+
+
205 std::string name;
+ +
207 size_t offset;
+
208 };
+
+
209
+
210 CompoundType(const CompoundType& other) = default;
+
211
+
+
216 inline CompoundType(const std::vector<member_def>& t_members, size_t size = 0)
+
217 : members(t_members) {
+
218 create(size);
+
219 }
+
+
+
220 inline CompoundType(std::vector<member_def>&& t_members, size_t size = 0)
+
221 : members(std::move(t_members)) {
+
222 create(size);
+
223 }
+
+
+
224 inline CompoundType(const std::initializer_list<member_def>& t_members, size_t size = 0)
+
225 : members(t_members) {
+
226 create(size);
+
227 }
+
+
228
+
+
232 inline CompoundType(DataType&& type)
+
233 : DataType(type) {
+ +
235 std::ostringstream ss;
+
236 ss << "hid " << _hid << " does not refer to a compound data type";
+
237 throw DataTypeException(ss.str());
+
238 }
+
239 int result = H5Tget_nmembers(_hid);
+
240 if (result < 0) {
+
241 throw DataTypeException("Could not get members of compound datatype");
+
242 }
+
243 size_t n_members = static_cast<size_t>(result);
+
244 members.reserve(n_members);
+
245 for (unsigned i = 0; i < n_members; i++) {
+
246 char* name = H5Tget_member_name(_hid, i);
+
247 size_t offset = H5Tget_member_offset(_hid, i);
+
248 hid_t member_hid = H5Tget_member_type(_hid, i);
+
249 DataType member_type{member_hid};
+
250 members.emplace_back(std::string(name), member_type, offset);
+
251 if (H5free_memory(name) < 0) {
+
252 throw DataTypeException("Could not free names from the compound datatype");
+
253 }
+
254 }
+
255 }
+
+
256
+
260 inline void commit(const Object& object, const std::string& name) const;
+
261
+
+
263 inline const std::vector<member_def>& getMembers() const noexcept {
+
264 return members;
+
265 }
+
+
266
+
267 private:
+
269 std::vector<member_def> members;
+
270
+
274 void create(size_t size = 0);
+
275};
+
+
276
+
298template <typename T>
+
+
299class EnumType: public DataType {
+
300 public:
+
+
303 struct member_def {
+
+
304 member_def(const std::string& t_name, T t_value)
+
305 : name(t_name)
+
306 , value(std::move(t_value)) {}
+
+
307 std::string name;
+ +
309 };
+
+
310
+
311 EnumType(const EnumType& other) = default;
+
312
+
+
313 EnumType(const std::vector<member_def>& t_members)
+
314 : members(t_members) {
+
315 static_assert(std::is_enum<T>::value, "EnumType<T>::create takes only enum");
+
316 if (members.empty()) {
+ +
318 "Could not create an enum without members");
+
319 }
+
320 create();
+
321 }
+
+
322
+
+
323 EnumType(std::initializer_list<member_def> t_members)
+
324 : EnumType(std::vector<member_def>(t_members)) {}
+
+
325
+
329 void commit(const Object& object, const std::string& name) const;
+
330
+
331 private:
+
332 std::vector<member_def> members;
+
333
+
334 void create();
+
335};
+
+
336
+
337
+
339template <typename T>
+
340DataType create_datatype();
+
341
+
342
+
344template <typename T>
+ +
346
+
347
+
357template <std::size_t N>
+
+ +
359 public:
+ +
361
+
367 FixedLenStringArray(const char array[][N], std::size_t n_strings);
+
368
+
374 explicit FixedLenStringArray(const std::vector<std::string>& vec);
+
375
+
376 FixedLenStringArray(const std::string* iter_begin, const std::string* iter_end);
+
377
+
378 FixedLenStringArray(const std::initializer_list<std::string>&);
+
379
+
383 void push_back(const std::string&);
+
384
+
385 void push_back(const std::array<char, N>&);
+
386
+
390 std::string getString(std::size_t index) const;
+
391
+
392 // Container interface
+
+
393 inline const char* operator[](std::size_t i) const noexcept {
+
394 return datavec[i].data();
+
395 }
+
+
+
396 inline const char* at(std::size_t i) const {
+
397 return datavec.at(i).data();
+
398 }
+
+
+
399 inline bool empty() const noexcept {
+
400 return datavec.empty();
+
401 }
+
+
+
402 inline std::size_t size() const noexcept {
+
403 return datavec.size();
+
404 }
+
+
+
405 inline void resize(std::size_t n) {
+
406 datavec.resize(n);
+
407 }
+
+
+
408 inline const char* front() const {
+
409 return datavec.front().data();
+
410 }
+
+
+
411 inline const char* back() const {
+
412 return datavec.back().data();
+
413 }
+
+
+
414 inline char* data() noexcept {
+
415 return datavec[0].data();
+
416 }
+
+
+
417 inline const char* data() const noexcept {
+
418 return datavec[0].data();
+
419 }
+
+
420
+
421 private:
+
422 using vector_t = typename std::vector<std::array<char, N>>;
+
423
+
424 public:
+
425 // Use the underlying iterator
+
426 using iterator = typename vector_t::iterator;
+
427 using const_iterator = typename vector_t::const_iterator;
+
428 using reverse_iterator = typename vector_t::reverse_iterator;
+
429 using const_reverse_iterator = typename vector_t::const_reverse_iterator;
+
430 using value_type = typename vector_t::value_type;
+
431
+
+
432 inline iterator begin() noexcept {
+
433 return datavec.begin();
+
434 }
+
+
+
435 inline iterator end() noexcept {
+
436 return datavec.end();
+
437 }
+
+
+
438 inline const_iterator begin() const noexcept {
+
439 return datavec.begin();
+
440 }
+
+
+
441 inline const_iterator cbegin() const noexcept {
+
442 return datavec.cbegin();
+
443 }
+
+
+
444 inline const_iterator end() const noexcept {
+
445 return datavec.end();
+
446 }
+
+
+
447 inline const_iterator cend() const noexcept {
+
448 return datavec.cend();
+
449 }
+
+
+
450 inline reverse_iterator rbegin() noexcept {
+
451 return datavec.rbegin();
+
452 }
+
+
+
453 inline reverse_iterator rend() noexcept {
+
454 return datavec.rend();
+
455 }
+
+
+
456 inline const_reverse_iterator rbegin() const noexcept {
+
457 return datavec.rbegin();
+
458 }
+
+
+
459 inline const_reverse_iterator rend() const noexcept {
+
460 return datavec.rend();
+
461 }
+
+
462
+
463 private:
+
464 vector_t datavec;
+
465};
+
+
466
+
467} // namespace HighFive
+
468
+
469
+
+
482#define HIGHFIVE_REGISTER_TYPE(type, function) \
+
483 template <> \
+
484 inline HighFive::DataType HighFive::create_datatype<type>() { \
+
485 return function(); \
+
486 }
+
+
487
+ + + + + +
create an HDF5 DataType from a C++ type
Definition H5DataType.hpp:185
+
AtomicType()
Definition H5DataType_misc.hpp:315
+
T basic_type
Definition H5DataType.hpp:189
+
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
+
Create a compound HDF5 datatype.
Definition H5DataType.hpp:196
+
void commit(const Object &object, const std::string &name) const
Commit datatype into the given Object.
Definition H5DataType_misc.hpp:465
+
const std::vector< member_def > & getMembers() const noexcept
Get read access to the CompoundType members.
Definition H5DataType.hpp:263
+
CompoundType(const CompoundType &other)=default
+
CompoundType(const std::initializer_list< member_def > &t_members, size_t size=0)
Definition H5DataType.hpp:224
+
CompoundType(const std::vector< member_def > &t_members, size_t size=0)
Initializes a compound type from a vector of member definitions.
Definition H5DataType.hpp:216
+
CompoundType(DataType &&type)
Initializes a compound type from a DataType.
Definition H5DataType.hpp:232
+
CompoundType(std::vector< member_def > &&t_members, size_t size=0)
Definition H5DataType.hpp:220
+
Class representing a dataset.
Definition H5DataSet.hpp:30
+
Exception specific to HighFive DataType interface.
Definition H5Exception.hpp:94
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
bool operator==(const DataType &other) const
Definition H5DataType_misc.hpp:105
+
bool isFixedLenStr() const
Returns whether the type is a fixed-length string.
Definition H5DataType_misc.hpp:121
+
DataTypeCreateProps getCreatePropertyList() const
Get the list of properties for creation of this DataType.
Definition H5DataType.hpp:107
+
size_t getSize() const
Returns the length (in bytes) of this type elements.
Definition H5DataType_misc.hpp:101
+
bool isVariableStr() const
Returns whether the type is a variable-length string.
Definition H5DataType_misc.hpp:113
+
bool empty() const noexcept
Check the DataType was default constructed. Such value might represent auto-detection of the datatype...
Definition H5DataType_misc.hpp:93
+
std::string string() const
Returns a friendly description of the type (e.g. Float32)
Definition H5DataType_misc.hpp:141
+
DataTypeClass getClass() const
Return the fundamental type.
Definition H5DataType_misc.hpp:97
+
bool isReference() const
Returns whether the type is a Reference.
Definition H5DataType_misc.hpp:125
+
StringType asStringType() const
Returns this datatype as a StringType.
Definition H5DataType_misc.hpp:129
+
bool operator!=(const DataType &other) const
Definition H5DataType_misc.hpp:109
+
Create a enum HDF5 datatype.
Definition H5DataType.hpp:299
+
EnumType(std::initializer_list< member_def > t_members)
Definition H5DataType.hpp:323
+
EnumType(const EnumType &other)=default
+
void commit(const Object &object, const std::string &name) const
Commit datatype into the given Object.
Definition H5DataType_misc.hpp:486
+
EnumType(const std::vector< member_def > &t_members)
Definition H5DataType.hpp:313
+
File class.
Definition H5File.hpp:24
+
A structure representing a set of fixed-length strings.
Definition H5DataType.hpp:358
+
const char * front() const
Definition H5DataType.hpp:408
+
const_iterator cend() const noexcept
Definition H5DataType.hpp:447
+
const_reverse_iterator rend() const noexcept
Definition H5DataType.hpp:459
+
const_iterator begin() const noexcept
Definition H5DataType.hpp:438
+
const char * data() const noexcept
Definition H5DataType.hpp:417
+
typename vector_t::const_iterator const_iterator
Definition H5DataType.hpp:427
+
const_reverse_iterator rbegin() const noexcept
Definition H5DataType.hpp:456
+
const_iterator end() const noexcept
Definition H5DataType.hpp:444
+
const char * at(std::size_t i) const
Definition H5DataType.hpp:396
+
const char * back() const
Definition H5DataType.hpp:411
+
reverse_iterator rend() noexcept
Definition H5DataType.hpp:453
+
char * data() noexcept
Definition H5DataType.hpp:414
+
void resize(std::size_t n)
Definition H5DataType.hpp:405
+
reverse_iterator rbegin() noexcept
Definition H5DataType.hpp:450
+
std::string getString(std::size_t index) const
Retrieve a string from the structure as std::string.
Definition H5DataType_misc.hpp:363
+
const char * operator[](std::size_t i) const noexcept
Definition H5DataType.hpp:393
+
typename vector_t::value_type value_type
Definition H5DataType.hpp:430
+ +
std::size_t size() const noexcept
Definition H5DataType.hpp:402
+
iterator begin() noexcept
Definition H5DataType.hpp:432
+
void push_back(const std::string &)
Append an std::string to the buffer structure.
Definition H5DataType_misc.hpp:349
+
const_iterator cbegin() const noexcept
Definition H5DataType.hpp:441
+
iterator end() noexcept
Definition H5DataType.hpp:435
+
bool empty() const noexcept
Definition H5DataType.hpp:399
+
typename vector_t::reverse_iterator reverse_iterator
Definition H5DataType.hpp:428
+
typename vector_t::const_reverse_iterator const_reverse_iterator
Definition H5DataType.hpp:429
+
typename vector_t::iterator iterator
Definition H5DataType.hpp:426
+
Definition H5DataType.hpp:145
+
NodeTraits: Base class for Group and File.
Definition H5Node_traits.hpp:28
+
Definition H5Object.hpp:54
+
Object()
Definition H5Object_misc.hpp:24
+
hid_t _hid
Definition H5Object.hpp:105
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
An HDF5 (object) reference type.
Definition H5Reference.hpp:33
+
Definition H5DataType.hpp:128
+
StringPadding getPadding() const
For fixed length stings return the padding.
Definition H5DataType_misc.hpp:145
+
CharacterSet getCharacterSet() const
For stings return the character set.
Definition H5DataType_misc.hpp:149
+
Definition H5DataType.hpp:170
+
Definition H5_definitions.hpp:15
+
DataType create_and_check_datatype()
Create a DataType instance representing type T and perform a sanity check on its size.
Definition H5DataType_misc.hpp:573
+
DataType create_datatype()
Create a DataType instance representing type T.
Definition H5DataType_misc.hpp:566
+
CharacterSet
Definition H5DataType.hpp:123
+ + +
DataTypeClass operator|(DataTypeClass lhs, DataTypeClass rhs)
Definition H5DataType.hpp:43
+
DataTypeClass operator&(DataTypeClass lhs, DataTypeClass rhs)
Definition H5DataType.hpp:48
+
DataTypeClass
Enum of Fundamental data classes.
Definition H5DataType.hpp:28
+ + + + + + + + + + + +
StringPadding
Definition string_padding.hpp:7
+ +
Use for defining a sub-type of compound type.
Definition H5DataType.hpp:200
+
size_t offset
Definition H5DataType.hpp:207
+
member_def(std::string t_name, DataType t_base_type, size_t t_offset=0)
Definition H5DataType.hpp:201
+
DataType base_type
Definition H5DataType.hpp:206
+
std::string name
Definition H5DataType.hpp:205
+
Use for defining a member of enum type.
Definition H5DataType.hpp:303
+
T value
Definition H5DataType.hpp:308
+
std::string name
Definition H5DataType.hpp:307
+
member_def(const std::string &t_name, T t_value)
Definition H5DataType.hpp:304
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_data_type__misc_8hpp.html b/_h5_data_type__misc_8hpp.html new file mode 100644 index 000000000..c7c717b3c --- /dev/null +++ b/_h5_data_type__misc_8hpp.html @@ -0,0 +1,398 @@ + + + + + + + +HighFive: highfive/bits/H5DataType_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5DataType_misc.hpp File Reference
+
+
+
#include <string>
+#include <complex>
+#include <cstring>
+#include <H5Ppublic.h>
+#include <H5Tpublic.h>
+#include <half.hpp>
+#include "H5Inspector_misc.hpp"
+
+Include dependency graph for H5DataType_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

class  HighFive::AtomicType< char[StrLen]>
 
class  HighFive::AtomicType< FixedLenStringArray< StrLen > >
 
class  HighFive::AtomicType< std::complex< T > >
 
+ + + +

+Namespaces

namespace  HighFive
 
+ + + +

+Macros

#define _H5_STRUCT_PADDING(current_size, member_size)
 
+ + + +

+Typedefs

using HighFive::float16_t = half_float::half
 
+ + + + + + + + + + + + + +

+Functions

EnumType< details::Boolean > HighFive::create_enum_boolean ()
 
size_t HighFive::find_first_atomic_member_size (hid_t hid)
 
template<typename T >
DataType HighFive::create_datatype ()
 Create a DataType instance representing type T.
 
template<typename T >
DataType HighFive::create_and_check_datatype ()
 Create a DataType instance representing type T and perform a sanity check on its size.
 
+

Macro Definition Documentation

+ +

◆ _H5_STRUCT_PADDING

+ +
+
+ + + + + + + + + + + + + + + + + + +
#define _H5_STRUCT_PADDING( current_size,
 member_size 
)
+
+Value:
(((member_size) >= (current_size)) \
+
? (((member_size) - (current_size)) % (member_size)) \
+
: ((((member_size) - (((current_size) - (member_size)) % (member_size)))) % \
+
(member_size)))
+
+
+
+
+
+ + + + diff --git a/_h5_data_type__misc_8hpp.js b/_h5_data_type__misc_8hpp.js new file mode 100644 index 000000000..17e9459e3 --- /dev/null +++ b/_h5_data_type__misc_8hpp.js @@ -0,0 +1,12 @@ +var _h5_data_type__misc_8hpp = +[ + [ "HighFive::AtomicType< char[StrLen]>", "class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html", "class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4" ], + [ "HighFive::AtomicType< FixedLenStringArray< StrLen > >", "class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html", "class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4" ], + [ "HighFive::AtomicType< std::complex< T > >", "class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html", "class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4" ], + [ "_H5_STRUCT_PADDING", "_h5_data_type__misc_8hpp.html#a8411b26baa96407eb4f3de2ba4bcd6f7", null ], + [ "float16_t", "_h5_data_type__misc_8hpp.html#a257db0f77cf0c6735a6451a8de5e2c1b", null ], + [ "create_and_check_datatype", "_h5_data_type__misc_8hpp.html#a43d3946c0bb037e99c803ec90dc247b4", null ], + [ "create_datatype", "_h5_data_type__misc_8hpp.html#a6f3b307cc5b6bd82d6360f13cacac2de", null ], + [ "create_enum_boolean", "_h5_data_type__misc_8hpp.html#a361e2132e78bca627125eba4295b9ae6", null ], + [ "find_first_atomic_member_size", "_h5_data_type__misc_8hpp.html#ac4e5e1ccbc6a1c20bcd581f71fb5e6d5", null ] +]; \ No newline at end of file diff --git a/_h5_data_type__misc_8hpp__dep__incl.map b/_h5_data_type__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..87c2fb12c --- /dev/null +++ b/_h5_data_type__misc_8hpp__dep__incl.map @@ -0,0 +1,84 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_data_type__misc_8hpp__dep__incl.md5 b/_h5_data_type__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..ec37ee617 --- /dev/null +++ b/_h5_data_type__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +f2e6e06bcacb0f42e19b5d529065202b \ No newline at end of file diff --git a/_h5_data_type__misc_8hpp__dep__incl.png b/_h5_data_type__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..b7d819885 Binary files /dev/null and b/_h5_data_type__misc_8hpp__dep__incl.png differ diff --git a/_h5_data_type__misc_8hpp__incl.map b/_h5_data_type__misc_8hpp__incl.map new file mode 100644 index 000000000..ed566a98b --- /dev/null +++ b/_h5_data_type__misc_8hpp__incl.map @@ -0,0 +1,109 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_data_type__misc_8hpp__incl.md5 b/_h5_data_type__misc_8hpp__incl.md5 new file mode 100644 index 000000000..cee1510a5 --- /dev/null +++ b/_h5_data_type__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +d6f2664345d67c8e7bcadd0d241b4290 \ No newline at end of file diff --git a/_h5_data_type__misc_8hpp__incl.png b/_h5_data_type__misc_8hpp__incl.png new file mode 100644 index 000000000..2736ff4e2 Binary files /dev/null and b/_h5_data_type__misc_8hpp__incl.png differ diff --git a/_h5_data_type__misc_8hpp_source.html b/_h5_data_type__misc_8hpp_source.html new file mode 100644 index 000000000..b1decbb31 --- /dev/null +++ b/_h5_data_type__misc_8hpp_source.html @@ -0,0 +1,875 @@ + + + + + + + +HighFive: highfive/bits/H5DataType_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5DataType_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <string>
+
12#include <complex>
+
13#include <cstring>
+
14#if HIGHFIVE_CXX_STD >= 17
+
15#include <cstddef>
+
16#endif
+
17
+
18#include <H5Ppublic.h>
+
19#include <H5Tpublic.h>
+
20
+
21#ifdef H5_USE_HALF_FLOAT
+
22#include <half.hpp>
+
23#endif
+
24
+
25#include "H5Inspector_misc.hpp"
+
26
+
27namespace HighFive {
+
28
+
29namespace detail {
+
30
+
31inline hid_t h5t_copy(hid_t original) {
+
32 auto copy = H5Tcopy(original);
+
33 if (copy == H5I_INVALID_HID) {
+
34 HDF5ErrMapper::ToException<DataTypeException>("Error copying datatype.");
+
35 }
+
36
+
37 return copy;
+
38}
+
39
+
40inline hsize_t h5t_get_size(hid_t hid) {
+
41 hsize_t size = H5Tget_size(hid);
+
42 if (size == 0) {
+
43 HDF5ErrMapper::ToException<DataTypeException>("Error getting size of datatype.");
+
44 }
+
45
+
46 return size;
+
47}
+
48
+
49inline H5T_cset_t h5t_get_cset(hid_t hid) {
+
50 auto cset = H5Tget_cset(hid);
+
51 if (cset == H5T_CSET_ERROR) {
+
52 HDF5ErrMapper::ToException<DataTypeException>("Error getting cset of datatype.");
+
53 }
+
54
+
55 return cset;
+
56}
+
57
+
58inline H5T_str_t h5t_get_strpad(hid_t hid) {
+
59 auto strpad = H5Tget_strpad(hid);
+
60 if (strpad == H5T_STR_ERROR) {
+
61 HDF5ErrMapper::ToException<DataTypeException>("Error getting strpad of datatype.");
+
62 }
+
63
+
64 return strpad;
+
65}
+
66
+
67inline void h5t_set_size(hid_t hid, hsize_t size) {
+
68 if (H5Tset_size(hid, size) < 0) {
+
69 HDF5ErrMapper::ToException<DataTypeException>("Error setting size of datatype.");
+
70 }
+
71}
+
72
+
73inline void h5t_set_cset(hid_t hid, H5T_cset_t cset) {
+
74 if (H5Tset_cset(hid, cset) < 0) {
+
75 HDF5ErrMapper::ToException<DataTypeException>("Error setting cset of datatype.");
+
76 }
+
77}
+
78
+
79inline void h5t_set_strpad(hid_t hid, H5T_str_t strpad) {
+
80 if (H5Tset_strpad(hid, strpad) < 0) {
+
81 HDF5ErrMapper::ToException<DataTypeException>("Error setting strpad of datatype.");
+
82 }
+
83}
+
84} // namespace detail
+
85
+
86
+
87namespace { // unnamed
+
88inline DataTypeClass convert_type_class(const H5T_class_t& tclass);
+
89inline std::string type_class_string(DataTypeClass);
+
90inline hid_t create_string(std::size_t length);
+
91} // namespace
+
92
+
+
93inline bool DataType::empty() const noexcept {
+
94 return _hid == H5I_INVALID_HID;
+
95}
+
+
96
+
+ +
98 return convert_type_class(H5Tget_class(_hid));
+
99}
+
+
100
+
+
101inline size_t DataType::getSize() const {
+
102 return detail::h5t_get_size(_hid);
+
103}
+
+
104
+
+
105inline bool DataType::operator==(const DataType& other) const {
+
106 return (H5Tequal(_hid, other._hid) > 0);
+
107}
+
+
108
+
+
109inline bool DataType::operator!=(const DataType& other) const {
+
110 return !(*this == other);
+
111}
+
+
112
+
+
113inline bool DataType::isVariableStr() const {
+
114 auto var_value = H5Tis_variable_str(_hid);
+
115 if (var_value < 0) {
+
116 HDF5ErrMapper::ToException<DataTypeException>("Unable to define datatype size to variable");
+
117 }
+
118 return static_cast<bool>(var_value);
+
119}
+
+
120
+
+
121inline bool DataType::isFixedLenStr() const {
+ +
123}
+
+
124
+
+
125inline bool DataType::isReference() const {
+
126 return H5Tequal(_hid, H5T_STD_REF_OBJ) > 0;
+
127}
+
+
128
+
+ + +
131 throw DataTypeException("Invalid conversion to StringType.");
+
132 }
+
133
+
134 if (isValid() && H5Iinc_ref(_hid) < 0) {
+
135 throw ObjectException("Reference counter increase failure");
+
136 }
+
137
+
138 return StringType(_hid);
+
139}
+
+
140
+
+
141inline std::string DataType::string() const {
+
142 return type_class_string(getClass()) + std::to_string(getSize() * 8);
+
143}
+
+
144
+
+ +
146 return StringPadding(detail::h5t_get_strpad(_hid));
+
147}
+
+
148
+
+ +
150 return CharacterSet(detail::h5t_get_cset(_hid));
+
151}
+
+
152
+
+ +
154 StringPadding padding,
+
155 CharacterSet character_set) {
+
156 if (size == 0 && padding == StringPadding::NullTerminated) {
+
157 throw DataTypeException(
+
158 "Fixed-length, null-terminated need at least one byte to store the null-character.");
+
159 }
+
160
+
161 _hid = detail::h5t_copy(H5T_C_S1);
+
162
+
163 detail::h5t_set_size(_hid, hsize_t(size));
+
164 detail::h5t_set_cset(_hid, H5T_cset_t(character_set));
+
165 detail::h5t_set_strpad(_hid, H5T_str_t(padding));
+
166}
+
+
167
+
+ +
169 _hid = detail::h5t_copy(H5T_C_S1);
+
170
+
171 detail::h5t_set_size(_hid, H5T_VARIABLE);
+
172 detail::h5t_set_cset(_hid, H5T_cset_t(character_set));
+
173}
+
+
174
+
175// char mapping
+
176template <>
+
+ +
178 _hid = detail::h5t_copy(H5T_NATIVE_CHAR);
+
179}
+
+
180
+
181template <>
+
+ +
183 _hid = detail::h5t_copy(H5T_NATIVE_SCHAR);
+
184}
+
+
185
+
186template <>
+
+ +
188 _hid = detail::h5t_copy(H5T_NATIVE_UCHAR);
+
189}
+
+
190
+
191// short mapping
+
192template <>
+
+ +
194 _hid = detail::h5t_copy(H5T_NATIVE_SHORT);
+
195}
+
+
196
+
197template <>
+
+ +
199 _hid = detail::h5t_copy(H5T_NATIVE_USHORT);
+
200}
+
+
201
+
202// integer mapping
+
203template <>
+
+ +
205 _hid = detail::h5t_copy(H5T_NATIVE_INT);
+
206}
+
+
207
+
208template <>
+
+ +
210 _hid = detail::h5t_copy(H5T_NATIVE_UINT);
+
211}
+
+
212
+
213// long mapping
+
214template <>
+
+ +
216 _hid = detail::h5t_copy(H5T_NATIVE_LONG);
+
217}
+
+
218
+
219template <>
+
+ +
221 _hid = detail::h5t_copy(H5T_NATIVE_ULONG);
+
222}
+
+
223
+
224// long long mapping
+
225template <>
+
+ +
227 _hid = detail::h5t_copy(H5T_NATIVE_LLONG);
+
228}
+
+
229
+
230template <>
+
+ +
232 _hid = detail::h5t_copy(H5T_NATIVE_ULLONG);
+
233}
+
+
234
+
235// half-float, float, double and long double mapping
+
236#ifdef H5_USE_HALF_FLOAT
+
237using float16_t = half_float::half;
+
238
+
239template <>
+
+ +
241 _hid = detail::h5t_copy(H5T_NATIVE_FLOAT);
+
242 // Sign position, exponent position, exponent size, mantissa position, mantissa size
+
243 H5Tset_fields(_hid, 15, 10, 5, 0, 10);
+
244 // Total datatype size (in bytes)
+
245 detail::h5t_set_size(_hid, 2);
+
246 // Floating point exponent bias
+
247 H5Tset_ebias(_hid, 15);
+
248}
+
+
249#endif
+
250
+
251template <>
+
+ +
253 _hid = detail::h5t_copy(H5T_NATIVE_FLOAT);
+
254}
+
+
255
+
256template <>
+
+ +
258 _hid = detail::h5t_copy(H5T_NATIVE_DOUBLE);
+
259}
+
+
260
+
261template <>
+
+ +
263 _hid = detail::h5t_copy(H5T_NATIVE_LDOUBLE);
+
264}
+
+
265
+
266// std string
+
267template <>
+
+ +
269 _hid = create_string(H5T_VARIABLE);
+
270}
+
+
271
+
272#if HIGHFIVE_CXX_STD >= 17
+
273// std byte
+
274template <>
+ +
276 _hid = detail::h5t_copy(H5T_NATIVE_B8);
+
277}
+
278#endif
+
279
+
280// Fixed-Length strings
+
281// require class specialization templated for the char length
+
282template <size_t StrLen>
+
+
283class AtomicType<char[StrLen]>: public DataType {
+
284 public:
+
+
285 inline AtomicType()
+
286 : DataType(create_string(StrLen)) {}
+
+
287};
+
+
288
+
289template <size_t StrLen>
+
+ +
291 public:
+
+
292 inline AtomicType()
+
293 : DataType(create_string(StrLen)) {}
+
+
294};
+
+
295
+
296template <typename T>
+
+
297class AtomicType<std::complex<T>>: public DataType {
+
298 public:
+
+
299 inline AtomicType()
+
300 : DataType(
+
301 CompoundType({{"r", create_datatype<T>(), 0}, {"i", create_datatype<T>(), sizeof(T)}},
+
302 sizeof(std::complex<T>))) {
+
303 static_assert(std::is_arithmetic<T>::value,
+
304 "std::complex accepts only floating point and integral numbers.");
+
305 }
+
+
306};
+
+
307
+
308// For boolean we act as h5py
+
+ +
310 return {{"FALSE", details::Boolean::HighFiveFalse}, {"TRUE", details::Boolean::HighFiveTrue}};
+
311}
+
+
312
+
313// Other cases not supported. Fail early with a user message
+
314template <typename T>
+
+ +
316 static_assert(details::inspector<T>::recursive_ndim == 0,
+
317 "Atomic types cant be arrays, except for char[] (fixed-length strings)");
+
318 static_assert(details::inspector<T>::recursive_ndim > 0, "Type not supported");
+
319}
+
+
320
+
321
+
322// class FixedLenStringArray<N>
+
323
+
324template <std::size_t N>
+
+
325inline FixedLenStringArray<N>::FixedLenStringArray(const char array[][N], std::size_t length) {
+
326 datavec.resize(length);
+
327 std::memcpy(datavec[0].data(), array[0].data(), N * length);
+
328}
+
+
329
+
330template <std::size_t N>
+
+
331inline FixedLenStringArray<N>::FixedLenStringArray(const std::string* iter_begin,
+
332 const std::string* iter_end) {
+
333 datavec.reserve(static_cast<std::size_t>(iter_end - iter_begin));
+
334 for (std::string const* it = iter_begin; it != iter_end; ++it) {
+
335 push_back(*it);
+
336 }
+
337}
+
+
338
+
339template <std::size_t N>
+
+
340inline FixedLenStringArray<N>::FixedLenStringArray(const std::vector<std::string>& vec)
+
341 : FixedLenStringArray(vec.data(), vec.data() + vec.size()) {}
+
+
342
+
343template <std::size_t N>
+
+ +
345 const std::initializer_list<std::string>& init_list)
+
346 : FixedLenStringArray(init_list.begin(), init_list.end()) {}
+
+
347
+
348template <std::size_t N>
+
+
349inline void FixedLenStringArray<N>::push_back(const std::string& src) {
+
350 datavec.emplace_back();
+
351 const size_t length = std::min(N - 1, src.length());
+
352 std::memcpy(datavec.back().data(), src.c_str(), length);
+
353 datavec.back()[length] = 0;
+
354}
+
+
355
+
356template <std::size_t N>
+
+
357inline void FixedLenStringArray<N>::push_back(const std::array<char, N>& src) {
+
358 datavec.emplace_back();
+
359 std::copy(src.begin(), src.end(), datavec.back().data());
+
360}
+
+
361
+
362template <std::size_t N>
+
+
363inline std::string FixedLenStringArray<N>::getString(std::size_t i) const {
+
364 return std::string(datavec[i].data());
+
365}
+
+
366
+
367// Internal
+
368// Reference mapping
+
369template <>
+
+ +
371 _hid = detail::h5t_copy(H5T_STD_REF_OBJ);
+
372}
+
+
373
+
+
374inline size_t find_first_atomic_member_size(hid_t hid) {
+
375 // Recursive exit condition
+
376 if (H5Tget_class(hid) == H5T_COMPOUND) {
+
377 auto number_of_members = H5Tget_nmembers(hid);
+
378 if (number_of_members == -1) {
+
379 throw DataTypeException("Cannot get members of CompoundType with hid: " +
+
380 std::to_string(hid));
+
381 }
+
382 if (number_of_members == 0) {
+
383 throw DataTypeException("No members defined for CompoundType with hid: " +
+
384 std::to_string(hid));
+
385 }
+
386
+
387 auto member_type = H5Tget_member_type(hid, 0);
+
388 auto size = find_first_atomic_member_size(member_type);
+
389 H5Tclose(member_type);
+
390 return size;
+
391 } else if (H5Tget_class(hid) == H5T_STRING) {
+
392 return 1;
+
393 }
+
394 return detail::h5t_get_size(hid);
+
395}
+
+
396
+
397// Calculate the padding required to align an element of a struct
+
398// For padding see explanation here: https://en.cppreference.com/w/cpp/language/object#Alignment
+
399// It is to compute padding following last element inserted inside a struct
+
400// 1) We want to push back an element padded to the structure
+
401// 'current_size' is the size of the structure before adding the new element.
+
402// 'member_size' the size of the element we want to add.
+
403// 2) We want to compute the final padding for the global structure
+
404// 'current_size' is the size of the whole structure without final padding
+
405// 'member_size' is the maximum size of all element of the struct
+
406//
+
407// The basic formula is only to know how much we need to add to 'current_size' to fit
+
408// 'member_size'.
+
409// And at the end, we do another computation because the end padding, should fit the biggest
+
410// element of the struct.
+
411//
+
412// As we are with `size_t` element, we need to compute everything inside R+
+
+
413#define _H5_STRUCT_PADDING(current_size, member_size) \
+
414 (((member_size) >= (current_size)) \
+
415 ? (((member_size) - (current_size)) % (member_size)) \
+
416 : ((((member_size) - (((current_size) - (member_size)) % (member_size)))) % \
+
417 (member_size)))
+
+
418
+
419inline void CompoundType::create(size_t size) {
+
420 if (size == 0) {
+
421 size_t current_size = 0, max_atomic_size = 0;
+
422
+
423 // Do a first pass to find the total size of the compound datatype
+
424 for (auto& member: members) {
+
425 size_t member_size = detail::h5t_get_size(member.base_type.getId());
+
426
+
427 if (member_size == 0) {
+
428 throw DataTypeException("Cannot get size of DataType with hid: " +
+
429 std::to_string(member.base_type.getId()));
+
430 }
+
431
+
432 size_t first_atomic_size = find_first_atomic_member_size(member.base_type.getId());
+
433
+
434 // Set the offset of this member within the struct according to the
+
435 // standard alignment rules. The c++ standard specifies that:
+
436 // > objects have an alignment requirement of which their size is a multiple
+
437 member.offset = current_size + _H5_STRUCT_PADDING(current_size, first_atomic_size);
+
438
+
439 // Set the current size to the end of the new member
+
440 current_size = member.offset + member_size;
+
441
+
442 // Keep track of the highest atomic member size because it's needed
+
443 // for the padding of the complete compound type.
+
444 max_atomic_size = std::max(max_atomic_size, first_atomic_size);
+
445 }
+
446
+
447 size = current_size + _H5_STRUCT_PADDING(current_size, max_atomic_size);
+
448 }
+
449
+
450 // Create the HDF5 type
+
451 if ((_hid = H5Tcreate(H5T_COMPOUND, size)) < 0) {
+
452 HDF5ErrMapper::ToException<DataTypeException>("Could not create new compound datatype");
+
453 }
+
454
+
455 // Loop over all the members and insert them into the datatype
+
456 for (const auto& member: members) {
+
457 if (H5Tinsert(_hid, member.name.c_str(), member.offset, member.base_type.getId()) < 0) {
+
458 HDF5ErrMapper::ToException<DataTypeException>("Could not add new member to datatype");
+
459 }
+
460 }
+
461}
+
462
+
463#undef _H5_STRUCT_PADDING
+
464
+
+
465inline void CompoundType::commit(const Object& object, const std::string& name) const {
+
466 H5Tcommit2(object.getId(), name.c_str(), getId(), H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
467}
+
+
468
+
469template <typename T>
+
470inline void EnumType<T>::create() {
+
471 // Create the HDF5 type
+
472 if ((_hid = H5Tenum_create(AtomicType<typename std::underlying_type<T>::type>{}.getId())) < 0) {
+
473 HDF5ErrMapper::ToException<DataTypeException>("Could not create new enum datatype");
+
474 }
+
475
+
476 // Loop over all the members and insert them into the datatype
+
477 for (const auto& member: members) {
+
478 if (H5Tenum_insert(_hid, member.name.c_str(), &(member.value)) < 0) {
+ +
480 "Could not add new member to this enum datatype");
+
481 }
+
482 }
+
483}
+
484
+
485template <typename T>
+
+
486inline void EnumType<T>::commit(const Object& object, const std::string& name) const {
+
487 H5Tcommit2(object.getId(), name.c_str(), getId(), H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
+
488}
+
+
489
+
490namespace {
+
491
+
492inline hid_t create_string(size_t length) {
+
493 hid_t _hid = detail::h5t_copy(H5T_C_S1);
+
494 detail::h5t_set_size(_hid, length);
+
495 detail::h5t_set_cset(_hid, H5T_CSET_UTF8);
+
496 return _hid;
+
497}
+
498
+
499
+
500inline DataTypeClass convert_type_class(const H5T_class_t& tclass) {
+
501 switch (tclass) {
+
502 case H5T_TIME:
+
503 return DataTypeClass::Time;
+
504 case H5T_INTEGER:
+ +
506 case H5T_FLOAT:
+ +
508 case H5T_STRING:
+ +
510 case H5T_BITFIELD:
+ +
512 case H5T_OPAQUE:
+ +
514 case H5T_COMPOUND:
+ +
516 case H5T_REFERENCE:
+ +
518 case H5T_ENUM:
+
519 return DataTypeClass::Enum;
+
520 case H5T_VLEN:
+ +
522 case H5T_ARRAY:
+ +
524 case H5T_NO_CLASS:
+
525 case H5T_NCLASSES:
+
526 default:
+ +
528 }
+
529}
+
530
+
531
+
532inline std::string type_class_string(DataTypeClass tclass) {
+
533 switch (tclass) {
+ +
535 return "Time";
+ +
537 return "Integer";
+ +
539 return "Float";
+ +
541 return "String";
+ +
543 return "BitField";
+ +
545 return "Opaque";
+ +
547 return "Compound";
+ +
549 return "Reference";
+ +
551 return "Enum";
+ +
553 return "Varlen";
+ +
555 return "Array";
+
556 default:
+
557 return "(Invalid)";
+
558 }
+
559}
+
560
+
561} // unnamed namespace
+
562
+
563
+
565template <typename T>
+
+ +
567 return AtomicType<T>();
+
568}
+
+
569
+
570
+
572template <typename T>
+
+ +
574 DataType t = create_datatype<T>();
+
575 if (t.empty()) {
+
576 throw DataTypeException("Type given to create_and_check_datatype is not valid");
+
577 }
+
578
+
579 // Skip check if the base type is a variable length string
+
580 if (t.isVariableStr()) {
+
581 return t;
+
582 }
+
583
+
584 // Check that the size of the template type matches the size that HDF5 is
+
585 // expecting.
+
586 if (t.isReference() || t.isFixedLenStr()) {
+
587 return t;
+
588 }
+
589 if (sizeof(T) != t.getSize()) {
+
590 std::ostringstream ss;
+
591 ss << "Size of array type " << sizeof(T) << " != that of memory datatype " << t.getSize()
+
592 << std::endl;
+
593 throw DataTypeException(ss.str());
+
594 }
+
595
+
596 return t;
+
597}
+
+
598
+
599} // namespace HighFive
+
600HIGHFIVE_REGISTER_TYPE(HighFive::details::Boolean, HighFive::create_enum_boolean)
+
#define HIGHFIVE_REGISTER_TYPE(type, function)
Macro to extend datatype of HighFive.
Definition H5DataType.hpp:482
+
#define _H5_STRUCT_PADDING(current_size, member_size)
Definition H5DataType_misc.hpp:413
+ +
AtomicType()
Definition H5DataType_misc.hpp:292
+
AtomicType()
Definition H5DataType_misc.hpp:285
+
AtomicType()
Definition H5DataType_misc.hpp:299
+
create an HDF5 DataType from a C++ type
Definition H5DataType.hpp:185
+
AtomicType()
Definition H5DataType_misc.hpp:315
+
Create a compound HDF5 datatype.
Definition H5DataType.hpp:196
+
void commit(const Object &object, const std::string &name) const
Commit datatype into the given Object.
Definition H5DataType_misc.hpp:465
+
Exception specific to HighFive DataType interface.
Definition H5Exception.hpp:94
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
bool operator==(const DataType &other) const
Definition H5DataType_misc.hpp:105
+
bool isFixedLenStr() const
Returns whether the type is a fixed-length string.
Definition H5DataType_misc.hpp:121
+
size_t getSize() const
Returns the length (in bytes) of this type elements.
Definition H5DataType_misc.hpp:101
+
bool isVariableStr() const
Returns whether the type is a variable-length string.
Definition H5DataType_misc.hpp:113
+
bool empty() const noexcept
Check the DataType was default constructed. Such value might represent auto-detection of the datatype...
Definition H5DataType_misc.hpp:93
+
std::string string() const
Returns a friendly description of the type (e.g. Float32)
Definition H5DataType_misc.hpp:141
+
DataTypeClass getClass() const
Return the fundamental type.
Definition H5DataType_misc.hpp:97
+
bool isReference() const
Returns whether the type is a Reference.
Definition H5DataType_misc.hpp:125
+
StringType asStringType() const
Returns this datatype as a StringType.
Definition H5DataType_misc.hpp:129
+
bool operator!=(const DataType &other) const
Definition H5DataType_misc.hpp:109
+
Create a enum HDF5 datatype.
Definition H5DataType.hpp:299
+
void commit(const Object &object, const std::string &name) const
Commit datatype into the given Object.
Definition H5DataType_misc.hpp:486
+
A structure representing a set of fixed-length strings.
Definition H5DataType.hpp:358
+
std::string getString(std::size_t index) const
Retrieve a string from the structure as std::string.
Definition H5DataType_misc.hpp:363
+ +
void push_back(const std::string &)
Append an std::string to the buffer structure.
Definition H5DataType_misc.hpp:349
+
FixedLengthStringType(size_t size, StringPadding padding, CharacterSet character_set=CharacterSet::Ascii)
Create a fixed length string datatype.
Definition H5DataType_misc.hpp:153
+
Exception specific to HighFive Object interface.
Definition H5Exception.hpp:85
+
Definition H5Object.hpp:54
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
bool isValid() const noexcept
isValid
Definition H5Object_misc.hpp:61
+
hid_t _hid
Definition H5Object.hpp:105
+
Definition H5DataType.hpp:128
+
StringPadding getPadding() const
For fixed length stings return the padding.
Definition H5DataType_misc.hpp:145
+
CharacterSet getCharacterSet() const
For stings return the character set.
Definition H5DataType_misc.hpp:149
+
VariableLengthStringType(CharacterSet character_set=CharacterSet::Ascii)
Create a variable length string HDF5 datatype.
Definition H5DataType_misc.hpp:168
+
Definition H5_definitions.hpp:15
+
half_float::half float16_t
Definition H5DataType_misc.hpp:237
+
EnumType< details::Boolean > create_enum_boolean()
Definition H5DataType_misc.hpp:309
+
DataType create_and_check_datatype()
Create a DataType instance representing type T and perform a sanity check on its size.
Definition H5DataType_misc.hpp:573
+
DataType create_datatype()
Create a DataType instance representing type T.
Definition H5DataType_misc.hpp:566
+
CharacterSet
Definition H5DataType.hpp:123
+
size_t find_first_atomic_member_size(hid_t hid)
Definition H5DataType_misc.hpp:374
+
DataTypeClass
Enum of Fundamental data classes.
Definition H5DataType.hpp:28
+ + + + + + + + + + + + +
StringPadding
Definition string_padding.hpp:7
+ +
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_dataspace__misc_8hpp.html b/_h5_dataspace__misc_8hpp.html new file mode 100644 index 000000000..2e6d69131 --- /dev/null +++ b/_h5_dataspace__misc_8hpp.html @@ -0,0 +1,331 @@ + + + + + + + +HighFive: highfive/bits/H5Dataspace_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Dataspace_misc.hpp File Reference
+
+
+
#include <array>
+#include <initializer_list>
+#include <vector>
+#include <numeric>
+#include <H5Spublic.h>
+#include "H5Utils.hpp"
+#include "H5Converter_misc.hpp"
+
+Include dependency graph for H5Dataspace_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_dataspace__misc_8hpp__dep__incl.map b/_h5_dataspace__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..e8303b263 --- /dev/null +++ b/_h5_dataspace__misc_8hpp__dep__incl.map @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_dataspace__misc_8hpp__dep__incl.md5 b/_h5_dataspace__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..d9431e855 --- /dev/null +++ b/_h5_dataspace__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +2bad08289a7fa94d15c8e596e54dd002 \ No newline at end of file diff --git a/_h5_dataspace__misc_8hpp__dep__incl.png b/_h5_dataspace__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..6b55cbca0 Binary files /dev/null and b/_h5_dataspace__misc_8hpp__dep__incl.png differ diff --git a/_h5_dataspace__misc_8hpp__incl.map b/_h5_dataspace__misc_8hpp__incl.map new file mode 100644 index 000000000..99c4a5c0a --- /dev/null +++ b/_h5_dataspace__misc_8hpp__incl.map @@ -0,0 +1,140 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_dataspace__misc_8hpp__incl.md5 b/_h5_dataspace__misc_8hpp__incl.md5 new file mode 100644 index 000000000..3643725e6 --- /dev/null +++ b/_h5_dataspace__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +4a500661e5508a8a1b41c05eb13b5b30 \ No newline at end of file diff --git a/_h5_dataspace__misc_8hpp__incl.png b/_h5_dataspace__misc_8hpp__incl.png new file mode 100644 index 000000000..8484db579 Binary files /dev/null and b/_h5_dataspace__misc_8hpp__incl.png differ diff --git a/_h5_dataspace__misc_8hpp_source.html b/_h5_dataspace__misc_8hpp_source.html new file mode 100644 index 000000000..9b23bc2d2 --- /dev/null +++ b/_h5_dataspace__misc_8hpp_source.html @@ -0,0 +1,312 @@ + + + + + + + +HighFive: highfive/bits/H5Dataspace_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Dataspace_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <array>
+
12#include <initializer_list>
+
13#include <vector>
+
14#include <numeric>
+
15
+
16#include <H5Spublic.h>
+
17
+
18#include "H5Utils.hpp"
+
19#include "H5Converter_misc.hpp"
+
20
+
21namespace HighFive {
+
22
+
+
23inline DataSpace::DataSpace(const std::vector<size_t>& dims)
+
24 : DataSpace(dims.begin(), dims.end()) {}
+
+
25
+
26template <size_t N>
+
+
27inline DataSpace::DataSpace(const std::array<size_t, N>& dims)
+
28 : DataSpace(dims.begin(), dims.end()) {}
+
+
29
+
+
30inline DataSpace::DataSpace(const std::initializer_list<size_t>& items)
+
31 : DataSpace(std::vector<size_t>(items)) {}
+
+
32
+
33template <typename... Args>
+
+
34inline DataSpace::DataSpace(size_t dim1, Args... dims)
+
35 : DataSpace(std::vector<size_t>{dim1, static_cast<size_t>(dims)...}) {}
+
+
36
+
37template <class IT, typename>
+
+
38inline DataSpace::DataSpace(const IT begin, const IT end) {
+
39 std::vector<hsize_t> real_dims(begin, end);
+
40
+
41 if ((_hid = H5Screate_simple(int(real_dims.size()), real_dims.data(), NULL)) < 0) {
+
42 throw DataSpaceException("Impossible to create dataspace");
+
43 }
+
44}
+
+
45
+
+
46inline DataSpace::DataSpace(const std::vector<size_t>& dims, const std::vector<size_t>& maxdims) {
+
47 if (dims.size() != maxdims.size()) {
+
48 throw DataSpaceException("dims and maxdims must be the same length.");
+
49 }
+
50
+
51 std::vector<hsize_t> real_dims(dims.begin(), dims.end());
+
52 std::vector<hsize_t> real_maxdims(maxdims.begin(), maxdims.end());
+
53
+
54 // Replace unlimited flag with actual HDF one
+
55 std::replace(real_maxdims.begin(),
+
56 real_maxdims.end(),
+
57 static_cast<hsize_t>(DataSpace::UNLIMITED),
+
58 H5S_UNLIMITED);
+
59
+
60 if ((_hid = H5Screate_simple(int(dims.size()), real_dims.data(), real_maxdims.data())) < 0) {
+
61 throw DataSpaceException("Impossible to create dataspace");
+
62 }
+
63} // namespace HighFive
+
+
64
+
+ +
66 H5S_class_t h5_dataspace_type;
+
67 switch (space_type) {
+ +
69 h5_dataspace_type = H5S_SCALAR;
+
70 break;
+ +
72 h5_dataspace_type = H5S_NULL;
+
73 break;
+
74 default:
+ +
76 "Invalid dataspace type: should be "
+
77 "dataspace_scalar or dataspace_null");
+
78 }
+
79
+
80 if ((_hid = H5Screate(h5_dataspace_type)) < 0) {
+
81 throw DataSpaceException("Unable to create dataspace");
+
82 }
+
83}
+
+
84
+
+ +
86 DataSpace res;
+
87 if ((res._hid = H5Scopy(_hid)) < 0) {
+
88 throw DataSpaceException("Unable to copy dataspace");
+
89 }
+
90 return res;
+
91}
+
+
92
+
+
93inline size_t DataSpace::getNumberDimensions() const {
+
94 const int ndim = H5Sget_simple_extent_ndims(_hid);
+
95 if (ndim < 0) {
+ +
97 "Unable to get dataspace number of dimensions");
+
98 }
+
99 return size_t(ndim);
+
100}
+
+
101
+
+
102inline std::vector<size_t> DataSpace::getDimensions() const {
+
103 std::vector<hsize_t> dims(getNumberDimensions());
+
104 if (!dims.empty()) {
+
105 if (H5Sget_simple_extent_dims(_hid, dims.data(), NULL) < 0) {
+
106 HDF5ErrMapper::ToException<DataSetException>("Unable to get dataspace dimensions");
+
107 }
+
108 }
+
109 return details::to_vector_size_t(std::move(dims));
+
110}
+
+
111
+
+
112inline size_t DataSpace::getElementCount() const {
+
113 hssize_t nelements = H5Sget_simple_extent_npoints(_hid);
+
114 if (nelements < 0) {
+ +
116 "Unable to get number of elements in dataspace");
+
117 }
+
118
+
119 return static_cast<size_t>(nelements);
+
120}
+
+
121
+
+
122inline std::vector<size_t> DataSpace::getMaxDimensions() const {
+
123 std::vector<hsize_t> maxdims(getNumberDimensions());
+
124 if (H5Sget_simple_extent_dims(_hid, NULL, maxdims.data()) < 0) {
+
125 HDF5ErrMapper::ToException<DataSetException>("Unable to get dataspace dimensions");
+
126 }
+
127
+
128 std::replace(maxdims.begin(),
+
129 maxdims.end(),
+
130 H5S_UNLIMITED,
+
131 static_cast<hsize_t>(DataSpace::UNLIMITED));
+
132 return details::to_vector_size_t(maxdims);
+
133}
+
+
134
+
135template <typename T>
+
+
136inline DataSpace DataSpace::From(const T& value) {
+
137 auto dims = details::inspector<T>::getDimensions(value);
+
138 return DataSpace(dims);
+
139}
+
+
140
+
141template <std::size_t N, std::size_t Width>
+
+
142inline DataSpace DataSpace::FromCharArrayStrings(const char (&)[N][Width]) {
+
143 return DataSpace(N);
+
144}
+
+
145
+
146namespace details {
+
147
+
149inline bool checkDimensions(const DataSpace& mem_space, size_t n_dim_requested) {
+
150 return checkDimensions(mem_space.getDimensions(), n_dim_requested);
+
151}
+
152
+
153} // namespace details
+
154} // namespace HighFive
+ + +
Exception specific to HighFive DataSpace interface.
Definition H5Exception.hpp:112
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
static DataSpace FromCharArrayStrings(const char(&string_array)[N][Width])
Create a DataSpace from a value of type string array.
Definition H5Dataspace_misc.hpp:142
+
static DataSpace From(const T &value)
Automatically deduce the DataSpace from a container/value.
Definition H5Dataspace_misc.hpp:136
+
size_t getNumberDimensions() const
Returns the number of dimensions of a DataSpace.
Definition H5Dataspace_misc.hpp:93
+
std::vector< size_t > getMaxDimensions() const
Returns the maximum size of the dataset in each dimension.
Definition H5Dataspace_misc.hpp:122
+
DataspaceType
An enum to create scalar and null DataSpace with DataSpace::DataSpace(DataspaceType dtype).
Definition H5DataSpace.hpp:48
+
@ dataspace_scalar
Value to create scalar DataSpace.
Definition H5DataSpace.hpp:49
+
@ dataspace_null
Value to create null DataSpace.
Definition H5DataSpace.hpp:50
+
size_t getElementCount() const
Return the number of elements in this DataSpace.
Definition H5Dataspace_misc.hpp:112
+
std::vector< size_t > getDimensions() const
Returns the size of the dataset in each dimension.
Definition H5Dataspace_misc.hpp:102
+
DataSpace clone() const
Create a copy of the DataSpace which will have different id.
Definition H5Dataspace_misc.hpp:85
+ +
static const size_t UNLIMITED
Magic value to specify that a DataSpace can grow without limit.
Definition H5DataSpace.hpp:41
+
hid_t _hid
Definition H5Object.hpp:105
+
Definition H5_definitions.hpp:15
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_easy_8hpp.html b/_h5_easy_8hpp.html new file mode 100644 index 000000000..14f9b227e --- /dev/null +++ b/_h5_easy_8hpp.html @@ -0,0 +1,431 @@ + + + + + + + +HighFive: highfive/H5Easy.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Easy.hpp File Reference
+
+
+
#include <string>
+#include <vector>
+#include <xtensor/xarray.hpp>
+#include <xtensor/xtensor.hpp>
+#include <Eigen/Eigen>
+#include <opencv2/opencv.hpp>
+#include "H5File.hpp"
+#include "h5easy_bits/H5Easy_Eigen.hpp"
+#include "h5easy_bits/H5Easy_misc.hpp"
+#include "h5easy_bits/H5Easy_opencv.hpp"
+#include "h5easy_bits/H5Easy_public.hpp"
+#include "h5easy_bits/H5Easy_scalar.hpp"
+#include "h5easy_bits/H5Easy_vector.hpp"
+#include "h5easy_bits/H5Easy_xtensor.hpp"
+
+Include dependency graph for H5Easy.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

class  H5Easy::Compression
 Signal to set compression level for written DataSets. More...
 
class  H5Easy::DumpOptions
 Define options for dumping data. More...
 
+ + + + +

+Namespaces

namespace  H5Easy
 Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:
 
+ + + + + + + +

+Enumerations

enum class  H5Easy::DumpMode { H5Easy::Create = 0 +, H5Easy::Overwrite = 1 + }
 Write mode for DataSets. More...
 
enum class  H5Easy::Flush { H5Easy::False = 0 +, H5Easy::True = 1 + }
 Signal to enable/disable automatic flushing after write operations. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

size_t H5Easy::getSize (const File &file, const std::string &path)
 Get the size of an existing DataSet in an open HDF5 file.
 
std::vector< size_t > H5Easy::getShape (const File &file, const std::string &path)
 Get the shape of an existing DataSet in an readable file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
 Write object (templated) to a (new) DataSet in an open HDF5 file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, const DumpOptions &options)
 Write object (templated) to a (new) DataSet in an open HDF5 file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, const std::vector< size_t > &idx)
 Write a scalar to a (new, extendible) DataSet in an open HDF5 file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, const std::initializer_list< size_t > &idx)
 Write a scalar to a (new, extendable) DataSet in an open HDF5 file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, const std::vector< size_t > &idx, const DumpOptions &options)
 Write a scalar to a (new, extendible) DataSet in an open HDF5 file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, const std::initializer_list< size_t > &idx, const DumpOptions &options)
 Write a scalar to a (new, extendible) DataSet in an open HDF5 file.
 
template<class T >
H5Easy::load (const File &file, const std::string &path, const std::vector< size_t > &idx)
 Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.
 
template<class T >
H5Easy::load (const File &file, const std::string &path)
 Load a DataSet in an open HDF5 file to an object (templated).
 
template<class T >
Attribute H5Easy::dumpAttribute (File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)
 Write object (templated) to a (new) Attribute in an open HDF5 file.
 
template<class T >
Attribute H5Easy::dumpAttribute (File &file, const std::string &path, const std::string &key, const T &data, const DumpOptions &options)
 Write object (templated) to a (new) Attribute in an open HDF5 file.
 
template<class T >
H5Easy::loadAttribute (const File &file, const std::string &path, const std::string &key)
 Load a Attribute in an open HDF5 file to an object (templated).
 
+
+
+ + + + diff --git a/_h5_easy_8hpp.js b/_h5_easy_8hpp.js new file mode 100644 index 000000000..619c143bc --- /dev/null +++ b/_h5_easy_8hpp.js @@ -0,0 +1,26 @@ +var _h5_easy_8hpp = +[ + [ "H5Easy::Compression", "class_h5_easy_1_1_compression.html", "class_h5_easy_1_1_compression" ], + [ "H5Easy::DumpOptions", "class_h5_easy_1_1_dump_options.html", "class_h5_easy_1_1_dump_options" ], + [ "DumpMode", "_h5_easy_8hpp.html#a6d10754b7f2ada9e3296560032dd81a0", [ + [ "Create", "_h5_easy_8hpp.html#a6d10754b7f2ada9e3296560032dd81a0a686e697538050e4664636337cc3b834f", null ], + [ "Overwrite", "_h5_easy_8hpp.html#a6d10754b7f2ada9e3296560032dd81a0ada364eb37e143f6b2b5559aa03f5913a", null ] + ] ], + [ "Flush", "_h5_easy_8hpp.html#af71ce7ab9b99227bdead69993d1f3b62", [ + [ "False", "_h5_easy_8hpp.html#af71ce7ab9b99227bdead69993d1f3b62af8320b26d30ab433c5a54546d21f414c", null ], + [ "True", "_h5_easy_8hpp.html#af71ce7ab9b99227bdead69993d1f3b62af827cf462f62848df37c5e1e94a4da74", null ] + ] ], + [ "dump", "_h5_easy_8hpp.html#a7614d902c22b74a18fb29c42599a6785", null ], + [ "dump", "_h5_easy_8hpp.html#a2e96c80337866b79777e52faa7d692cc", null ], + [ "dump", "_h5_easy_8hpp.html#a5f0af85e0fe3ac03af665dae2a3e9e16", null ], + [ "dump", "_h5_easy_8hpp.html#a727340de29b032fa860412f6a69f215c", null ], + [ "dump", "_h5_easy_8hpp.html#a26be50f813db9257d77b0c25adfdf726", null ], + [ "dump", "_h5_easy_8hpp.html#a3d74bc6b96493dbef4fb3b4e237cff88", null ], + [ "dumpAttribute", "_h5_easy_8hpp.html#a4a395eb642d1a2d5055282dacf32ee94", null ], + [ "dumpAttribute", "_h5_easy_8hpp.html#a85cad90855dbb23ba985be58b447a6b2", null ], + [ "getShape", "_h5_easy_8hpp.html#aa178d03fd7b8d435b5b41f613c1eaa8b", null ], + [ "getSize", "_h5_easy_8hpp.html#a225c8cffbe78d15254ecde0c8a42958b", null ], + [ "load", "_h5_easy_8hpp.html#a35bd0e824fe3dca2e2d9f9b5e42a18aa", null ], + [ "load", "_h5_easy_8hpp.html#a97ce3122b92fcf8322ed7e8c460c6862", null ], + [ "loadAttribute", "_h5_easy_8hpp.html#a6dc2a2016da5196913ab7036700006fa", null ] +]; \ No newline at end of file diff --git a/_h5_easy_8hpp__dep__incl.map b/_h5_easy_8hpp__dep__incl.map new file mode 100644 index 000000000..b8cd8d90e --- /dev/null +++ b/_h5_easy_8hpp__dep__incl.map @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy_8hpp__dep__incl.md5 b/_h5_easy_8hpp__dep__incl.md5 new file mode 100644 index 000000000..f21b0d25c --- /dev/null +++ b/_h5_easy_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +d44107fa08bcab1bc164cb2f139a9adc \ No newline at end of file diff --git a/_h5_easy_8hpp__dep__incl.png b/_h5_easy_8hpp__dep__incl.png new file mode 100644 index 000000000..4137a717d Binary files /dev/null and b/_h5_easy_8hpp__dep__incl.png differ diff --git a/_h5_easy_8hpp__incl.map b/_h5_easy_8hpp__incl.map new file mode 100644 index 000000000..1c413ce5a --- /dev/null +++ b/_h5_easy_8hpp__incl.map @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy_8hpp__incl.md5 b/_h5_easy_8hpp__incl.md5 new file mode 100644 index 000000000..c89ca5857 --- /dev/null +++ b/_h5_easy_8hpp__incl.md5 @@ -0,0 +1 @@ +5a63636231fc802a7196d01aa6cdec3b \ No newline at end of file diff --git a/_h5_easy_8hpp__incl.png b/_h5_easy_8hpp__incl.png new file mode 100644 index 000000000..ec6e7a06d Binary files /dev/null and b/_h5_easy_8hpp__incl.png differ diff --git a/_h5_easy_8hpp_source.html b/_h5_easy_8hpp_source.html new file mode 100644 index 000000000..ee24987c4 --- /dev/null +++ b/_h5_easy_8hpp_source.html @@ -0,0 +1,371 @@ + + + + + + + +HighFive: highfive/H5Easy.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Easy.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9
+
17
+
18#pragma once
+
19
+
20#include <string>
+
21#include <vector>
+
22
+
23// optionally enable xtensor plug-in and load the library
+
24#ifdef XTENSOR_VERSION_MAJOR
+
25#ifndef H5_USE_XTENSOR
+
26#define H5_USE_XTENSOR
+
27#endif
+
28#endif
+
29
+
30#ifdef H5_USE_XTENSOR
+
31#include <xtensor/xarray.hpp>
+
32#include <xtensor/xtensor.hpp>
+
33#endif
+
34
+
35// optionally enable Eigen plug-in and load the library
+
36#ifdef EIGEN_WORLD_VERSION
+
37#ifndef H5_USE_EIGEN
+
38#define H5_USE_EIGEN
+
39#endif
+
40#endif
+
41
+
42#ifdef H5_USE_EIGEN
+
43#include <Eigen/Eigen>
+
44#endif
+
45
+
46// optionally enable OpenCV plug-in and load the library
+
47#ifdef CV_MAJOR_VERSION
+
48#ifndef H5_USE_OPENCV
+
49#define H5_USE_OPENCV
+
50#endif
+
51#endif
+
52
+
53#ifdef H5_USE_OPENCV
+
54#include <opencv2/opencv.hpp>
+
55#endif
+
56
+
57#include "H5File.hpp"
+
58
+
+
59namespace H5Easy {
+
60
+ + + + + + + + +
69using HighFive::File;
+ + +
72
+
+
75enum class DumpMode {
+
76 Create = 0,
+
77 Overwrite = 1
+
78};
+
+
79
+
+
82enum class Flush {
+
83 False = 0,
+
84 True = 1
+
85};
+
+
86
+
+ +
90 public:
+
96 explicit Compression(bool enable = true);
+
97
+
102 template <class T>
+
103 Compression(T level);
+
104
+
107 inline unsigned get() const;
+
108
+
109 private:
+
110 unsigned m_compression_level;
+
111};
+
+
112
+
+ +
122 public:
+
125 DumpOptions() = default;
+
126
+
130 template <class... Args>
+
+
131 DumpOptions(Args... args) {
+
132 set(args...);
+
133 }
+
+
134
+
138 inline void set(DumpMode mode);
+
139
+
143 inline void set(Flush mode);
+
144
+
148 inline void set(const Compression& level);
+
149
+
154 template <class T, class... Args>
+
155 inline void set(T arg, Args... args);
+
156
+
160 template <class T>
+
161 inline void setChunkSize(const std::vector<T>& shape);
+
162
+
166 inline void setChunkSize(std::initializer_list<size_t> shape);
+
167
+
171 inline bool overwrite() const;
+
172
+
176 inline bool flush() const;
+
177
+
181 inline bool compress() const;
+
182
+
186 inline unsigned getCompressionLevel() const;
+
187
+
192 inline bool isChunked() const;
+
193
+
197 inline std::vector<hsize_t> getChunkSize() const;
+
198
+
199 private:
+
200 bool m_overwrite = false;
+
201 bool m_flush = true;
+
202 unsigned m_compression_level = 0;
+
203 std::vector<hsize_t> m_chunk_size = {};
+
204};
+
+
205
+
213inline size_t getSize(const File& file, const std::string& path);
+
214
+
222inline std::vector<size_t> getShape(const File& file, const std::string& path);
+
223
+
234template <class T>
+
235inline DataSet dump(File& file,
+
236 const std::string& path,
+
237 const T& data,
+ +
239
+
250template <class T>
+
251inline DataSet dump(File& file, const std::string& path, const T& data, const DumpOptions& options);
+
252
+
263template <class T>
+
264inline DataSet dump(File& file,
+
265 const std::string& path,
+
266 const T& data,
+
267 const std::vector<size_t>& idx);
+
268
+
279template <class T>
+
280inline DataSet dump(File& file,
+
281 const std::string& path,
+
282 const T& data,
+
283 const std::initializer_list<size_t>& idx);
+
284
+
296template <class T>
+
297inline DataSet dump(File& file,
+
298 const std::string& path,
+
299 const T& data,
+
300 const std::vector<size_t>& idx,
+
301 const DumpOptions& options);
+
302
+
314template <class T>
+
315inline DataSet dump(File& file,
+
316 const std::string& path,
+
317 const T& data,
+
318 const std::initializer_list<size_t>& idx,
+
319 const DumpOptions& options);
+
320
+
330template <class T>
+
331inline T load(const File& file, const std::string& path, const std::vector<size_t>& idx);
+
332
+
341template <class T>
+
342inline T load(const File& file, const std::string& path);
+
343
+
355template <class T>
+
356inline Attribute dumpAttribute(File& file,
+
357 const std::string& path,
+
358 const std::string& key,
+
359 const T& data,
+ +
361
+
373template <class T>
+
374inline Attribute dumpAttribute(File& file,
+
375 const std::string& path,
+
376 const std::string& key,
+
377 const T& data,
+
378 const DumpOptions& options);
+
379
+
389template <class T>
+
390inline T loadAttribute(const File& file, const std::string& path, const std::string& key);
+
391
+
392} // namespace H5Easy
+
+
393
+ + + + + + + + + + + + + + + +
Signal to set compression level for written DataSets.
Definition H5Easy.hpp:89
+
unsigned get() const
Return compression level.
Definition H5Easy_public.hpp:27
+
Define options for dumping data.
Definition H5Easy.hpp:121
+
bool flush() const
Get flush-mode.
Definition H5Easy_public.hpp:62
+
bool isChunked() const
Get chunking mode: true is manually set, false if chunk-size should be computed automatically.
Definition H5Easy_public.hpp:74
+
std::vector< hsize_t > getChunkSize() const
Get chunk size. Use DumpOptions::getChunkSize to check if chunk-size should be automatically computed...
Definition H5Easy_public.hpp:78
+
DumpOptions()=default
Constructor: accept all default settings.
+
unsigned getCompressionLevel() const
Get compression level.
Definition H5Easy_public.hpp:70
+
bool overwrite() const
Get overwrite-mode.
Definition H5Easy_public.hpp:58
+
void set(DumpMode mode)
Overwrite H5Easy::DumpMode setting.
Definition H5Easy_public.hpp:31
+
bool compress() const
Get compress-mode.
Definition H5Easy_public.hpp:66
+
DumpOptions(Args... args)
Constructor: overwrite (some of the) defaults.
Definition H5Easy.hpp:131
+
void setChunkSize(const std::vector< T > &shape)
Set chunk-size. If the input is rank (size) zero, automatic chunking is enabled.
Definition H5Easy_public.hpp:50
+
create an HDF5 DataType from a C++ type
Definition H5DataType.hpp:185
+
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
+
Definition H5PropertyList.hpp:488
+
Class representing a dataset.
Definition H5DataSet.hpp:30
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
Definition H5PropertyList.hpp:507
+
Basic HighFive Exception class.
Definition H5Exception.hpp:23
+
File class.
Definition H5File.hpp:24
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
Definition H5PropertyList.hpp:535
+
Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated...
Definition H5Easy.hpp:59
+
size_t getSize(const File &file, const std::string &path)
Get the size of an existing DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:82
+
DataSet dump(File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:99
+
DumpMode
Write mode for DataSets.
Definition H5Easy.hpp:75
+ + +
T loadAttribute(const File &file, const std::string &path, const std::string &key)
Load a Attribute in an open HDF5 file to an object (templated).
Definition H5Easy_public.hpp:166
+
Attribute dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) Attribute in an open HDF5 file.
Definition H5Easy_public.hpp:148
+
T load(const File &file, const std::string &path, const std::vector< size_t > &idx)
Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.
Definition H5Easy_public.hpp:138
+
std::vector< size_t > getShape(const File &file, const std::string &path)
Get the shape of an existing DataSet in an readable file.
Definition H5Easy_public.hpp:86
+
Flush
Signal to enable/disable automatic flushing after write operations.
Definition H5Easy.hpp:82
+ + +
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+ +
+
+ + + + diff --git a/_h5_easy___eigen_8hpp.html b/_h5_easy___eigen_8hpp.html new file mode 100644 index 000000000..74ac650a6 --- /dev/null +++ b/_h5_easy___eigen_8hpp.html @@ -0,0 +1,342 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_Eigen.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Easy_Eigen.hpp File Reference
+
+
+
#include "../H5Easy.hpp"
+#include "H5Easy_misc.hpp"
+#include "H5Easy_scalar.hpp"
+
+Include dependency graph for H5Easy_Eigen.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Namespaces

namespace  H5Easy
 Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:
 
+
+
+ + + + diff --git a/_h5_easy___eigen_8hpp__dep__incl.map b/_h5_easy___eigen_8hpp__dep__incl.map new file mode 100644 index 000000000..8166b7a1e --- /dev/null +++ b/_h5_easy___eigen_8hpp__dep__incl.map @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy___eigen_8hpp__dep__incl.md5 b/_h5_easy___eigen_8hpp__dep__incl.md5 new file mode 100644 index 000000000..a87ad9cc7 --- /dev/null +++ b/_h5_easy___eigen_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +6b1947ccff176e2c9e73431c4886874d \ No newline at end of file diff --git a/_h5_easy___eigen_8hpp__dep__incl.png b/_h5_easy___eigen_8hpp__dep__incl.png new file mode 100644 index 000000000..2392fcbbc Binary files /dev/null and b/_h5_easy___eigen_8hpp__dep__incl.png differ diff --git a/_h5_easy___eigen_8hpp__incl.map b/_h5_easy___eigen_8hpp__incl.map new file mode 100644 index 000000000..68eab91f7 --- /dev/null +++ b/_h5_easy___eigen_8hpp__incl.map @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy___eigen_8hpp__incl.md5 b/_h5_easy___eigen_8hpp__incl.md5 new file mode 100644 index 000000000..346b7cdee --- /dev/null +++ b/_h5_easy___eigen_8hpp__incl.md5 @@ -0,0 +1 @@ +3af7601c96150817e89412e2c1ff8445 \ No newline at end of file diff --git a/_h5_easy___eigen_8hpp__incl.png b/_h5_easy___eigen_8hpp__incl.png new file mode 100644 index 000000000..2d22153bd Binary files /dev/null and b/_h5_easy___eigen_8hpp__incl.png differ diff --git a/_h5_easy___eigen_8hpp_source.html b/_h5_easy___eigen_8hpp_source.html new file mode 100644 index 000000000..60efbc6dc --- /dev/null +++ b/_h5_easy___eigen_8hpp_source.html @@ -0,0 +1,266 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_Eigen.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Easy_Eigen.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include "../H5Easy.hpp"
+
12#include "H5Easy_misc.hpp"
+
13#include "H5Easy_scalar.hpp"
+
14
+
15#ifdef H5_USE_EIGEN
+
16
+
17namespace H5Easy {
+
18
+
19namespace detail {
+
20
+
21template <typename T>
+
22struct io_impl<T, typename std::enable_if<std::is_base_of<Eigen::DenseBase<T>, T>::value>::type> {
+
23 // abbreviate row-major <-> col-major conversions
+
24 template <typename S>
+
25 struct types {
+
26 using row_major = Eigen::Ref<
+
27 const Eigen::Array<typename std::decay<T>::type::Scalar,
+
28 std::decay<T>::type::RowsAtCompileTime,
+
29 std::decay<T>::type::ColsAtCompileTime,
+
30 std::decay<T>::type::ColsAtCompileTime == 1 ? Eigen::ColMajor
+
31 : Eigen::RowMajor,
+
32 std::decay<T>::type::MaxRowsAtCompileTime,
+
33 std::decay<T>::type::MaxColsAtCompileTime>,
+
34 0,
+
35 Eigen::InnerStride<1>>;
+
36
+
37 using col_major =
+
38 Eigen::Map<Eigen::Array<typename std::decay<T>::type::Scalar,
+
39 std::decay<T>::type::RowsAtCompileTime,
+
40 std::decay<T>::type::ColsAtCompileTime,
+
41 std::decay<T>::type::ColsAtCompileTime == 1 ? Eigen::ColMajor
+
42 : Eigen::RowMajor,
+
43 std::decay<T>::type::MaxRowsAtCompileTime,
+
44 std::decay<T>::type::MaxColsAtCompileTime>>;
+
45 };
+
46
+
47 // return the shape of Eigen::DenseBase<T> object as size 1 or 2 "std::vector<size_t>"
+
48 inline static std::vector<size_t> shape(const T& data) {
+
49 if (std::decay<T>::type::RowsAtCompileTime == 1) {
+
50 return {static_cast<size_t>(data.cols())};
+
51 }
+
52 if (std::decay<T>::type::ColsAtCompileTime == 1) {
+
53 return {static_cast<size_t>(data.rows())};
+
54 }
+
55 return {static_cast<size_t>(data.rows()), static_cast<size_t>(data.cols())};
+
56 }
+
57
+
58 using EigenIndex = Eigen::DenseIndex;
+
59
+
60 // get the shape of a "DataSet" as size 2 "std::vector<Eigen::Index>"
+
61 template <class D>
+
62 inline static std::vector<EigenIndex> shape(const File& file,
+
63 const std::string& path,
+
64 const D& dataset,
+
65 int RowsAtCompileTime) {
+
66 std::vector<size_t> dims = dataset.getDimensions();
+
67
+
68 if (dims.size() == 1 && RowsAtCompileTime == 1) {
+
69 return std::vector<EigenIndex>{1u, static_cast<EigenIndex>(dims[0])};
+
70 }
+
71 if (dims.size() == 1) {
+
72 return std::vector<EigenIndex>{static_cast<EigenIndex>(dims[0]), 1u};
+
73 }
+
74 if (dims.size() == 2) {
+
75 return std::vector<EigenIndex>{static_cast<EigenIndex>(dims[0]),
+
76 static_cast<EigenIndex>(dims[1])};
+
77 }
+
78
+
79 throw detail::error(file, path, "H5Easy::load: Inconsistent rank");
+
80 }
+
81
+
82 inline static DataSet dump(File& file,
+
83 const std::string& path,
+
84 const T& data,
+
85 const DumpOptions& options) {
+
86 using row_major_type = typename types<T>::row_major;
+
87 using value_type = typename std::decay<T>::type::Scalar;
+
88 row_major_type row_major(data);
+
89 DataSet dataset = initDataset<value_type>(file, path, shape(data), options);
+
90 dataset.write_raw(row_major.data());
+
91 if (options.flush()) {
+
92 file.flush();
+
93 }
+
94 return dataset;
+
95 }
+
96
+
97 inline static T load(const File& file, const std::string& path) {
+
98 DataSet dataset = file.getDataSet(path);
+
99 std::vector<typename T::Index> dims = shape(file, path, dataset, T::RowsAtCompileTime);
+
100 T data(dims[0], dims[1]);
+
101 dataset.read(data.data());
+
102 if (data.IsVectorAtCompileTime || data.IsRowMajor) {
+
103 return data;
+
104 }
+
105 using col_major = typename types<T>::col_major;
+
106 return col_major(data.data(), dims[0], dims[1]);
+
107 }
+
108
+
109 inline static Attribute dumpAttribute(File& file,
+
110 const std::string& path,
+
111 const std::string& key,
+
112 const T& data,
+
113 const DumpOptions& options) {
+
114 using row_major_type = typename types<T>::row_major;
+
115 using value_type = typename std::decay<T>::type::Scalar;
+
116 row_major_type row_major(data);
+
117 Attribute attribute = initAttribute<value_type>(file, path, key, shape(data), options);
+
118 attribute.write_raw(row_major.data());
+
119 if (options.flush()) {
+
120 file.flush();
+
121 }
+
122 return attribute;
+
123 }
+
124
+
125 inline static T loadAttribute(const File& file,
+
126 const std::string& path,
+
127 const std::string& key) {
+
128 DataSet dataset = file.getDataSet(path);
+
129 Attribute attribute = dataset.getAttribute(key);
+
130 DataSpace dataspace = attribute.getSpace();
+
131 std::vector<typename T::Index> dims = shape(file, path, dataspace, T::RowsAtCompileTime);
+
132 T data(dims[0], dims[1]);
+
133 attribute.read(data.data());
+
134 if (data.IsVectorAtCompileTime || data.IsRowMajor) {
+
135 return data;
+
136 }
+
137 using col_major = typename types<T>::col_major;
+
138 return col_major(data.data(), dims[0], dims[1]);
+
139 }
+
140};
+
141
+
142} // namespace detail
+
143} // namespace H5Easy
+
144
+
145#endif // H5_USE_EIGEN
+ + +
Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated...
Definition H5Easy.hpp:59
+
DataSet dump(File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:99
+
T loadAttribute(const File &file, const std::string &path, const std::string &key)
Load a Attribute in an open HDF5 file to an object (templated).
Definition H5Easy_public.hpp:166
+
Attribute dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) Attribute in an open HDF5 file.
Definition H5Easy_public.hpp:148
+
T load(const File &file, const std::string &path, const std::vector< size_t > &idx)
Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.
Definition H5Easy_public.hpp:138
+ + +
+
+ + + + diff --git a/_h5_easy__misc_8hpp.html b/_h5_easy__misc_8hpp.html new file mode 100644 index 000000000..1d8a9075b --- /dev/null +++ b/_h5_easy__misc_8hpp.html @@ -0,0 +1,340 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Easy_misc.hpp File Reference
+
+
+
#include "../H5Easy.hpp"
+
+Include dependency graph for H5Easy_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Namespaces

namespace  H5Easy
 Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:
 
+
+
+ + + + diff --git a/_h5_easy__misc_8hpp__dep__incl.map b/_h5_easy__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..3458f056c --- /dev/null +++ b/_h5_easy__misc_8hpp__dep__incl.map @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__misc_8hpp__dep__incl.md5 b/_h5_easy__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..b005d54cc --- /dev/null +++ b/_h5_easy__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +380f7fb4eb5f6595d0f35d2c64b08750 \ No newline at end of file diff --git a/_h5_easy__misc_8hpp__dep__incl.png b/_h5_easy__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..9b7378822 Binary files /dev/null and b/_h5_easy__misc_8hpp__dep__incl.png differ diff --git a/_h5_easy__misc_8hpp__incl.map b/_h5_easy__misc_8hpp__incl.map new file mode 100644 index 000000000..ff98b9750 --- /dev/null +++ b/_h5_easy__misc_8hpp__incl.map @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__misc_8hpp__incl.md5 b/_h5_easy__misc_8hpp__incl.md5 new file mode 100644 index 000000000..0e47db760 --- /dev/null +++ b/_h5_easy__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +0960fdb38bc0c567e41b1c504c78b71a \ No newline at end of file diff --git a/_h5_easy__misc_8hpp__incl.png b/_h5_easy__misc_8hpp__incl.png new file mode 100644 index 000000000..c4ab97716 Binary files /dev/null and b/_h5_easy__misc_8hpp__incl.png differ diff --git a/_h5_easy__misc_8hpp_source.html b/_h5_easy__misc_8hpp_source.html new file mode 100644 index 000000000..d25edef73 --- /dev/null +++ b/_h5_easy__misc_8hpp_source.html @@ -0,0 +1,270 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Easy_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include "../H5Easy.hpp"
+
12
+
13namespace H5Easy {
+
14
+
15namespace detail {
+
16
+
17// Generate error-stream and return "Exception" (not yet thrown).
+
18inline Exception error(const File& file, const std::string& path, const std::string& message) {
+
19 std::ostringstream ss;
+
20 ss << message << std::endl
+
21 << "Path: " << path << std::endl
+
22 << "Filename: " << file.getName() << std::endl;
+
23 return Exception(ss.str());
+
24}
+
25
+
26// Generate specific dump error
+
27inline Exception dump_error(File& file, const std::string& path) {
+
28 if (file.getObjectType(path) == ObjectType::Dataset) {
+
29 return error(file,
+
30 path,
+
31 "H5Easy: Dataset already exists, dump with H5Easy::DumpMode::Overwrite "
+
32 "to overwrite (with an array of the same shape).");
+
33 } else {
+
34 return error(
+
35 file,
+
36 path,
+
37 "H5Easy: path exists, but does not correspond to a Dataset. Dump not possible.");
+
38 }
+
39}
+
40
+
41// get a opened DataSet: nd-array
+
42template <class T>
+
43inline DataSet initDataset(File& file,
+
44 const std::string& path,
+
45 const std::vector<size_t>& shape,
+
46 const DumpOptions& options) {
+
47 if (!file.exist(path)) {
+
48 if (!options.compress() && !options.isChunked()) {
+
49 return file.createDataSet<T>(path, DataSpace(shape), {}, {}, true);
+
50 } else {
+
51 std::vector<hsize_t> chunks(shape.begin(), shape.end());
+
52 if (options.isChunked()) {
+
53 chunks = options.getChunkSize();
+
54 if (chunks.size() != shape.size()) {
+
55 throw error(file, path, "H5Easy::dump: Incorrect rank ChunkSize");
+
56 }
+
57 }
+ +
59 props.add(Chunking(chunks));
+
60 if (options.compress()) {
+
61 props.add(Shuffle());
+
62 props.add(Deflate(options.getCompressionLevel()));
+
63 }
+
64 return file.createDataSet<T>(path, DataSpace(shape), props, {}, true);
+
65 }
+
66 } else if (options.overwrite() && file.getObjectType(path) == ObjectType::Dataset) {
+
67 DataSet dataset = file.getDataSet(path);
+
68 if (dataset.getDimensions() != shape) {
+
69 throw error(file, path, "H5Easy::dump: Inconsistent dimensions");
+
70 }
+
71 return dataset;
+
72 }
+
73 throw dump_error(file, path);
+
74}
+
75
+
76// get a opened DataSet: scalar
+
77template <class T>
+
78inline DataSet initScalarDataset(File& file,
+
79 const std::string& path,
+
80 const T& data,
+
81 const DumpOptions& options) {
+
82 if (!file.exist(path)) {
+
83 return file.createDataSet<T>(path, DataSpace::From(data), {}, {}, true);
+
84 } else if (options.overwrite() && file.getObjectType(path) == ObjectType::Dataset) {
+
85 DataSet dataset = file.getDataSet(path);
+
86 if (dataset.getElementCount() != 1) {
+
87 throw error(file, path, "H5Easy::dump: Existing field not a scalar");
+
88 }
+
89 return dataset;
+
90 }
+
91 throw dump_error(file, path);
+
92}
+
93
+
94// get a opened Attribute: nd-array
+
95template <class T>
+
96inline Attribute initAttribute(File& file,
+
97 const std::string& path,
+
98 const std::string& key,
+
99 const std::vector<size_t>& shape,
+
100 const DumpOptions& options) {
+
101 if (!file.exist(path)) {
+
102 throw error(file, path, "H5Easy::dumpAttribute: DataSet does not exist");
+
103 }
+
104 if (file.getObjectType(path) != ObjectType::Dataset) {
+
105 throw error(file, path, "H5Easy::dumpAttribute: path not a DataSet");
+
106 }
+
107 DataSet dataset = file.getDataSet(path);
+
108 if (!dataset.hasAttribute(key)) {
+
109 return dataset.createAttribute<T>(key, DataSpace(shape));
+
110 } else if (options.overwrite()) {
+
111 Attribute attribute = dataset.getAttribute(key);
+
112 DataSpace dataspace = attribute.getSpace();
+
113 if (dataspace.getDimensions() != shape) {
+
114 throw error(file, path, "H5Easy::dumpAttribute: Inconsistent dimensions");
+
115 }
+
116 return attribute;
+
117 }
+
118 throw error(file,
+
119 path,
+
120 "H5Easy: Attribute exists, overwrite with H5Easy::DumpMode::Overwrite.");
+
121}
+
122
+
123// get a opened Attribute: scalar
+
124template <class T>
+
125inline Attribute initScalarAttribute(File& file,
+
126 const std::string& path,
+
127 const std::string& key,
+
128 const T& data,
+
129 const DumpOptions& options) {
+
130 if (!file.exist(path)) {
+
131 throw error(file, path, "H5Easy::dumpAttribute: DataSet does not exist");
+
132 }
+
133 if (file.getObjectType(path) != ObjectType::Dataset) {
+
134 throw error(file, path, "H5Easy::dumpAttribute: path not a DataSet");
+
135 }
+
136 DataSet dataset = file.getDataSet(path);
+
137 if (!dataset.hasAttribute(key)) {
+
138 return dataset.createAttribute<T>(key, DataSpace::From(data));
+
139 } else if (options.overwrite()) {
+
140 Attribute attribute = dataset.getAttribute(key);
+
141 DataSpace dataspace = attribute.getSpace();
+
142 if (dataspace.getElementCount() != 1) {
+
143 throw error(file, path, "H5Easy::dumpAttribute: Existing field not a scalar");
+
144 }
+
145 return attribute;
+
146 }
+
147 throw error(file,
+
148 path,
+
149 "H5Easy: Attribute exists, overwrite with H5Easy::DumpMode::Overwrite.");
+
150}
+
151
+
152} // namespace detail
+
153} // namespace H5Easy
+
static DataSpace From(const T &value)
Automatically deduce the DataSpace from a container/value.
Definition H5Dataspace_misc.hpp:136
+
PropertyList< PropertyType::DATASET_CREATE > DataSetCreateProps
Definition H5PropertyList.hpp:189
+
Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated...
Definition H5Easy.hpp:59
+ + +
+
+ + + + diff --git a/_h5_easy__opencv_8hpp.html b/_h5_easy__opencv_8hpp.html new file mode 100644 index 000000000..e46b2c20d --- /dev/null +++ b/_h5_easy__opencv_8hpp.html @@ -0,0 +1,342 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_opencv.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Easy_opencv.hpp File Reference
+
+
+
#include "../H5Easy.hpp"
+#include "H5Easy_misc.hpp"
+#include "H5Easy_scalar.hpp"
+
+Include dependency graph for H5Easy_opencv.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Namespaces

namespace  H5Easy
 Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:
 
+
+
+ + + + diff --git a/_h5_easy__opencv_8hpp__dep__incl.map b/_h5_easy__opencv_8hpp__dep__incl.map new file mode 100644 index 000000000..24f7b4900 --- /dev/null +++ b/_h5_easy__opencv_8hpp__dep__incl.map @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__opencv_8hpp__dep__incl.md5 b/_h5_easy__opencv_8hpp__dep__incl.md5 new file mode 100644 index 000000000..b3ee19258 --- /dev/null +++ b/_h5_easy__opencv_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +d2d11a1b106fc8d99020ad113c4bc28d \ No newline at end of file diff --git a/_h5_easy__opencv_8hpp__dep__incl.png b/_h5_easy__opencv_8hpp__dep__incl.png new file mode 100644 index 000000000..942860548 Binary files /dev/null and b/_h5_easy__opencv_8hpp__dep__incl.png differ diff --git a/_h5_easy__opencv_8hpp__incl.map b/_h5_easy__opencv_8hpp__incl.map new file mode 100644 index 000000000..b09876905 --- /dev/null +++ b/_h5_easy__opencv_8hpp__incl.map @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__opencv_8hpp__incl.md5 b/_h5_easy__opencv_8hpp__incl.md5 new file mode 100644 index 000000000..a9788bf6b --- /dev/null +++ b/_h5_easy__opencv_8hpp__incl.md5 @@ -0,0 +1 @@ +e0b808055e81d47a29310587d26669df \ No newline at end of file diff --git a/_h5_easy__opencv_8hpp__incl.png b/_h5_easy__opencv_8hpp__incl.png new file mode 100644 index 000000000..8931329d8 Binary files /dev/null and b/_h5_easy__opencv_8hpp__incl.png differ diff --git a/_h5_easy__opencv_8hpp_source.html b/_h5_easy__opencv_8hpp_source.html new file mode 100644 index 000000000..0a599a48c --- /dev/null +++ b/_h5_easy__opencv_8hpp_source.html @@ -0,0 +1,221 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_opencv.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Easy_opencv.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include "../H5Easy.hpp"
+
12#include "H5Easy_misc.hpp"
+
13#include "H5Easy_scalar.hpp"
+
14
+
15#ifdef H5_USE_OPENCV
+
16
+
17namespace H5Easy {
+
18
+
19namespace detail {
+
20
+
21template <class T>
+
22struct is_opencv: std::false_type {};
+
23template <class T>
+
24struct is_opencv<cv::Mat_<T>>: std::true_type {};
+
25
+
26template <typename T>
+
27struct io_impl<T, typename std::enable_if<is_opencv<T>::value>::type> {
+
28 inline static std::vector<size_t> shape(const T& data) {
+
29 return std::vector<size_t>{static_cast<size_t>(data.rows), static_cast<size_t>(data.cols)};
+
30 }
+
31
+
32 inline static std::vector<int> shape(const File& file,
+
33 const std::string& path,
+
34 std::vector<size_t> dims) {
+
35 if (dims.size() == 1) {
+
36 return std::vector<int>{static_cast<int>(dims[0]), 1ul};
+
37 }
+
38 if (dims.size() == 2) {
+
39 return std::vector<int>{static_cast<int>(dims[0]), static_cast<int>(dims[1])};
+
40 }
+
41
+
42 throw detail::error(file, path, "H5Easy::load: Inconsistent rank");
+
43 }
+
44
+
45 inline static DataSet dump(File& file,
+
46 const std::string& path,
+
47 const T& data,
+
48 const DumpOptions& options) {
+
49 using value_type = typename T::value_type;
+
50 DataSet dataset = initDataset<value_type>(file, path, shape(data), options);
+
51 std::vector<value_type> v(data.begin(), data.end());
+
52 dataset.write_raw(v.data());
+
53 if (options.flush()) {
+
54 file.flush();
+
55 }
+
56 return dataset;
+
57 }
+
58
+
59 inline static T load(const File& file, const std::string& path) {
+
60 using value_type = typename T::value_type;
+
61 DataSet dataset = file.getDataSet(path);
+
62 std::vector<int> dims = shape(file, path, dataset.getDimensions());
+
63 T data(dims[0], dims[1]);
+
64 dataset.read(reinterpret_cast<value_type*>(data.data));
+
65 return data;
+
66 }
+
67
+
68 inline static Attribute dumpAttribute(File& file,
+
69 const std::string& path,
+
70 const std::string& key,
+
71 const T& data,
+
72 const DumpOptions& options) {
+
73 using value_type = typename T::value_type;
+
74 Attribute attribute = initAttribute<value_type>(file, path, key, shape(data), options);
+
75 std::vector<value_type> v(data.begin(), data.end());
+
76 attribute.write_raw(v.data());
+
77 if (options.flush()) {
+
78 file.flush();
+
79 }
+
80 return attribute;
+
81 }
+
82
+
83 inline static T loadAttribute(const File& file,
+
84 const std::string& path,
+
85 const std::string& key) {
+
86 using value_type = typename T::value_type;
+
87 DataSet dataset = file.getDataSet(path);
+
88 Attribute attribute = dataset.getAttribute(key);
+
89 DataSpace dataspace = attribute.getSpace();
+
90 std::vector<int> dims = shape(file, path, dataspace.getDimensions());
+
91 T data(dims[0], dims[1]);
+
92 attribute.read(reinterpret_cast<value_type*>(data.data));
+
93 return data;
+
94 }
+
95};
+
96
+
97} // namespace detail
+
98} // namespace H5Easy
+
99
+
100#endif // H5_USE_OPENCV
+ + +
Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated...
Definition H5Easy.hpp:59
+
DataSet dump(File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:99
+
T loadAttribute(const File &file, const std::string &path, const std::string &key)
Load a Attribute in an open HDF5 file to an object (templated).
Definition H5Easy_public.hpp:166
+
Attribute dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) Attribute in an open HDF5 file.
Definition H5Easy_public.hpp:148
+
T load(const File &file, const std::string &path, const std::vector< size_t > &idx)
Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.
Definition H5Easy_public.hpp:138
+ + +
+
+ + + + diff --git a/_h5_easy__public_8hpp.html b/_h5_easy__public_8hpp.html new file mode 100644 index 000000000..4bd846c25 --- /dev/null +++ b/_h5_easy__public_8hpp.html @@ -0,0 +1,394 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_public.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Easy_public.hpp File Reference
+
+
+
#include "../H5Easy.hpp"
+
+Include dependency graph for H5Easy_public.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Namespaces

namespace  H5Easy
 Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

size_t H5Easy::getSize (const File &file, const std::string &path)
 Get the size of an existing DataSet in an open HDF5 file.
 
std::vector< size_t > H5Easy::getShape (const File &file, const std::string &path)
 Get the shape of an existing DataSet in an readable file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, const DumpOptions &options)
 Write object (templated) to a (new) DataSet in an open HDF5 file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
 Write object (templated) to a (new) DataSet in an open HDF5 file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, const std::vector< size_t > &idx, const DumpOptions &options)
 Write a scalar to a (new, extendible) DataSet in an open HDF5 file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, const std::initializer_list< size_t > &idx, const DumpOptions &options)
 Write a scalar to a (new, extendible) DataSet in an open HDF5 file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, const std::vector< size_t > &idx)
 Write a scalar to a (new, extendible) DataSet in an open HDF5 file.
 
template<class T >
DataSet H5Easy::dump (File &file, const std::string &path, const T &data, const std::initializer_list< size_t > &idx)
 Write a scalar to a (new, extendable) DataSet in an open HDF5 file.
 
template<class T >
H5Easy::load (const File &file, const std::string &path, const std::vector< size_t > &idx)
 Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.
 
template<class T >
H5Easy::load (const File &file, const std::string &path)
 Load a DataSet in an open HDF5 file to an object (templated).
 
template<class T >
Attribute H5Easy::dumpAttribute (File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)
 Write object (templated) to a (new) Attribute in an open HDF5 file.
 
template<class T >
Attribute H5Easy::dumpAttribute (File &file, const std::string &path, const std::string &key, const T &data, const DumpOptions &options)
 Write object (templated) to a (new) Attribute in an open HDF5 file.
 
template<class T >
H5Easy::loadAttribute (const File &file, const std::string &path, const std::string &key)
 Load a Attribute in an open HDF5 file to an object (templated).
 
+
+
+ + + + diff --git a/_h5_easy__public_8hpp.js b/_h5_easy__public_8hpp.js new file mode 100644 index 000000000..66e7eafc1 --- /dev/null +++ b/_h5_easy__public_8hpp.js @@ -0,0 +1,16 @@ +var _h5_easy__public_8hpp = +[ + [ "dump", "_h5_easy__public_8hpp.html#a7614d902c22b74a18fb29c42599a6785", null ], + [ "dump", "_h5_easy__public_8hpp.html#a2e96c80337866b79777e52faa7d692cc", null ], + [ "dump", "_h5_easy__public_8hpp.html#a5f0af85e0fe3ac03af665dae2a3e9e16", null ], + [ "dump", "_h5_easy__public_8hpp.html#a727340de29b032fa860412f6a69f215c", null ], + [ "dump", "_h5_easy__public_8hpp.html#a26be50f813db9257d77b0c25adfdf726", null ], + [ "dump", "_h5_easy__public_8hpp.html#a3d74bc6b96493dbef4fb3b4e237cff88", null ], + [ "dumpAttribute", "_h5_easy__public_8hpp.html#a4a395eb642d1a2d5055282dacf32ee94", null ], + [ "dumpAttribute", "_h5_easy__public_8hpp.html#a85cad90855dbb23ba985be58b447a6b2", null ], + [ "getShape", "_h5_easy__public_8hpp.html#aa178d03fd7b8d435b5b41f613c1eaa8b", null ], + [ "getSize", "_h5_easy__public_8hpp.html#a225c8cffbe78d15254ecde0c8a42958b", null ], + [ "load", "_h5_easy__public_8hpp.html#a35bd0e824fe3dca2e2d9f9b5e42a18aa", null ], + [ "load", "_h5_easy__public_8hpp.html#a97ce3122b92fcf8322ed7e8c460c6862", null ], + [ "loadAttribute", "_h5_easy__public_8hpp.html#a6dc2a2016da5196913ab7036700006fa", null ] +]; \ No newline at end of file diff --git a/_h5_easy__public_8hpp__dep__incl.map b/_h5_easy__public_8hpp__dep__incl.map new file mode 100644 index 000000000..5ea2fd695 --- /dev/null +++ b/_h5_easy__public_8hpp__dep__incl.map @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__public_8hpp__dep__incl.md5 b/_h5_easy__public_8hpp__dep__incl.md5 new file mode 100644 index 000000000..1615ff909 --- /dev/null +++ b/_h5_easy__public_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +b0b2004c83f36dc92a7f4a92743392f5 \ No newline at end of file diff --git a/_h5_easy__public_8hpp__dep__incl.png b/_h5_easy__public_8hpp__dep__incl.png new file mode 100644 index 000000000..13496863f Binary files /dev/null and b/_h5_easy__public_8hpp__dep__incl.png differ diff --git a/_h5_easy__public_8hpp__incl.map b/_h5_easy__public_8hpp__incl.map new file mode 100644 index 000000000..11c222e07 --- /dev/null +++ b/_h5_easy__public_8hpp__incl.map @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__public_8hpp__incl.md5 b/_h5_easy__public_8hpp__incl.md5 new file mode 100644 index 000000000..f4c29f3be --- /dev/null +++ b/_h5_easy__public_8hpp__incl.md5 @@ -0,0 +1 @@ +98c11453c9c29aa56def48332cccab3b \ No newline at end of file diff --git a/_h5_easy__public_8hpp__incl.png b/_h5_easy__public_8hpp__incl.png new file mode 100644 index 000000000..d542a6eec Binary files /dev/null and b/_h5_easy__public_8hpp__incl.png differ diff --git a/_h5_easy__public_8hpp_source.html b/_h5_easy__public_8hpp_source.html new file mode 100644 index 000000000..36af9cf38 --- /dev/null +++ b/_h5_easy__public_8hpp_source.html @@ -0,0 +1,365 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_public.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Easy_public.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include "../H5Easy.hpp"
+
12
+
13namespace H5Easy {
+
14
+
+
15inline Compression::Compression(bool enable) {
+
16 if (enable) {
+
17 m_compression_level = 9;
+
18 } else {
+
19 m_compression_level = 0;
+
20 }
+
21}
+
+
22
+
23template <class T>
+
+ +
25 : m_compression_level(static_cast<unsigned>(level)) {}
+
+
26
+
+
27inline unsigned Compression::get() const {
+
28 return m_compression_level;
+
29}
+
+
30
+
+
31inline void DumpOptions::set(DumpMode mode) {
+
32 m_overwrite = static_cast<bool>(mode);
+
33}
+
+
34
+
+
35inline void DumpOptions::set(Flush mode) {
+
36 m_flush = static_cast<bool>(mode);
+
37}
+
+
38
+
+
39inline void DumpOptions::set(const Compression& level) {
+
40 m_compression_level = level.get();
+
41}
+
+
42
+
43template <class T, class... Args>
+
+
44inline void DumpOptions::set(T arg, Args... args) {
+
45 set(arg);
+
46 set(args...);
+
47}
+
+
48
+
49template <class T>
+
+
50inline void DumpOptions::setChunkSize(const std::vector<T>& shape) {
+
51 m_chunk_size = std::vector<hsize_t>(shape.begin(), shape.end());
+
52}
+
+
53
+
+
54inline void DumpOptions::setChunkSize(std::initializer_list<size_t> shape) {
+
55 m_chunk_size = std::vector<hsize_t>(shape.begin(), shape.end());
+
56}
+
+
57
+
+
58inline bool DumpOptions::overwrite() const {
+
59 return m_overwrite;
+
60}
+
+
61
+
+
62inline bool DumpOptions::flush() const {
+
63 return m_flush;
+
64}
+
+
65
+
+
66inline bool DumpOptions::compress() const {
+
67 return m_compression_level > 0;
+
68}
+
+
69
+
+
70inline unsigned DumpOptions::getCompressionLevel() const {
+
71 return m_compression_level;
+
72}
+
+
73
+
+
74inline bool DumpOptions::isChunked() const {
+
75 return m_chunk_size.size() > 0;
+
76}
+
+
77
+
+
78inline std::vector<hsize_t> DumpOptions::getChunkSize() const {
+
79 return m_chunk_size;
+
80}
+
+
81
+
+
82inline size_t getSize(const File& file, const std::string& path) {
+
83 return file.getDataSet(path).getElementCount();
+
84}
+
+
85
+
+
86inline std::vector<size_t> getShape(const File& file, const std::string& path) {
+
87 return file.getDataSet(path).getDimensions();
+
88}
+
+
89
+
90template <class T>
+
+
91inline DataSet dump(File& file,
+
92 const std::string& path,
+
93 const T& data,
+
94 const DumpOptions& options) {
+
95 return detail::io_impl<T>::dump(file, path, data, options);
+
96}
+
+
97
+
98template <class T>
+
+
99inline DataSet dump(File& file, const std::string& path, const T& data, DumpMode mode) {
+
100 return detail::io_impl<T>::dump(file, path, data, DumpOptions(mode));
+
101}
+
+
102
+
103template <class T>
+
+
104inline DataSet dump(File& file,
+
105 const std::string& path,
+
106 const T& data,
+
107 const std::vector<size_t>& idx,
+
108 const DumpOptions& options) {
+
109 return detail::io_impl<T>::dump_extend(file, path, data, idx, options);
+
110}
+
+
111
+
112template <class T>
+
+
113inline DataSet dump(File& file,
+
114 const std::string& path,
+
115 const T& data,
+
116 const std::initializer_list<size_t>& idx,
+
117 const DumpOptions& options) {
+
118 return detail::io_impl<T>::dump_extend(file, path, data, idx, options);
+
119}
+
+
120
+
121template <class T>
+
+
122inline DataSet dump(File& file,
+
123 const std::string& path,
+
124 const T& data,
+
125 const std::vector<size_t>& idx) {
+
126 return detail::io_impl<T>::dump_extend(file, path, data, idx, DumpOptions());
+
127}
+
+
128
+
129template <class T>
+
+
130inline DataSet dump(File& file,
+
131 const std::string& path,
+
132 const T& data,
+
133 const std::initializer_list<size_t>& idx) {
+
134 return detail::io_impl<T>::dump_extend(file, path, data, idx, DumpOptions());
+
135}
+
+
136
+
137template <class T>
+
+
138inline T load(const File& file, const std::string& path, const std::vector<size_t>& idx) {
+
139 return detail::io_impl<T>::load_part(file, path, idx);
+
140}
+
+
141
+
142template <class T>
+
+
143inline T load(const File& file, const std::string& path) {
+
144 return detail::io_impl<T>::load(file, path);
+
145}
+
+
146
+
147template <class T>
+
+ +
149 const std::string& path,
+
150 const std::string& key,
+
151 const T& data,
+
152 DumpMode mode) {
+
153 return detail::io_impl<T>::dumpAttribute(file, path, key, data, DumpOptions(mode));
+
154}
+
+
155
+
156template <class T>
+
+ +
158 const std::string& path,
+
159 const std::string& key,
+
160 const T& data,
+
161 const DumpOptions& options) {
+
162 return detail::io_impl<T>::dumpAttribute(file, path, key, data, options);
+
163}
+
+
164
+
165template <class T>
+
+
166inline T loadAttribute(const File& file, const std::string& path, const std::string& key) {
+
167 return detail::io_impl<T>::loadAttribute(file, path, key);
+
168}
+
+
169
+
170} // namespace H5Easy
+
Signal to set compression level for written DataSets.
Definition H5Easy.hpp:89
+
unsigned get() const
Return compression level.
Definition H5Easy_public.hpp:27
+
Compression(bool enable=true)
Enable compression with the highest compression level (9). or disable compression (set compression le...
Definition H5Easy_public.hpp:15
+
Define options for dumping data.
Definition H5Easy.hpp:121
+
bool flush() const
Get flush-mode.
Definition H5Easy_public.hpp:62
+
bool isChunked() const
Get chunking mode: true is manually set, false if chunk-size should be computed automatically.
Definition H5Easy_public.hpp:74
+
std::vector< hsize_t > getChunkSize() const
Get chunk size. Use DumpOptions::getChunkSize to check if chunk-size should be automatically computed...
Definition H5Easy_public.hpp:78
+
unsigned getCompressionLevel() const
Get compression level.
Definition H5Easy_public.hpp:70
+
bool overwrite() const
Get overwrite-mode.
Definition H5Easy_public.hpp:58
+
void set(DumpMode mode)
Overwrite H5Easy::DumpMode setting.
Definition H5Easy_public.hpp:31
+
bool compress() const
Get compress-mode.
Definition H5Easy_public.hpp:66
+
void setChunkSize(const std::vector< T > &shape)
Set chunk-size. If the input is rank (size) zero, automatic chunking is enabled.
Definition H5Easy_public.hpp:50
+
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
+
Class representing a dataset.
Definition H5DataSet.hpp:30
+
size_t getElementCount() const
Get the total number of elements in the current dataset. E.g. 2x2x2 matrix has size 8....
Definition H5DataSet.hpp:87
+
std::vector< size_t > getDimensions() const
Get the dimensions of the whole DataSet. This is a shorthand for getSpace().getDimensions()
Definition H5DataSet.hpp:78
+
File class.
Definition H5File.hpp:24
+
DataSet getDataSet(const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps::Default()) const
get an existing dataset in the current file
Definition H5Node_traits_misc.hpp:120
+
Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated...
Definition H5Easy.hpp:59
+
size_t getSize(const File &file, const std::string &path)
Get the size of an existing DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:82
+
DataSet dump(File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:99
+
DumpMode
Write mode for DataSets.
Definition H5Easy.hpp:75
+
T loadAttribute(const File &file, const std::string &path, const std::string &key)
Load a Attribute in an open HDF5 file to an object (templated).
Definition H5Easy_public.hpp:166
+
Attribute dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) Attribute in an open HDF5 file.
Definition H5Easy_public.hpp:148
+
T load(const File &file, const std::string &path, const std::vector< size_t > &idx)
Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.
Definition H5Easy_public.hpp:138
+
std::vector< size_t > getShape(const File &file, const std::string &path)
Get the shape of an existing DataSet in an readable file.
Definition H5Easy_public.hpp:86
+
Flush
Signal to enable/disable automatic flushing after write operations.
Definition H5Easy.hpp:82
+
+
+ + + + diff --git a/_h5_easy__scalar_8hpp.html b/_h5_easy__scalar_8hpp.html new file mode 100644 index 000000000..dcb33cdf2 --- /dev/null +++ b/_h5_easy__scalar_8hpp.html @@ -0,0 +1,341 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_scalar.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Easy_scalar.hpp File Reference
+
+
+
#include "../H5Easy.hpp"
+#include "H5Easy_misc.hpp"
+
+Include dependency graph for H5Easy_scalar.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Namespaces

namespace  H5Easy
 Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:
 
+
+
+ + + + diff --git a/_h5_easy__scalar_8hpp__dep__incl.map b/_h5_easy__scalar_8hpp__dep__incl.map new file mode 100644 index 000000000..197ae7f16 --- /dev/null +++ b/_h5_easy__scalar_8hpp__dep__incl.map @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__scalar_8hpp__dep__incl.md5 b/_h5_easy__scalar_8hpp__dep__incl.md5 new file mode 100644 index 000000000..5b7358540 --- /dev/null +++ b/_h5_easy__scalar_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +ddae0cb139d0255e7aa71c55ac2ba01c \ No newline at end of file diff --git a/_h5_easy__scalar_8hpp__dep__incl.png b/_h5_easy__scalar_8hpp__dep__incl.png new file mode 100644 index 000000000..c09e41db5 Binary files /dev/null and b/_h5_easy__scalar_8hpp__dep__incl.png differ diff --git a/_h5_easy__scalar_8hpp__incl.map b/_h5_easy__scalar_8hpp__incl.map new file mode 100644 index 000000000..348f7d512 --- /dev/null +++ b/_h5_easy__scalar_8hpp__incl.map @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__scalar_8hpp__incl.md5 b/_h5_easy__scalar_8hpp__incl.md5 new file mode 100644 index 000000000..7acafe09e --- /dev/null +++ b/_h5_easy__scalar_8hpp__incl.md5 @@ -0,0 +1 @@ +c137ccfa3a457ce90af1f0c9adc994c9 \ No newline at end of file diff --git a/_h5_easy__scalar_8hpp__incl.png b/_h5_easy__scalar_8hpp__incl.png new file mode 100644 index 000000000..5d5f25f86 Binary files /dev/null and b/_h5_easy__scalar_8hpp__incl.png differ diff --git a/_h5_easy__scalar_8hpp_source.html b/_h5_easy__scalar_8hpp_source.html new file mode 100644 index 000000000..e16606327 --- /dev/null +++ b/_h5_easy__scalar_8hpp_source.html @@ -0,0 +1,254 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_scalar.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Easy_scalar.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include "../H5Easy.hpp"
+
12#include "H5Easy_misc.hpp"
+
13
+
14namespace H5Easy {
+
15
+
16namespace detail {
+
17
+
18/*
+
19Base template for partial specialization: the fallback if specialized templates don't match.
+
20Used e.g. for scalars.
+
21*/
+
22template <typename T, typename = void>
+
23struct io_impl {
+
24 inline static DataSet dump(File& file,
+
25 const std::string& path,
+
26 const T& data,
+
27 const DumpOptions& options) {
+
28 DataSet dataset = initScalarDataset(file, path, data, options);
+
29 dataset.write(data);
+
30 if (options.flush()) {
+
31 file.flush();
+
32 }
+
33 return dataset;
+
34 }
+
35
+
36 inline static T load(const File& file, const std::string& path) {
+
37 DataSet dataset = file.getDataSet(path);
+
38 T data;
+
39 dataset.read(data);
+
40 return data;
+
41 }
+
42
+
43 inline static Attribute dumpAttribute(File& file,
+
44 const std::string& path,
+
45 const std::string& key,
+
46 const T& data,
+
47 const DumpOptions& options) {
+
48 Attribute attribute = initScalarAttribute(file, path, key, data, options);
+
49 attribute.write(data);
+
50 if (options.flush()) {
+
51 file.flush();
+
52 }
+
53 return attribute;
+
54 }
+
55
+
56 inline static T loadAttribute(const File& file,
+
57 const std::string& path,
+
58 const std::string& key) {
+
59 DataSet dataset = file.getDataSet(path);
+
60 Attribute attribute = dataset.getAttribute(key);
+
61 T data;
+
62 attribute.read(data);
+
63 return data;
+
64 }
+
65
+
66 inline static DataSet dump_extend(File& file,
+
67 const std::string& path,
+
68 const T& data,
+
69 const std::vector<size_t>& idx,
+
70 const DumpOptions& options) {
+
71 std::vector<size_t> ones(idx.size(), 1);
+
72
+
73 if (file.exist(path)) {
+
74 DataSet dataset = file.getDataSet(path);
+
75 std::vector<size_t> dims = dataset.getDimensions();
+
76 std::vector<size_t> shape = dims;
+
77 if (dims.size() != idx.size()) {
+
78 throw detail::error(
+
79 file,
+
80 path,
+
81 "H5Easy::dump: Dimension of the index and the existing field do not match");
+
82 }
+
83 for (size_t i = 0; i < dims.size(); ++i) {
+
84 shape[i] = std::max(dims[i], idx[i] + 1);
+
85 }
+
86 if (shape != dims) {
+
87 dataset.resize(shape);
+
88 }
+
89 dataset.select(idx, ones).write(data);
+
90 if (options.flush()) {
+
91 file.flush();
+
92 }
+
93 return dataset;
+
94 }
+
95
+
96 std::vector<size_t> shape = idx;
+
97 const size_t unlim = DataSpace::UNLIMITED;
+
98 std::vector<size_t> unlim_shape(idx.size(), unlim);
+
99 std::vector<hsize_t> chunks(idx.size(), 10);
+
100 if (options.isChunked()) {
+
101 chunks = options.getChunkSize();
+
102 if (chunks.size() != idx.size()) {
+
103 throw error(file, path, "H5Easy::dump: Incorrect dimension ChunkSize");
+
104 }
+
105 }
+
106 for (size_t& i: shape) {
+
107 i++;
+
108 }
+
109 DataSpace dataspace = DataSpace(shape, unlim_shape);
+
110 DataSetCreateProps props;
+
111 props.add(Chunking(chunks));
+
112 DataSet dataset = file.createDataSet(path, dataspace, AtomicType<T>(), props, {}, true);
+
113 dataset.select(idx, ones).write(data);
+
114 if (options.flush()) {
+
115 file.flush();
+
116 }
+
117 return dataset;
+
118 }
+
119
+
120 inline static T load_part(const File& file,
+
121 const std::string& path,
+
122 const std::vector<size_t>& idx) {
+
123 std::vector<size_t> ones(idx.size(), 1);
+
124 DataSet dataset = file.getDataSet(path);
+
125 T data;
+
126 dataset.select(idx, ones).read(data);
+
127 return data;
+
128 }
+
129};
+
130
+
131} // namespace detail
+
132} // namespace H5Easy
+ +
static const size_t UNLIMITED
Magic value to specify that a DataSpace can grow without limit.
Definition H5DataSpace.hpp:41
+
PropertyList< PropertyType::DATASET_CREATE > DataSetCreateProps
Definition H5PropertyList.hpp:189
+
Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated...
Definition H5Easy.hpp:59
+
DataSet dump(File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:99
+
T loadAttribute(const File &file, const std::string &path, const std::string &key)
Load a Attribute in an open HDF5 file to an object (templated).
Definition H5Easy_public.hpp:166
+
Attribute dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) Attribute in an open HDF5 file.
Definition H5Easy_public.hpp:148
+
T load(const File &file, const std::string &path, const std::vector< size_t > &idx)
Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.
Definition H5Easy_public.hpp:138
+ + +
+
+ + + + diff --git a/_h5_easy__vector_8hpp.html b/_h5_easy__vector_8hpp.html new file mode 100644 index 000000000..13ed3185f --- /dev/null +++ b/_h5_easy__vector_8hpp.html @@ -0,0 +1,342 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_vector.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Easy_vector.hpp File Reference
+
+
+
#include "../H5Easy.hpp"
+#include "H5Easy_misc.hpp"
+#include "H5Easy_scalar.hpp"
+
+Include dependency graph for H5Easy_vector.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Namespaces

namespace  H5Easy
 Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:
 
+
+
+ + + + diff --git a/_h5_easy__vector_8hpp__dep__incl.map b/_h5_easy__vector_8hpp__dep__incl.map new file mode 100644 index 000000000..ce359c1f3 --- /dev/null +++ b/_h5_easy__vector_8hpp__dep__incl.map @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__vector_8hpp__dep__incl.md5 b/_h5_easy__vector_8hpp__dep__incl.md5 new file mode 100644 index 000000000..3d3780d94 --- /dev/null +++ b/_h5_easy__vector_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +615fd5c7590e99c663585bec031c9c09 \ No newline at end of file diff --git a/_h5_easy__vector_8hpp__dep__incl.png b/_h5_easy__vector_8hpp__dep__incl.png new file mode 100644 index 000000000..dc28c4f87 Binary files /dev/null and b/_h5_easy__vector_8hpp__dep__incl.png differ diff --git a/_h5_easy__vector_8hpp__incl.map b/_h5_easy__vector_8hpp__incl.map new file mode 100644 index 000000000..df6e8e9ce --- /dev/null +++ b/_h5_easy__vector_8hpp__incl.map @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__vector_8hpp__incl.md5 b/_h5_easy__vector_8hpp__incl.md5 new file mode 100644 index 000000000..2fae390ce --- /dev/null +++ b/_h5_easy__vector_8hpp__incl.md5 @@ -0,0 +1 @@ +3e51a43a3a3d74f4fb06153c43d33539 \ No newline at end of file diff --git a/_h5_easy__vector_8hpp__incl.png b/_h5_easy__vector_8hpp__incl.png new file mode 100644 index 000000000..5a6603e74 Binary files /dev/null and b/_h5_easy__vector_8hpp__incl.png differ diff --git a/_h5_easy__vector_8hpp_source.html b/_h5_easy__vector_8hpp_source.html new file mode 100644 index 000000000..b81f5c365 --- /dev/null +++ b/_h5_easy__vector_8hpp_source.html @@ -0,0 +1,200 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_vector.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Easy_vector.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include "../H5Easy.hpp"
+
12#include "H5Easy_misc.hpp"
+
13#include "H5Easy_scalar.hpp"
+
14
+
15namespace H5Easy {
+
16
+
17namespace detail {
+
18
+
19template <class T>
+
20struct is_vector: std::false_type {};
+
21template <class T>
+
22struct is_vector<std::vector<T>>: std::true_type {};
+
23
+
24using HighFive::details::inspector;
+
25
+
26template <typename T>
+
27struct io_impl<T, typename std::enable_if<is_vector<T>::value>::type> {
+
28 inline static DataSet dump(File& file,
+
29 const std::string& path,
+
30 const T& data,
+
31 const DumpOptions& options) {
+
32 using value_type = typename inspector<T>::base_type;
+
33 auto dims = inspector<T>::getDimensions(data);
+
34 DataSet dataset = initDataset<value_type>(file,
+
35 path,
+
36 std::vector<size_t>(dims.begin(), dims.end()),
+
37 options);
+
38 dataset.write(data);
+
39 if (options.flush()) {
+
40 file.flush();
+
41 }
+
42 return dataset;
+
43 }
+
44
+
45 inline static T load(const File& file, const std::string& path) {
+
46 DataSet dataset = file.getDataSet(path);
+
47 T data;
+
48 dataset.read(data);
+
49 return data;
+
50 }
+
51
+
52 inline static Attribute dumpAttribute(File& file,
+
53 const std::string& path,
+
54 const std::string& key,
+
55 const T& data,
+
56 const DumpOptions& options) {
+
57 using value_type = typename inspector<T>::base_type;
+
58 auto dims = inspector<T>::getDimensions(data);
+
59 std::vector<size_t> shape(dims.begin(), dims.end());
+
60 Attribute attribute = initAttribute<value_type>(file, path, key, shape, options);
+
61 attribute.write(data);
+
62 if (options.flush()) {
+
63 file.flush();
+
64 }
+
65 return attribute;
+
66 }
+
67
+
68 inline static T loadAttribute(const File& file,
+
69 const std::string& path,
+
70 const std::string& key) {
+
71 DataSet dataset = file.getDataSet(path);
+
72 Attribute attribute = dataset.getAttribute(key);
+
73 T data;
+
74 attribute.read(data);
+
75 return data;
+
76 }
+
77};
+
78
+
79} // namespace detail
+
80} // namespace H5Easy
+ + +
Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated...
Definition H5Easy.hpp:59
+
DataSet dump(File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:99
+
T loadAttribute(const File &file, const std::string &path, const std::string &key)
Load a Attribute in an open HDF5 file to an object (templated).
Definition H5Easy_public.hpp:166
+
Attribute dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) Attribute in an open HDF5 file.
Definition H5Easy_public.hpp:148
+
T load(const File &file, const std::string &path, const std::vector< size_t > &idx)
Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.
Definition H5Easy_public.hpp:138
+ +
+
+ + + + diff --git a/_h5_easy__xtensor_8hpp.html b/_h5_easy__xtensor_8hpp.html new file mode 100644 index 000000000..26621760f --- /dev/null +++ b/_h5_easy__xtensor_8hpp.html @@ -0,0 +1,342 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_xtensor.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Easy_xtensor.hpp File Reference
+
+
+
#include "../H5Easy.hpp"
+#include "H5Easy_misc.hpp"
+#include "H5Easy_scalar.hpp"
+
+Include dependency graph for H5Easy_xtensor.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Namespaces

namespace  H5Easy
 Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:
 
+
+
+ + + + diff --git a/_h5_easy__xtensor_8hpp__dep__incl.map b/_h5_easy__xtensor_8hpp__dep__incl.map new file mode 100644 index 000000000..848663254 --- /dev/null +++ b/_h5_easy__xtensor_8hpp__dep__incl.map @@ -0,0 +1,33 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__xtensor_8hpp__dep__incl.md5 b/_h5_easy__xtensor_8hpp__dep__incl.md5 new file mode 100644 index 000000000..9f0ec6880 --- /dev/null +++ b/_h5_easy__xtensor_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +d654a8c0fd8ca7151adacef286398864 \ No newline at end of file diff --git a/_h5_easy__xtensor_8hpp__dep__incl.png b/_h5_easy__xtensor_8hpp__dep__incl.png new file mode 100644 index 000000000..81757c8d7 Binary files /dev/null and b/_h5_easy__xtensor_8hpp__dep__incl.png differ diff --git a/_h5_easy__xtensor_8hpp__incl.map b/_h5_easy__xtensor_8hpp__incl.map new file mode 100644 index 000000000..a6e7b629e --- /dev/null +++ b/_h5_easy__xtensor_8hpp__incl.map @@ -0,0 +1,178 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_easy__xtensor_8hpp__incl.md5 b/_h5_easy__xtensor_8hpp__incl.md5 new file mode 100644 index 000000000..32fdacfe1 --- /dev/null +++ b/_h5_easy__xtensor_8hpp__incl.md5 @@ -0,0 +1 @@ +18a7f4c5505222a42fa18c55a90e9a73 \ No newline at end of file diff --git a/_h5_easy__xtensor_8hpp__incl.png b/_h5_easy__xtensor_8hpp__incl.png new file mode 100644 index 000000000..bc79cb492 Binary files /dev/null and b/_h5_easy__xtensor_8hpp__incl.png differ diff --git a/_h5_easy__xtensor_8hpp_source.html b/_h5_easy__xtensor_8hpp_source.html new file mode 100644 index 000000000..0579473b5 --- /dev/null +++ b/_h5_easy__xtensor_8hpp_source.html @@ -0,0 +1,205 @@ + + + + + + + +HighFive: highfive/h5easy_bits/H5Easy_xtensor.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Easy_xtensor.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include "../H5Easy.hpp"
+
12#include "H5Easy_misc.hpp"
+
13#include "H5Easy_scalar.hpp"
+
14
+
15#ifdef H5_USE_XTENSOR
+
16
+
17namespace H5Easy {
+
18
+
19namespace detail {
+
20
+
21template <typename T>
+
22struct io_impl<T, typename std::enable_if<xt::is_xexpression<T>::value>::type> {
+
23 inline static std::vector<size_t> shape(const T& data) {
+
24 return std::vector<size_t>(data.shape().cbegin(), data.shape().cend());
+
25 }
+
26
+
27 inline static DataSet dump(File& file,
+
28 const std::string& path,
+
29 const T& data,
+
30 const DumpOptions& options) {
+
31 using value_type = typename std::decay_t<T>::value_type;
+
32 DataSet dataset = initDataset<value_type>(file, path, shape(data), options);
+
33 dataset.write_raw(data.data());
+
34 if (options.flush()) {
+
35 file.flush();
+
36 }
+
37 return dataset;
+
38 }
+
39
+
40 inline static T load(const File& file, const std::string& path) {
+
41 static_assert(
+
42 xt::has_data_interface<T>::value,
+
43 "Cannot load to xt::xfunction or xt::xgenerator, use e.g. xt::xtensor or xt::xarray");
+
44 DataSet dataset = file.getDataSet(path);
+
45 std::vector<size_t> dims = dataset.getDimensions();
+
46 T data = T::from_shape(dims);
+
47 dataset.read(data.data());
+
48 return data;
+
49 }
+
50
+
51 inline static Attribute dumpAttribute(File& file,
+
52 const std::string& path,
+
53 const std::string& key,
+
54 const T& data,
+
55 const DumpOptions& options) {
+
56 using value_type = typename std::decay_t<T>::value_type;
+
57 Attribute attribute = initAttribute<value_type>(file, path, key, shape(data), options);
+
58 attribute.write_raw(data.data());
+
59 if (options.flush()) {
+
60 file.flush();
+
61 }
+
62 return attribute;
+
63 }
+
64
+
65 inline static T loadAttribute(const File& file,
+
66 const std::string& path,
+
67 const std::string& key) {
+
68 static_assert(
+
69 xt::has_data_interface<T>::value,
+
70 "Cannot load to xt::xfunction or xt::xgenerator, use e.g. xt::xtensor or xt::xarray");
+
71 DataSet dataset = file.getDataSet(path);
+
72 Attribute attribute = dataset.getAttribute(key);
+
73 DataSpace dataspace = attribute.getSpace();
+
74 std::vector<size_t> dims = dataspace.getDimensions();
+
75 T data = T::from_shape(dims);
+
76 attribute.read(data.data());
+
77 return data;
+
78 }
+
79};
+
80
+
81} // namespace detail
+
82} // namespace H5Easy
+
83
+
84#endif // H5_USE_XTENSOR
+ + +
Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated...
Definition H5Easy.hpp:59
+
DataSet dump(File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:99
+
T loadAttribute(const File &file, const std::string &path, const std::string &key)
Load a Attribute in an open HDF5 file to an object (templated).
Definition H5Easy_public.hpp:166
+
Attribute dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) Attribute in an open HDF5 file.
Definition H5Easy_public.hpp:148
+
T load(const File &file, const std::string &path, const std::vector< size_t > &idx)
Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.
Definition H5Easy_public.hpp:138
+ + +
+
+ + + + diff --git a/_h5_exception_8hpp.html b/_h5_exception_8hpp.html new file mode 100644 index 000000000..a56960e4d --- /dev/null +++ b/_h5_exception_8hpp.html @@ -0,0 +1,324 @@ + + + + + + + +HighFive: highfive/H5Exception.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Exception.hpp File Reference
+
+
+
#include <memory>
+#include <stdexcept>
+#include <string>
+#include <H5Ipublic.h>
+#include "bits/H5Exception_misc.hpp"
+
+Include dependency graph for H5Exception.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  HighFive::Exception
 Basic HighFive Exception class. More...
 
class  HighFive::ObjectException
 Exception specific to HighFive Object interface. More...
 
class  HighFive::DataTypeException
 Exception specific to HighFive DataType interface. More...
 
class  HighFive::FileException
 Exception specific to HighFive File interface. More...
 
class  HighFive::DataSpaceException
 Exception specific to HighFive DataSpace interface. More...
 
class  HighFive::AttributeException
 Exception specific to HighFive Attribute interface. More...
 
class  HighFive::DataSetException
 Exception specific to HighFive DataSet interface. More...
 
class  HighFive::GroupException
 Exception specific to HighFive Group interface. More...
 
class  HighFive::PropertyException
 Exception specific to HighFive Property interface. More...
 
class  HighFive::ReferenceException
 Exception specific to HighFive Reference interface. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_exception_8hpp.js b/_h5_exception_8hpp.js new file mode 100644 index 000000000..6b48a6829 --- /dev/null +++ b/_h5_exception_8hpp.js @@ -0,0 +1,13 @@ +var _h5_exception_8hpp = +[ + [ "HighFive::Exception", "class_high_five_1_1_exception.html", "class_high_five_1_1_exception" ], + [ "HighFive::ObjectException", "class_high_five_1_1_object_exception.html", "class_high_five_1_1_object_exception" ], + [ "HighFive::DataTypeException", "class_high_five_1_1_data_type_exception.html", "class_high_five_1_1_data_type_exception" ], + [ "HighFive::FileException", "class_high_five_1_1_file_exception.html", "class_high_five_1_1_file_exception" ], + [ "HighFive::DataSpaceException", "class_high_five_1_1_data_space_exception.html", "class_high_five_1_1_data_space_exception" ], + [ "HighFive::AttributeException", "class_high_five_1_1_attribute_exception.html", "class_high_five_1_1_attribute_exception" ], + [ "HighFive::DataSetException", "class_high_five_1_1_data_set_exception.html", "class_high_five_1_1_data_set_exception" ], + [ "HighFive::GroupException", "class_high_five_1_1_group_exception.html", "class_high_five_1_1_group_exception" ], + [ "HighFive::PropertyException", "class_high_five_1_1_property_exception.html", "class_high_five_1_1_property_exception" ], + [ "HighFive::ReferenceException", "class_high_five_1_1_reference_exception.html", "class_high_five_1_1_reference_exception" ] +]; \ No newline at end of file diff --git a/_h5_exception_8hpp__dep__incl.map b/_h5_exception_8hpp__dep__incl.map new file mode 100644 index 000000000..89f1c0844 --- /dev/null +++ b/_h5_exception_8hpp__dep__incl.map @@ -0,0 +1,139 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_exception_8hpp__dep__incl.md5 b/_h5_exception_8hpp__dep__incl.md5 new file mode 100644 index 000000000..79d1dd805 --- /dev/null +++ b/_h5_exception_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +9946f7d7741df430c0bdffcb844d54ca \ No newline at end of file diff --git a/_h5_exception_8hpp__dep__incl.png b/_h5_exception_8hpp__dep__incl.png new file mode 100644 index 000000000..f854a8a64 Binary files /dev/null and b/_h5_exception_8hpp__dep__incl.png differ diff --git a/_h5_exception_8hpp__incl.map b/_h5_exception_8hpp__incl.map new file mode 100644 index 000000000..fb92f3a75 --- /dev/null +++ b/_h5_exception_8hpp__incl.map @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + diff --git a/_h5_exception_8hpp__incl.md5 b/_h5_exception_8hpp__incl.md5 new file mode 100644 index 000000000..ff75b7259 --- /dev/null +++ b/_h5_exception_8hpp__incl.md5 @@ -0,0 +1 @@ +3fd4e7148e46beb6bb1ef7550c37b4f4 \ No newline at end of file diff --git a/_h5_exception_8hpp__incl.png b/_h5_exception_8hpp__incl.png new file mode 100644 index 000000000..127efa85e Binary files /dev/null and b/_h5_exception_8hpp__incl.png differ diff --git a/_h5_exception_8hpp_source.html b/_h5_exception_8hpp_source.html new file mode 100644 index 000000000..c1b0d5b46 --- /dev/null +++ b/_h5_exception_8hpp_source.html @@ -0,0 +1,307 @@ + + + + + + + +HighFive: highfive/H5Exception.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Exception.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <memory>
+
12#include <stdexcept>
+
13#include <string>
+
14
+
15#include <H5Ipublic.h>
+
16
+
17namespace HighFive {
+
18
+
+
23class Exception: public std::exception {
+
24 public:
+
+
25 Exception(const std::string& err_msg)
+
26 : _errmsg(err_msg)
+
27 , _next()
+
28 , _err_major(0)
+
29 , _err_minor(0) {}
+
+
30
+
31 virtual ~Exception() throw() {}
+
32
+
+
37 inline const char* what() const throw() override {
+
38 return _errmsg.c_str();
+
39 }
+
+
40
+
+
45 inline virtual void setErrorMsg(const std::string& errmsg) {
+
46 _errmsg = errmsg;
+
47 }
+
+
48
+
+
54 inline Exception* nextException() const {
+
55 return _next.get();
+
56 }
+
+
57
+
+
62 inline hid_t getErrMajor() const {
+
63 return _err_major;
+
64 }
+
+
65
+
+
70 inline hid_t getErrMinor() const {
+
71 return _err_minor;
+
72 }
+
+
73
+
74 protected:
+
75 std::string _errmsg;
+
76 std::shared_ptr<Exception> _next;
+ +
78
+
79 friend struct HDF5ErrMapper;
+
80};
+
+
81
+
+ +
86 public:
+
+
87 ObjectException(const std::string& err_msg)
+
88 : Exception(err_msg) {}
+
+
89};
+
+
90
+
+ +
95 public:
+
+
96 DataTypeException(const std::string& err_msg)
+
97 : Exception(err_msg) {}
+
+
98};
+
+
99
+
+ +
104 public:
+
+
105 FileException(const std::string& err_msg)
+
106 : Exception(err_msg) {}
+
+
107};
+
+
108
+
+ +
113 public:
+
+
114 DataSpaceException(const std::string& err_msg)
+
115 : Exception(err_msg) {}
+
+
116};
+
+
117
+
+ +
122 public:
+
+
123 AttributeException(const std::string& err_msg)
+
124 : Exception(err_msg) {}
+
+
125};
+
+
126
+
+ +
131 public:
+
+
132 DataSetException(const std::string& err_msg)
+
133 : Exception(err_msg) {}
+
+
134};
+
+
135
+
+ +
140 public:
+
+
141 GroupException(const std::string& err_msg)
+
142 : Exception(err_msg) {}
+
+
143};
+
+
144
+
+ +
149 public:
+
+
150 PropertyException(const std::string& err_msg)
+
151 : Exception(err_msg) {}
+
+
152};
+
+
153
+
+ +
158 public:
+
+
159 ReferenceException(const std::string& err_msg)
+
160 : Exception(err_msg) {}
+
+
161};
+
+
162} // namespace HighFive
+
163
+ + +
Exception specific to HighFive Attribute interface.
Definition H5Exception.hpp:121
+
AttributeException(const std::string &err_msg)
Definition H5Exception.hpp:123
+
Exception specific to HighFive DataSet interface.
Definition H5Exception.hpp:130
+
DataSetException(const std::string &err_msg)
Definition H5Exception.hpp:132
+
Exception specific to HighFive DataSpace interface.
Definition H5Exception.hpp:112
+
DataSpaceException(const std::string &err_msg)
Definition H5Exception.hpp:114
+
Exception specific to HighFive DataType interface.
Definition H5Exception.hpp:94
+
DataTypeException(const std::string &err_msg)
Definition H5Exception.hpp:96
+
Basic HighFive Exception class.
Definition H5Exception.hpp:23
+
Exception * nextException() const
nextException
Definition H5Exception.hpp:54
+
std::shared_ptr< Exception > _next
Definition H5Exception.hpp:76
+
virtual ~Exception()
Definition H5Exception.hpp:31
+
virtual void setErrorMsg(const std::string &errmsg)
define the error message
Definition H5Exception.hpp:45
+
hid_t _err_major
Definition H5Exception.hpp:77
+
hid_t getErrMajor() const
HDF5 library error mapper.
Definition H5Exception.hpp:62
+
std::string _errmsg
Definition H5Exception.hpp:75
+
const char * what() const override
get the current exception error message
Definition H5Exception.hpp:37
+
hid_t getErrMinor() const
HDF5 library error mapper.
Definition H5Exception.hpp:70
+
hid_t _err_minor
Definition H5Exception.hpp:77
+
Exception(const std::string &err_msg)
Definition H5Exception.hpp:25
+
Exception specific to HighFive File interface.
Definition H5Exception.hpp:103
+
FileException(const std::string &err_msg)
Definition H5Exception.hpp:105
+
Exception specific to HighFive Group interface.
Definition H5Exception.hpp:139
+
GroupException(const std::string &err_msg)
Definition H5Exception.hpp:141
+
Exception specific to HighFive Object interface.
Definition H5Exception.hpp:85
+
ObjectException(const std::string &err_msg)
Definition H5Exception.hpp:87
+
Exception specific to HighFive Property interface.
Definition H5Exception.hpp:148
+
PropertyException(const std::string &err_msg)
Definition H5Exception.hpp:150
+
Exception specific to HighFive Reference interface.
Definition H5Exception.hpp:157
+
ReferenceException(const std::string &err_msg)
Definition H5Exception.hpp:159
+
Definition H5_definitions.hpp:15
+
Definition H5Exception_misc.hpp:18
+
+
+ + + + diff --git a/_h5_exception__misc_8hpp.html b/_h5_exception__misc_8hpp.html new file mode 100644 index 000000000..05a2ad2f7 --- /dev/null +++ b/_h5_exception__misc_8hpp.html @@ -0,0 +1,286 @@ + + + + + + + +HighFive: highfive/bits/H5Exception_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Exception_misc.hpp File Reference
+
+
+
#include <cstdlib>
+#include <sstream>
+#include <H5Epublic.h>
+
+Include dependency graph for H5Exception_misc.hpp:
+
+
+ + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

struct  HighFive::HDF5ErrMapper
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_exception__misc_8hpp.js b/_h5_exception__misc_8hpp.js new file mode 100644 index 000000000..fc5f25156 --- /dev/null +++ b/_h5_exception__misc_8hpp.js @@ -0,0 +1,4 @@ +var _h5_exception__misc_8hpp = +[ + [ "HighFive::HDF5ErrMapper", "struct_high_five_1_1_h_d_f5_err_mapper.html", null ] +]; \ No newline at end of file diff --git a/_h5_exception__misc_8hpp__dep__incl.map b/_h5_exception__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..3f35a4910 --- /dev/null +++ b/_h5_exception__misc_8hpp__dep__incl.map @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_exception__misc_8hpp__dep__incl.md5 b/_h5_exception__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..b0a15371f --- /dev/null +++ b/_h5_exception__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +90938b01ba4c654554accb9283ca6ccc \ No newline at end of file diff --git a/_h5_exception__misc_8hpp__dep__incl.png b/_h5_exception__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..5747d6b42 Binary files /dev/null and b/_h5_exception__misc_8hpp__dep__incl.png differ diff --git a/_h5_exception__misc_8hpp__incl.map b/_h5_exception__misc_8hpp__incl.map new file mode 100644 index 000000000..a8765f2b6 --- /dev/null +++ b/_h5_exception__misc_8hpp__incl.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/_h5_exception__misc_8hpp__incl.md5 b/_h5_exception__misc_8hpp__incl.md5 new file mode 100644 index 000000000..28e8bdd58 --- /dev/null +++ b/_h5_exception__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +d6803442b369df488e066545a9e4c0c2 \ No newline at end of file diff --git a/_h5_exception__misc_8hpp__incl.png b/_h5_exception__misc_8hpp__incl.png new file mode 100644 index 000000000..d4d94ac81 Binary files /dev/null and b/_h5_exception__misc_8hpp__incl.png differ diff --git a/_h5_exception__misc_8hpp_source.html b/_h5_exception__misc_8hpp_source.html new file mode 100644 index 000000000..df920ddcb --- /dev/null +++ b/_h5_exception__misc_8hpp_source.html @@ -0,0 +1,184 @@ + + + + + + + +HighFive: highfive/bits/H5Exception_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Exception_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <cstdlib>
+
12#include <sstream>
+
13
+
14#include <H5Epublic.h>
+
15
+
16namespace HighFive {
+
17
+
+ +
19 template <typename ExceptionType>
+
+
20 static inline herr_t stackWalk(unsigned n, const H5E_error2_t* err_desc, void* client_data) {
+
21 auto** e_iter = static_cast<ExceptionType**>(client_data);
+
22 (void) n;
+
23
+
24 const char* major_err = H5Eget_major(err_desc->maj_num);
+
25 const char* minor_err = H5Eget_minor(err_desc->min_num);
+
26
+
27 std::ostringstream oss;
+
28 oss << '(' << major_err << ") " << minor_err;
+
29
+
30 H5free_memory((void*) major_err);
+
31 H5free_memory((void*) minor_err);
+
32
+
33 auto* e = new ExceptionType(oss.str());
+
34 e->_err_major = err_desc->maj_num;
+
35 e->_err_minor = err_desc->min_num;
+
36 (*e_iter)->_next.reset(e);
+
37 *e_iter = e;
+
38 return 0;
+
39 }
+
+
40
+
41 template <typename ExceptionType>
+
+
42 [[noreturn]] static inline void ToException(const std::string& prefix_msg) {
+ +
44 if (err_stack >= 0) {
+
45 ExceptionType e("");
+ +
47
+ + +
50
+
51 const char* next_err_msg = (e.nextException() != NULL) ? (e.nextException()->what())
+
52 : ("");
+
53
+
54 e.setErrorMsg(prefix_msg + " " + next_err_msg);
+
55 throw e;
+
56 }
+
57 // throw generic error, unrecognized error
+
58 throw ExceptionType(prefix_msg + ": Unknown HDF5 error");
+
59 }
+
+
60};
+
+
61
+
62} // namespace HighFive
+
Definition H5_definitions.hpp:15
+
Definition H5Exception_misc.hpp:18
+
static herr_t stackWalk(unsigned n, const H5E_error2_t *err_desc, void *client_data)
Definition H5Exception_misc.hpp:20
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_file_8hpp.html b/_h5_file_8hpp.html new file mode 100644 index 000000000..049827eae --- /dev/null +++ b/_h5_file_8hpp.html @@ -0,0 +1,368 @@ + + + + + + + +HighFive: highfive/H5File.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5File.hpp File Reference
+
+
+
#include <string>
+#include "H5FileDriver.hpp"
+#include "H5Object.hpp"
+#include "H5PropertyList.hpp"
+#include "bits/H5Annotate_traits.hpp"
+#include "bits/H5Node_traits.hpp"
+#include "bits/H5Annotate_traits_misc.hpp"
+#include "bits/H5File_misc.hpp"
+#include "bits/H5Node_traits_misc.hpp"
+#include "bits/H5Path_traits_misc.hpp"
+
+Include dependency graph for H5File.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  HighFive::File
 File class. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_file_8hpp.js b/_h5_file_8hpp.js new file mode 100644 index 000000000..ad7592c13 --- /dev/null +++ b/_h5_file_8hpp.js @@ -0,0 +1,4 @@ +var _h5_file_8hpp = +[ + [ "HighFive::File", "class_high_five_1_1_file.html", "class_high_five_1_1_file" ] +]; \ No newline at end of file diff --git a/_h5_file_8hpp__dep__incl.map b/_h5_file_8hpp__dep__incl.map new file mode 100644 index 000000000..386834738 --- /dev/null +++ b/_h5_file_8hpp__dep__incl.map @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_file_8hpp__dep__incl.md5 b/_h5_file_8hpp__dep__incl.md5 new file mode 100644 index 000000000..bff63fde5 --- /dev/null +++ b/_h5_file_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +8aa34fa27badf4c12afbbbc88f48fb10 \ No newline at end of file diff --git a/_h5_file_8hpp__dep__incl.png b/_h5_file_8hpp__dep__incl.png new file mode 100644 index 000000000..134671027 Binary files /dev/null and b/_h5_file_8hpp__dep__incl.png differ diff --git a/_h5_file_8hpp__incl.map b/_h5_file_8hpp__incl.map new file mode 100644 index 000000000..69d6ea65e --- /dev/null +++ b/_h5_file_8hpp__incl.map @@ -0,0 +1,187 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_file_8hpp__incl.md5 b/_h5_file_8hpp__incl.md5 new file mode 100644 index 000000000..47451e69f --- /dev/null +++ b/_h5_file_8hpp__incl.md5 @@ -0,0 +1 @@ +6206e2e1aece2a3693755aba6c6c1f78 \ No newline at end of file diff --git a/_h5_file_8hpp__incl.png b/_h5_file_8hpp__incl.png new file mode 100644 index 000000000..15702333d Binary files /dev/null and b/_h5_file_8hpp__incl.png differ diff --git a/_h5_file_8hpp_source.html b/_h5_file_8hpp_source.html new file mode 100644 index 000000000..7eafb117b --- /dev/null +++ b/_h5_file_8hpp_source.html @@ -0,0 +1,252 @@ + + + + + + + +HighFive: highfive/H5File.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5File.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <string>
+
12
+
13#include "H5FileDriver.hpp"
+
14#include "H5Object.hpp"
+
15#include "H5PropertyList.hpp"
+ + +
18
+
19namespace HighFive {
+
20
+
+
24class File: public Object, public NodeTraits<File>, public AnnotateTraits<File> {
+
25 public:
+ +
27
+
28 enum : unsigned {
+
30 ReadOnly = 0x00u,
+
32 ReadWrite = 0x01u,
+
34 Truncate = 0x02u,
+
36 Excl = 0x04u,
+
38 Debug = 0x08u,
+
40 Create = 0x10u,
+ + +
45 };
+
46
+
54 explicit File(const std::string& filename,
+
55 unsigned openFlags = ReadOnly,
+
56 const FileAccessProps& fileAccessProps = FileAccessProps::Default());
+
57
+
66 File(const std::string& filename,
+
67 unsigned openFlags,
+
68 const FileCreateProps& fileCreateProps,
+
69 const FileAccessProps& fileAccessProps = FileAccessProps::Default());
+
70
+
74 const std::string& getName() const noexcept;
+
75
+
76
+
+
78 std::string getPath() const noexcept {
+
79 return "/";
+
80 }
+
+
81
+
83 hsize_t getMetadataBlockSize() const;
+
84
+
86 std::pair<H5F_libver_t, H5F_libver_t> getVersionBounds() const;
+
87
+
88#if H5_VERSION_GE(1, 10, 1)
+
90 H5F_fspace_strategy_t getFileSpaceStrategy() const;
+
91
+
93 hsize_t getFileSpacePageSize() const;
+
94#endif
+
95
+
101 void flush();
+
102
+
+ +
105 return details::get_plist<FileCreateProps>(*this, H5Fget_create_plist);
+
106 }
+
+
107
+
+ +
110 return details::get_plist<FileAccessProps>(*this, H5Fget_access_plist);
+
111 }
+
+
112
+
114 size_t getFileSize() const;
+
115
+
122 size_t getFreeSpace() const;
+
123
+
124 protected:
+
125 File() = default;
+
126 using Object::Object;
+
127
+
128 private:
+
129 mutable std::string _filename{};
+
130
+
131 template <typename>
+
132 friend class PathTraits;
+
133};
+
+
134
+
135} // namespace HighFive
+
136
+
137// H5File is the main user constructible -> bring in implementation headers
+ +
139#include "bits/H5File_misc.hpp"
+ + + + + + + + + + + +
Definition H5Annotate_traits.hpp:18
+
File class.
Definition H5File.hpp:24
+
FileCreateProps getCreatePropertyList() const
Get the list of properties for creation of this file.
Definition H5File.hpp:104
+
size_t getFileSize() const
Get the size of this file in bytes.
Definition H5File_misc.hpp:130
+
std::pair< H5F_libver_t, H5F_libver_t > getVersionBounds() const
Returns the HDF5 version compatibility bounds.
Definition H5File_misc.hpp:99
+
void flush()
flush
Definition H5File_misc.hpp:124
+
size_t getFreeSpace() const
Get the amount of tracked, unused space in bytes.
Definition H5File_misc.hpp:139
+
FileAccessProps getAccessPropertyList() const
Get the list of properties for accession of this file.
Definition H5File.hpp:109
+
hsize_t getMetadataBlockSize() const
Returns the block size for metadata in bytes.
Definition H5File_misc.hpp:94
+
@ OpenOrCreate
Derived open flag: Opens RW or exclusively creates.
Definition H5File.hpp:44
+
@ Overwrite
Derived open flag: common write mode (=ReadWrite|Create|Truncate)
Definition H5File.hpp:42
+
@ Truncate
Open flag: Truncate a file if already existing.
Definition H5File.hpp:34
+
@ Create
Open flag: Create non existing file.
Definition H5File.hpp:40
+
@ ReadOnly
Open flag: Read only access.
Definition H5File.hpp:30
+
@ ReadWrite
Open flag: Read Write access.
Definition H5File.hpp:32
+
@ Debug
Open flag: Open in debug mode.
Definition H5File.hpp:38
+
@ Excl
Open flag: Open will fail if file already exist.
Definition H5File.hpp:36
+
File()=default
+
static const ObjectType type
Definition H5File.hpp:26
+
std::string getPath() const noexcept
Object path of a File is always "/".
Definition H5File.hpp:78
+
const std::string & getName() const noexcept
Return the name of the file.
Definition H5File_misc.hpp:86
+
NodeTraits: Base class for Group and File.
Definition H5Node_traits.hpp:28
+
Definition H5Object.hpp:54
+
Object()
Definition H5Object_misc.hpp:24
+
Definition H5Path_traits.hpp:16
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
static const PropertyList< T > & Default() noexcept
Return the Default property type object.
Definition H5PropertyList.hpp:178
+
Definition H5_definitions.hpp:15
+
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+ +
+
+ + + + diff --git a/_h5_file__misc_8hpp.html b/_h5_file__misc_8hpp.html new file mode 100644 index 000000000..a809a2ce8 --- /dev/null +++ b/_h5_file__misc_8hpp.html @@ -0,0 +1,223 @@ + + + + + + + +HighFive: highfive/bits/H5File_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5File_misc.hpp File Reference
+
+
+
#include <string>
+#include <H5Fpublic.h>
+#include "../H5Utility.hpp"
+#include "H5Utils.hpp"
+
+Include dependency graph for H5File_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_file__misc_8hpp__dep__incl.map b/_h5_file__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..8b9f7e68d --- /dev/null +++ b/_h5_file__misc_8hpp__dep__incl.map @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_file__misc_8hpp__dep__incl.md5 b/_h5_file__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..3523eba43 --- /dev/null +++ b/_h5_file__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +62bc510a58fc7d3833338c9203e6236d \ No newline at end of file diff --git a/_h5_file__misc_8hpp__dep__incl.png b/_h5_file__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..307db194e Binary files /dev/null and b/_h5_file__misc_8hpp__dep__incl.png differ diff --git a/_h5_file__misc_8hpp__incl.map b/_h5_file__misc_8hpp__incl.map new file mode 100644 index 000000000..f73799abf --- /dev/null +++ b/_h5_file__misc_8hpp__incl.map @@ -0,0 +1,53 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_file__misc_8hpp__incl.md5 b/_h5_file__misc_8hpp__incl.md5 new file mode 100644 index 000000000..a99424fb0 --- /dev/null +++ b/_h5_file__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +823ebabaa36f06db350267144277a790 \ No newline at end of file diff --git a/_h5_file__misc_8hpp__incl.png b/_h5_file__misc_8hpp__incl.png new file mode 100644 index 000000000..00abc1a26 Binary files /dev/null and b/_h5_file__misc_8hpp__incl.png differ diff --git a/_h5_file__misc_8hpp_source.html b/_h5_file__misc_8hpp_source.html new file mode 100644 index 000000000..612866b58 --- /dev/null +++ b/_h5_file__misc_8hpp_source.html @@ -0,0 +1,302 @@ + + + + + + + +HighFive: highfive/bits/H5File_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5File_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <string>
+
12
+
13#include <H5Fpublic.h>
+
14
+
15#include "../H5Utility.hpp"
+
16#include "H5Utils.hpp"
+
17
+
18namespace HighFive {
+
19
+
20namespace { // unnamed
+
21
+
22// libhdf5 uses a preprocessor trick on their oflags
+
23// we can not declare them constant without a mapper
+
24inline unsigned convert_open_flag(unsigned openFlags) {
+
25 unsigned res_open = 0;
+
26 if (openFlags & File::ReadOnly)
+
27 res_open |= H5F_ACC_RDONLY;
+
28 if (openFlags & File::ReadWrite)
+
29 res_open |= H5F_ACC_RDWR;
+
30 if (openFlags & File::Create)
+
31 res_open |= H5F_ACC_CREAT;
+
32 if (openFlags & File::Truncate)
+
33 res_open |= H5F_ACC_TRUNC;
+
34 if (openFlags & File::Excl)
+
35 res_open |= H5F_ACC_EXCL;
+
36 return res_open;
+
37}
+
38} // namespace
+
39
+
+
40inline File::File(const std::string& filename,
+
41 unsigned openFlags,
+
42 const FileAccessProps& fileAccessProps)
+
43 : File(filename, openFlags, FileCreateProps::Default(), fileAccessProps) {}
+
+
44
+
45
+
+
46inline File::File(const std::string& filename,
+
47 unsigned openFlags,
+
48 const FileCreateProps& fileCreateProps,
+
49 const FileAccessProps& fileAccessProps) {
+
50 openFlags = convert_open_flag(openFlags);
+
51
+
52 unsigned createMode = openFlags & (H5F_ACC_TRUNC | H5F_ACC_EXCL);
+
53 unsigned openMode = openFlags & (H5F_ACC_RDWR | H5F_ACC_RDONLY);
+
54 bool mustCreate = createMode > 0;
+
55 bool openOrCreate = (openFlags & H5F_ACC_CREAT) > 0;
+
56
+
57 // open is default. It's skipped only if flags require creation
+
58 // If open fails it will try create() if H5F_ACC_CREAT is set
+
59 if (!mustCreate) {
+
60 // Silence open errors if create is allowed
+
61 std::unique_ptr<SilenceHDF5> silencer;
+
62 if (openOrCreate)
+
63 silencer.reset(new SilenceHDF5());
+
64
+
65 _hid = H5Fopen(filename.c_str(), openMode, fileAccessProps.getId());
+
66
+
67 if (isValid())
+
68 return; // Done
+
69
+
70 if (openOrCreate) {
+
71 // Will attempt to create ensuring wont clobber any file
+
72 createMode = H5F_ACC_EXCL;
+
73 } else {
+ +
75 std::string("Unable to open file " + filename));
+
76 }
+
77 }
+
78
+
79 auto fcpl = fileCreateProps.getId();
+
80 auto fapl = fileAccessProps.getId();
+
81 if ((_hid = H5Fcreate(filename.c_str(), createMode, fcpl, fapl)) < 0) {
+
82 HDF5ErrMapper::ToException<FileException>(std::string("Unable to create file " + filename));
+
83 }
+
84}
+
+
85
+
+
86inline const std::string& File::getName() const noexcept {
+
87 if (_filename.empty()) {
+
88 _filename = details::get_name(
+
89 [this](char* buffer, size_t length) { return H5Fget_name(getId(), buffer, length); });
+
90 }
+
91 return _filename;
+
92}
+
+
93
+
+
94inline hsize_t File::getMetadataBlockSize() const {
+
95 auto fapl = getAccessPropertyList();
+
96 return MetadataBlockSize(fapl).getSize();
+
97}
+
+
98
+
+
99inline std::pair<H5F_libver_t, H5F_libver_t> File::getVersionBounds() const {
+
100 auto fapl = getAccessPropertyList();
+
101 auto fileVer = FileVersionBounds(fapl);
+
102 return fileVer.getVersion();
+
103}
+
+
104
+
105#if H5_VERSION_GE(1, 10, 1)
+
106inline H5F_fspace_strategy_t File::getFileSpaceStrategy() const {
+
107 auto fcpl = getCreatePropertyList();
+
108 FileSpaceStrategy spaceStrategy(fcpl);
+
109 return spaceStrategy.getStrategy();
+
110}
+
111
+
112inline hsize_t File::getFileSpacePageSize() const {
+
113 auto fcpl = getCreatePropertyList();
+
114
+
115 if (getFileSpaceStrategy() != H5F_FSPACE_STRATEGY_PAGE) {
+ +
117 std::string("Cannot obtain page size as paged allocation is not used."));
+
118 }
+
119
+
120 return FileSpacePageSize(fcpl).getPageSize();
+
121}
+
122#endif
+
123
+
+
124inline void File::flush() {
+
125 if (H5Fflush(_hid, H5F_SCOPE_GLOBAL) < 0) {
+
126 HDF5ErrMapper::ToException<FileException>(std::string("Unable to flush file " + getName()));
+
127 }
+
128}
+
+
129
+
+
130inline size_t File::getFileSize() const {
+
131 hsize_t sizeValue = 0;
+
132 if (H5Fget_filesize(_hid, &sizeValue) < 0) {
+ +
134 std::string("Unable to retrieve size of file " + getName()));
+
135 }
+
136 return static_cast<size_t>(sizeValue);
+
137}
+
+
138
+
+
139inline size_t File::getFreeSpace() const {
+
140 hssize_t unusedSize = H5Fget_freespace(_hid);
+
141 if (unusedSize < 0) {
+ +
143 std::string("Unable to retrieve unused space of file " + getName()));
+
144 }
+
145 return static_cast<size_t>(unusedSize);
+
146}
+
+
147
+
148} // namespace HighFive
+ +
File class.
Definition H5File.hpp:24
+
FileCreateProps getCreatePropertyList() const
Get the list of properties for creation of this file.
Definition H5File.hpp:104
+
size_t getFileSize() const
Get the size of this file in bytes.
Definition H5File_misc.hpp:130
+
std::pair< H5F_libver_t, H5F_libver_t > getVersionBounds() const
Returns the HDF5 version compatibility bounds.
Definition H5File_misc.hpp:99
+
void flush()
flush
Definition H5File_misc.hpp:124
+
size_t getFreeSpace() const
Get the amount of tracked, unused space in bytes.
Definition H5File_misc.hpp:139
+
FileAccessProps getAccessPropertyList() const
Get the list of properties for accession of this file.
Definition H5File.hpp:109
+
hsize_t getMetadataBlockSize() const
Returns the block size for metadata in bytes.
Definition H5File_misc.hpp:94
+
@ Truncate
Open flag: Truncate a file if already existing.
Definition H5File.hpp:34
+
@ Create
Open flag: Create non existing file.
Definition H5File.hpp:40
+
@ ReadOnly
Open flag: Read only access.
Definition H5File.hpp:30
+
@ ReadWrite
Open flag: Read Write access.
Definition H5File.hpp:32
+
@ Excl
Open flag: Open will fail if file already exist.
Definition H5File.hpp:36
+
File()=default
+
const std::string & getName() const noexcept
Return the name of the file.
Definition H5File_misc.hpp:86
+
Configure the version bounds for the file.
Definition H5PropertyList.hpp:327
+
Configure the metadata block size to use writing to files.
Definition H5PropertyList.hpp:347
+
hsize_t getSize() const
Definition H5PropertyList_misc.hpp:287
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
bool isValid() const noexcept
isValid
Definition H5Object_misc.hpp:61
+
hid_t _hid
Definition H5Object.hpp:105
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
Utility class to disable HDF5 stack printing inside a scope.
Definition H5Utility.hpp:24
+
Definition H5_definitions.hpp:15
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_file_driver_8hpp.html b/_h5_file_driver_8hpp.html new file mode 100644 index 000000000..b6e88cc30 --- /dev/null +++ b/_h5_file_driver_8hpp.html @@ -0,0 +1,239 @@ + + + + + + + +HighFive: highfive/H5FileDriver.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5FileDriver.hpp File Reference
+
+
+
+Include dependency graph for H5FileDriver.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

class  HighFive::FileDriver
 file driver base concept More...
 
class  HighFive::MPIOFileDriver
 MPIIO Driver for Parallel HDF5. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_file_driver_8hpp.js b/_h5_file_driver_8hpp.js new file mode 100644 index 000000000..c77c1a3d4 --- /dev/null +++ b/_h5_file_driver_8hpp.js @@ -0,0 +1,5 @@ +var _h5_file_driver_8hpp = +[ + [ "HighFive::FileDriver", "class_high_five_1_1_file_driver.html", null ], + [ "HighFive::MPIOFileDriver", "class_high_five_1_1_m_p_i_o_file_driver.html", "class_high_five_1_1_m_p_i_o_file_driver" ] +]; \ No newline at end of file diff --git a/_h5_file_driver_8hpp__dep__incl.map b/_h5_file_driver_8hpp__dep__incl.map new file mode 100644 index 000000000..bdebcaaf5 --- /dev/null +++ b/_h5_file_driver_8hpp__dep__incl.map @@ -0,0 +1,40 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_file_driver_8hpp__dep__incl.md5 b/_h5_file_driver_8hpp__dep__incl.md5 new file mode 100644 index 000000000..33f387de3 --- /dev/null +++ b/_h5_file_driver_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +c3c6b21f926a9d7fa64bc89ae90833d4 \ No newline at end of file diff --git a/_h5_file_driver_8hpp__dep__incl.png b/_h5_file_driver_8hpp__dep__incl.png new file mode 100644 index 000000000..251927ab4 Binary files /dev/null and b/_h5_file_driver_8hpp__dep__incl.png differ diff --git a/_h5_file_driver_8hpp__incl.map b/_h5_file_driver_8hpp__incl.map new file mode 100644 index 000000000..7acdf3369 --- /dev/null +++ b/_h5_file_driver_8hpp__incl.map @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_file_driver_8hpp__incl.md5 b/_h5_file_driver_8hpp__incl.md5 new file mode 100644 index 000000000..f8a9324e3 --- /dev/null +++ b/_h5_file_driver_8hpp__incl.md5 @@ -0,0 +1 @@ +f2b4a166d82fee7678ef6bc70b8c31ba \ No newline at end of file diff --git a/_h5_file_driver_8hpp__incl.png b/_h5_file_driver_8hpp__incl.png new file mode 100644 index 000000000..5a6a09d66 Binary files /dev/null and b/_h5_file_driver_8hpp__incl.png differ diff --git a/_h5_file_driver_8hpp_source.html b/_h5_file_driver_8hpp_source.html new file mode 100644 index 000000000..8038bb736 --- /dev/null +++ b/_h5_file_driver_8hpp_source.html @@ -0,0 +1,150 @@ + + + + + + + +HighFive: highfive/H5FileDriver.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5FileDriver.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include "H5PropertyList.hpp"
+ +
13
+
14namespace HighFive {
+
15
+
18class H5_DEPRECATED("Use FileAccessProps directly") FileDriver: public FileAccessProps {};
+
19
+
20#ifdef H5_HAVE_PARALLEL
+
+
23class H5_DEPRECATED("Add MPIOFileAccess directly to FileAccessProps") MPIOFileDriver
+
24 : public FileAccessProps {
+
25 public:
+
26 inline MPIOFileDriver(MPI_Comm mpi_comm, MPI_Info mpi_info);
+
27};
+
+
28#endif
+
29
+
30} // namespace HighFive
+
31
+ + +
#define H5_DEPRECATED(msg)
Definition H5_definitions.hpp:9
+ + +
file driver base concept
Definition H5FileDriver.hpp:18
+
MPIIO Driver for Parallel HDF5.
Definition H5FileDriver.hpp:24
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
Definition H5_definitions.hpp:15
+
+
+ + + + diff --git a/_h5_file_driver__misc_8hpp.html b/_h5_file_driver__misc_8hpp.html new file mode 100644 index 000000000..cc1769383 --- /dev/null +++ b/_h5_file_driver__misc_8hpp.html @@ -0,0 +1,164 @@ + + + + + + + +HighFive: highfive/bits/H5FileDriver_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5FileDriver_misc.hpp File Reference
+
+
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_file_driver__misc_8hpp__dep__incl.map b/_h5_file_driver__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..813e33ad6 --- /dev/null +++ b/_h5_file_driver__misc_8hpp__dep__incl.map @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_file_driver__misc_8hpp__dep__incl.md5 b/_h5_file_driver__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..91f022f2e --- /dev/null +++ b/_h5_file_driver__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +b2f5d916e1f0d915ae58ed6c8d51be88 \ No newline at end of file diff --git a/_h5_file_driver__misc_8hpp__dep__incl.png b/_h5_file_driver__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..fd3b8f682 Binary files /dev/null and b/_h5_file_driver__misc_8hpp__dep__incl.png differ diff --git a/_h5_file_driver__misc_8hpp_source.html b/_h5_file_driver__misc_8hpp_source.html new file mode 100644 index 000000000..74ad65d47 --- /dev/null +++ b/_h5_file_driver__misc_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + + + +HighFive: highfive/bits/H5FileDriver_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5FileDriver_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017-2018, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 * Juan Hernando <juan.hernando@epfl.ch>
+
4 *
+
5 * Distributed under the Boost Software License, Version 1.0.
+
6 * (See accompanying file LICENSE_1_0.txt or copy at
+
7 * http://www.boost.org/LICENSE_1_0.txt)
+
8 *
+
9 */
+
10#pragma once
+
11
+
12namespace HighFive {
+
13
+
14#ifdef H5_HAVE_PARALLEL
+
+
15inline MPIOFileDriver::MPIOFileDriver(MPI_Comm comm, MPI_Info info) {
+
16 add(MPIOFileAccess(comm, info));
+
17}
+
+
18#endif
+
19
+
20} // namespace HighFive
+
Configure MPI access for the file.
Definition H5PropertyList.hpp:220
+
MPIOFileDriver(MPI_Comm mpi_comm, MPI_Info mpi_info)
Definition H5FileDriver_misc.hpp:15
+
void add(const P &property)
Definition H5PropertyList_misc.hpp:74
+
Definition H5_definitions.hpp:15
+
+
+ + + + diff --git a/_h5_friends_8hpp.html b/_h5_friends_8hpp.html new file mode 100644 index 000000000..3a0feb799 --- /dev/null +++ b/_h5_friends_8hpp.html @@ -0,0 +1,261 @@ + + + + + + + +HighFive: highfive/bits/H5Friends.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Friends.hpp File Reference
+
+
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+
+
+ + + + diff --git a/_h5_friends_8hpp__dep__incl.map b/_h5_friends_8hpp__dep__incl.map new file mode 100644 index 000000000..96a903191 --- /dev/null +++ b/_h5_friends_8hpp__dep__incl.map @@ -0,0 +1,147 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_friends_8hpp__dep__incl.md5 b/_h5_friends_8hpp__dep__incl.md5 new file mode 100644 index 000000000..7fe41f723 --- /dev/null +++ b/_h5_friends_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +acebe7721f0e0d70e9648f86565bb91f \ No newline at end of file diff --git a/_h5_friends_8hpp__dep__incl.png b/_h5_friends_8hpp__dep__incl.png new file mode 100644 index 000000000..20777d82b Binary files /dev/null and b/_h5_friends_8hpp__dep__incl.png differ diff --git a/_h5_friends_8hpp_source.html b/_h5_friends_8hpp_source.html new file mode 100644 index 000000000..cedfa7a0d --- /dev/null +++ b/_h5_friends_8hpp_source.html @@ -0,0 +1,122 @@ + + + + + + + +HighFive: highfive/bits/H5Friends.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Friends.hpp
+
+
+Go to the documentation of this file.
1#pragma once
+
2
+
3#ifndef HIGHFIVE_HAS_FRIEND_DECLARATIONS
+
4#ifdef _MSC_VER
+
5// This prevents a compiler bug on certain versions of MSVC.
+
6// Known to fail: Toolset 141.
+
7// See `CMakeLists.txt` for more information.
+
8#define HIGHFIVE_HAS_FRIEND_DECLARATIONS 1
+
9#endif
+
10#endif
+
+
+ + + + diff --git a/_h5_group_8hpp.html b/_h5_group_8hpp.html new file mode 100644 index 000000000..4114c8398 --- /dev/null +++ b/_h5_group_8hpp.html @@ -0,0 +1,328 @@ + + + + + + + +HighFive: highfive/H5Group.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Group.hpp File Reference
+
+
+
#include <H5Gpublic.h>
+#include "H5Object.hpp"
+#include "bits/H5Friends.hpp"
+#include "bits/H5_definitions.hpp"
+#include "bits/H5Annotate_traits.hpp"
+#include "bits/H5Node_traits.hpp"
+#include "bits/H5Path_traits.hpp"
+
+Include dependency graph for H5Group.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  HighFive::Group
 Represents an hdf5 group. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_group_8hpp.js b/_h5_group_8hpp.js new file mode 100644 index 000000000..8e9fc6e66 --- /dev/null +++ b/_h5_group_8hpp.js @@ -0,0 +1,4 @@ +var _h5_group_8hpp = +[ + [ "HighFive::Group", "class_high_five_1_1_group.html", "class_high_five_1_1_group" ] +]; \ No newline at end of file diff --git a/_h5_group_8hpp__dep__incl.map b/_h5_group_8hpp__dep__incl.map new file mode 100644 index 000000000..7cb976afc --- /dev/null +++ b/_h5_group_8hpp__dep__incl.map @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_group_8hpp__dep__incl.md5 b/_h5_group_8hpp__dep__incl.md5 new file mode 100644 index 000000000..84e1f73f0 --- /dev/null +++ b/_h5_group_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +182109c6571e9fde096291455e9d9687 \ No newline at end of file diff --git a/_h5_group_8hpp__dep__incl.png b/_h5_group_8hpp__dep__incl.png new file mode 100644 index 000000000..e75c28d8d Binary files /dev/null and b/_h5_group_8hpp__dep__incl.png differ diff --git a/_h5_group_8hpp__incl.map b/_h5_group_8hpp__incl.map new file mode 100644 index 000000000..9bc21d4a7 --- /dev/null +++ b/_h5_group_8hpp__incl.map @@ -0,0 +1,145 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_group_8hpp__incl.md5 b/_h5_group_8hpp__incl.md5 new file mode 100644 index 000000000..c11a204b2 --- /dev/null +++ b/_h5_group_8hpp__incl.md5 @@ -0,0 +1 @@ +bc0474571acca091146bc9f4bd115bf8 \ No newline at end of file diff --git a/_h5_group_8hpp__incl.png b/_h5_group_8hpp__incl.png new file mode 100644 index 000000000..21c50baa6 Binary files /dev/null and b/_h5_group_8hpp__incl.png differ diff --git a/_h5_group_8hpp_source.html b/_h5_group_8hpp_source.html new file mode 100644 index 000000000..899b6ce19 --- /dev/null +++ b/_h5_group_8hpp_source.html @@ -0,0 +1,214 @@ + + + + + + + +HighFive: highfive/H5Group.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Group.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <H5Gpublic.h>
+
12
+
13#include "H5Object.hpp"
+
14#include "bits/H5Friends.hpp"
+ + + + +
19
+
20namespace HighFive {
+
21
+
22namespace detail {
+
38Group make_group(hid_t);
+
39} // namespace detail
+
40
+
+
43class Group: public Object,
+
44 public NodeTraits<Group>,
+
45 public AnnotateTraits<Group>,
+
46 public PathTraits<Group> {
+
47 public:
+ +
49
+
51 H5_DEPRECATED("Default constructor creates unsafe uninitialized objects")
+
52 Group() = default;
+
53
+
54 std::pair<unsigned int, unsigned int> getEstimatedLinkInfo() const;
+
55
+
+ +
58 return details::get_plist<GroupCreateProps>(*this, H5Gget_create_plist);
+
59 }
+
+
60
+
+
61 Group(Object&& o) noexcept
+
62 : Object(std::move(o)){};
+
+
63
+
64 protected:
+
65 using Object::Object;
+
66
+
67 friend Group detail::make_group(hid_t);
+
68 friend class File;
+
69 friend class Reference;
+
70#if HIGHFIVE_HAS_FRIEND_DECLARATIONS
+
71 template <typename Derivate>
+
72 friend class ::HighFive::NodeTraits;
+
73#endif
+
74};
+
+
75
+
+
76inline std::pair<unsigned int, unsigned int> Group::getEstimatedLinkInfo() const {
+
77 auto gcpl = getCreatePropertyList();
+
78 auto eli = EstimatedLinkInfo(gcpl);
+
79 return std::make_pair(eli.getEntries(), eli.getNameLength());
+
80}
+
+
81
+
82namespace detail {
+
83inline Group make_group(hid_t hid) {
+
84 return Group(hid);
+
85}
+
86} // namespace detail
+
87
+
88} // namespace HighFive
+ +
#define H5_DEPRECATED(msg)
Definition H5_definitions.hpp:9
+ + + + + +
Definition H5Annotate_traits.hpp:18
+ +
File class.
Definition H5File.hpp:24
+
Represents an hdf5 group.
Definition H5Group.hpp:46
+
Object()
Definition H5Object_misc.hpp:24
+
static const ObjectType type
Definition H5Group.hpp:48
+
GroupCreateProps getCreatePropertyList() const
Get the list of properties for creation of this group.
Definition H5Group.hpp:57
+
Group(Object &&o) noexcept
Definition H5Group.hpp:61
+
std::pair< unsigned int, unsigned int > getEstimatedLinkInfo() const
Definition H5Group.hpp:76
+
NodeTraits: Base class for Group and File.
Definition H5Node_traits.hpp:28
+
Definition H5Object.hpp:54
+
Object()
Definition H5Object_misc.hpp:24
+
Definition H5Path_traits.hpp:16
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
An HDF5 (object) reference type.
Definition H5Reference.hpp:33
+
Definition H5_definitions.hpp:15
+
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+ +
+
+ + + + diff --git a/_h5_inspector__misc_8hpp.html b/_h5_inspector__misc_8hpp.html new file mode 100644 index 000000000..95745e39f --- /dev/null +++ b/_h5_inspector__misc_8hpp.html @@ -0,0 +1,339 @@ + + + + + + + +HighFive: highfive/bits/H5Inspector_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Inspector_misc.hpp File Reference
+
+
+
#include <type_traits>
+#include <cstring>
+#include <cassert>
+#include <vector>
+#include <array>
+#include <string>
+#include <numeric>
+#include "../H5Reference.hpp"
+#include "string_padding.hpp"
+#include <boost/multi_array.hpp>
+#include <boost/serialization/vector.hpp>
+#include <boost/numeric/ublas/matrix.hpp>
+#include <Eigen/Eigen>
+
+Include dependency graph for H5Inspector_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+ + + + +

+Typedefs

template<typename T >
using HighFive::unqualified_t = typename std::remove_const< typename std::remove_reference< T >::type >::type
 
+ + + +

+Functions

size_t HighFive::compute_total_size (const std::vector< size_t > &dims)
 
+
+
+ + + + diff --git a/_h5_inspector__misc_8hpp.js b/_h5_inspector__misc_8hpp.js new file mode 100644 index 000000000..590690ce1 --- /dev/null +++ b/_h5_inspector__misc_8hpp.js @@ -0,0 +1,5 @@ +var _h5_inspector__misc_8hpp = +[ + [ "unqualified_t", "_h5_inspector__misc_8hpp.html#a792f32000f201b45366989bd9e5c31c5", null ], + [ "compute_total_size", "_h5_inspector__misc_8hpp.html#ae473192dc3e4e3f42c470f682817a32c", null ] +]; \ No newline at end of file diff --git a/_h5_inspector__misc_8hpp__dep__incl.map b/_h5_inspector__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..e5d128e49 --- /dev/null +++ b/_h5_inspector__misc_8hpp__dep__incl.map @@ -0,0 +1,87 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_inspector__misc_8hpp__dep__incl.md5 b/_h5_inspector__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..1dd8daa8f --- /dev/null +++ b/_h5_inspector__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +962ae92e74b4c29ccd45b4f2faa318fd \ No newline at end of file diff --git a/_h5_inspector__misc_8hpp__dep__incl.png b/_h5_inspector__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..f27a0a0fa Binary files /dev/null and b/_h5_inspector__misc_8hpp__dep__incl.png differ diff --git a/_h5_inspector__misc_8hpp__incl.map b/_h5_inspector__misc_8hpp__incl.map new file mode 100644 index 000000000..d2edb3296 --- /dev/null +++ b/_h5_inspector__misc_8hpp__incl.map @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_inspector__misc_8hpp__incl.md5 b/_h5_inspector__misc_8hpp__incl.md5 new file mode 100644 index 000000000..777113560 --- /dev/null +++ b/_h5_inspector__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +3f0081190097c4848bb1a21daa673196 \ No newline at end of file diff --git a/_h5_inspector__misc_8hpp__incl.png b/_h5_inspector__misc_8hpp__incl.png new file mode 100644 index 000000000..154c06969 Binary files /dev/null and b/_h5_inspector__misc_8hpp__incl.png differ diff --git a/_h5_inspector__misc_8hpp_source.html b/_h5_inspector__misc_8hpp_source.html new file mode 100644 index 000000000..434f3ecee --- /dev/null +++ b/_h5_inspector__misc_8hpp_source.html @@ -0,0 +1,981 @@ + + + + + + + +HighFive: highfive/bits/H5Inspector_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Inspector_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c) 2022 Blue Brain Project
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9
+
10#pragma once
+
11
+
12#include <type_traits>
+
13#include <cstring>
+
14#include <cassert>
+
15#include <vector>
+
16#include <array>
+
17#include <string>
+
18#include <numeric>
+
19
+
20#include "../H5Reference.hpp"
+
21
+
22#include "string_padding.hpp"
+
23
+
24#ifdef H5_USE_BOOST
+
25#include <boost/multi_array.hpp>
+
26// starting Boost 1.64, serialization header must come before ublas
+
27#include <boost/serialization/vector.hpp>
+
28#include <boost/numeric/ublas/matrix.hpp>
+
29#endif
+
30#ifdef H5_USE_EIGEN
+
31#include <Eigen/Eigen>
+
32#endif
+
33
+
34
+
35namespace HighFive {
+
36
+
37namespace details {
+
38
+
39inline bool checkDimensions(const std::vector<size_t>& dims, size_t n_dim_requested) {
+
40 size_t n_dim_actual = dims.size();
+
41
+
42 // We should allow reading scalar from shapes like `(1, 1, 1)`.
+
43 if (n_dim_requested == 0) {
+
44 if (n_dim_actual == 0ul) {
+
45 return true;
+
46 }
+
47
+
48 return size_t(std::count(dims.begin(), dims.end(), 1ul)) == n_dim_actual;
+
49 }
+
50
+
51 // For non-scalar datasets, we can squeeze away singleton dimension, but
+
52 // we never add any.
+
53 if (n_dim_actual < n_dim_requested) {
+
54 return false;
+
55 }
+
56
+
57 // Special case for 1-dimensional arrays, which can squeeze `1`s from either
+
58 // side simultaneously if needed.
+
59 if (n_dim_requested == 1ul) {
+
60 return n_dim_actual >= 1ul &&
+
61 size_t(std::count(dims.begin(), dims.end(), 1ul)) >= n_dim_actual - 1ul;
+
62 }
+
63
+
64 // All other cases strip front only. This avoid unstable behaviour when
+
65 // squeezing singleton dimensions.
+
66 size_t n_dim_excess = n_dim_actual - n_dim_requested;
+
67
+
68 bool squeeze_back = true;
+
69 for (size_t i = 1; i <= n_dim_excess; ++i) {
+
70 if (dims[n_dim_actual - i] != 1) {
+
71 squeeze_back = false;
+
72 break;
+
73 }
+
74 }
+
75
+
76 return squeeze_back;
+
77}
+
78
+
79
+
80inline std::vector<size_t> squeezeDimensions(const std::vector<size_t>& dims,
+
81 size_t n_dim_requested) {
+
82 auto format_error_message = [&]() -> std::string {
+
83 return "Can't interpret dims = " + format_vector(dims) + " as " +
+
84 std::to_string(n_dim_requested) + "-dimensional.";
+
85 };
+
86
+
87 if (n_dim_requested == 0) {
+
88 if (!checkDimensions(dims, n_dim_requested)) {
+
89 throw std::invalid_argument(format_error_message());
+
90 }
+
91
+
92 return {1ul};
+
93 }
+
94
+
95 auto n_dim = dims.size();
+
96 if (n_dim < n_dim_requested) {
+
97 throw std::invalid_argument(format_error_message());
+
98 }
+
99
+
100 if (n_dim_requested == 1ul) {
+
101 size_t non_singleton_dim = size_t(-1);
+
102 for (size_t i = 0; i < n_dim; ++i) {
+
103 if (dims[i] != 1ul) {
+
104 if (non_singleton_dim == size_t(-1)) {
+
105 non_singleton_dim = i;
+
106 } else {
+
107 throw std::invalid_argument(format_error_message());
+
108 }
+
109 }
+
110 }
+
111
+
112 return {dims[std::min(non_singleton_dim, n_dim - 1)]};
+
113 }
+
114
+
115 size_t n_dim_excess = dims.size() - n_dim_requested;
+
116 for (size_t i = 1; i <= n_dim_excess; ++i) {
+
117 if (dims[n_dim - i] != 1) {
+
118 throw std::invalid_argument(format_error_message());
+
119 }
+
120 }
+
121
+
122 return std::vector<size_t>(dims.begin(),
+
123 dims.end() - static_cast<std::ptrdiff_t>(n_dim_excess));
+
124}
+
125} // namespace details
+
126
+
127
+
+
128inline size_t compute_total_size(const std::vector<size_t>& dims) {
+
129 return std::accumulate(dims.begin(), dims.end(), size_t{1u}, std::multiplies<size_t>());
+
130}
+
+
131
+
132template <typename T>
+
133using unqualified_t = typename std::remove_const<typename std::remove_reference<T>::type>::type;
+
134
+
135/*****
+
136inspector<T> {
+
137 using type = T
+
138 // base_type is the base type inside c++ (e.g. std::vector<int> => int)
+
139 using base_type
+
140 // hdf5_type is the base read by hdf5 (c-type) (e.g. std::vector<std::string> => const char*)
+
141 using hdf5_type
+
142
+
143 // Number of dimensions starting from here
+
144 static constexpr size_t recursive_ndim
+
145 // Is the inner type trivially copyable for optimisation
+
146 // If this value is true: data() is mandatory
+
147 // If this value is false: getSizeVal, getSize, serialize, unserialize are mandatory
+
148 static constexpr bool is_trivially_copyable
+
149
+
150 // Reading:
+
151 // Allocate the value following dims (should be recursive)
+
152 static void prepare(type& val, const std::vector<std::size_t> dims)
+
153 // Return the size of the vector pass to/from hdf5 from a vector of dims
+
154 static size_t getSize(const std::vector<size_t>& dims)
+
155 // Return a pointer of the first value of val (for reading)
+
156 static hdf5_type* data(type& val)
+
157 // Take a serialized vector 'in', some dims and copy value to val (for reading)
+
158 static void unserialize(const hdf5_type* in, const std::vector<size_t>&i, type& val)
+
159
+
160
+
161 // Writing:
+
162 // Return the size of the vector pass to/from hdf5 from a value
+
163 static size_t getSizeVal(const type& val)
+
164 // Return a point of the first value of val
+
165 static const hdf5_type* data(const type& val)
+
166 // Take a val and serialize it inside 'out'
+
167 static void serialize(const type& val, hdf5_type* out)
+
168 // Return an array of dimensions of the space needed for writing val
+
169 static std::vector<size_t> getDimensions(const type& val)
+
170}
+
171*****/
+
172
+
173
+
174namespace details {
+
175template <typename T>
+
176struct type_helper {
+
177 using type = unqualified_t<T>;
+
178 using base_type = unqualified_t<T>;
+
179 using hdf5_type = base_type;
+
180
+
181 static constexpr size_t ndim = 0;
+
182 static constexpr size_t recursive_ndim = ndim;
+
183 static constexpr bool is_trivially_copyable = std::is_trivially_copyable<type>::value;
+
184
+
185 static std::vector<size_t> getDimensions(const type& /* val */) {
+
186 return {};
+
187 }
+
188
+
189 static size_t getSizeVal(const type& val) {
+
190 return compute_total_size(getDimensions(val));
+
191 }
+
192
+
193 static size_t getSize(const std::vector<size_t>& dims) {
+
194 return compute_total_size(dims);
+
195 }
+
196
+
197 static void prepare(type& /* val */, const std::vector<size_t>& /* dims */) {}
+
198
+
199 static hdf5_type* data(type& val) {
+
200 static_assert(is_trivially_copyable, "The type is not trivially copyable");
+
201 return &val;
+
202 }
+
203
+
204 static const hdf5_type* data(const type& val) {
+
205 static_assert(is_trivially_copyable, "The type is not trivially copyable");
+
206 return &val;
+
207 }
+
208
+
209 static void serialize(const type& val, hdf5_type* m) {
+
210 static_assert(is_trivially_copyable, "The type is not trivially copyable");
+
211 *m = val;
+
212 }
+
213
+
214 static void unserialize(const hdf5_type* vec,
+
215 const std::vector<size_t>& /* dims */,
+
216 type& val) {
+
217 static_assert(is_trivially_copyable, "The type is not trivially copyable");
+
218 val = vec[0];
+
219 }
+
220};
+
221
+
222template <typename T>
+
223struct inspector: type_helper<T> {};
+
224
+
225enum class Boolean : int8_t {
+
226 HighFiveFalse = 0,
+
227 HighFiveTrue = 1,
+
228};
+
229
+
230template <>
+
231struct inspector<bool>: type_helper<bool> {
+
232 using base_type = Boolean;
+
233 using hdf5_type = int8_t;
+
234
+
235 static constexpr bool is_trivially_copyable = false;
+
236
+
237 static hdf5_type* data(type& /* val */) {
+
238 throw DataSpaceException("A boolean cannot be read directly.");
+
239 }
+
240
+
241 static const hdf5_type* data(const type& /* val */) {
+
242 throw DataSpaceException("A boolean cannot be written directly.");
+
243 }
+
244
+
245 static void unserialize(const hdf5_type* vec,
+
246 const std::vector<size_t>& /* dims */,
+
247 type& val) {
+
248 val = vec[0] != 0 ? true : false;
+
249 }
+
250
+
251 static void serialize(const type& val, hdf5_type* m) {
+
252 *m = val ? 1 : 0;
+
253 }
+
254};
+
255
+
256template <>
+
257struct inspector<std::string>: type_helper<std::string> {
+
258 using hdf5_type = const char*;
+
259
+
260 static hdf5_type* data(type& /* val */) {
+
261 throw DataSpaceException("A std::string cannot be read directly.");
+
262 }
+
263
+
264 static const hdf5_type* data(const type& /* val */) {
+
265 throw DataSpaceException("A std::string cannot be written directly.");
+
266 }
+
267
+
268 template <class It>
+
269 static void serialize(const type& val, It m) {
+
270 (*m).assign(val.data(), val.size(), StringPadding::NullTerminated);
+
271 }
+
272
+
273 template <class It>
+
274 static void unserialize(const It& vec, const std::vector<size_t>& /* dims */, type& val) {
+
275 const auto& view = *vec;
+
276 val.assign(view.data(), view.length());
+
277 }
+
278};
+
279
+
280template <>
+
281struct inspector<Reference>: type_helper<Reference> {
+
282 using hdf5_type = hobj_ref_t;
+
283
+
284 static constexpr bool is_trivially_copyable = false;
+
285
+
286 static hdf5_type* data(type& /* val */) {
+
287 throw DataSpaceException("A Reference cannot be read directly.");
+
288 }
+
289
+
290 static const hdf5_type* data(const type& /* val */) {
+
291 throw DataSpaceException("A Reference cannot be written directly.");
+
292 }
+
293
+
294 static void serialize(const type& val, hdf5_type* m) {
+
295 hobj_ref_t ref;
+
296 val.create_ref(&ref);
+
297 *m = ref;
+
298 }
+
299
+
300 static void unserialize(const hdf5_type* vec,
+
301 const std::vector<size_t>& /* dims */,
+
302 type& val) {
+
303 val = type{vec[0]};
+
304 }
+
305};
+
306
+
307template <size_t N>
+
308struct inspector<FixedLenStringArray<N>> {
+
309 using type = FixedLenStringArray<N>;
+
310 using value_type = char*;
+
311 using base_type = FixedLenStringArray<N>;
+
312 using hdf5_type = char;
+
313
+
314 static constexpr size_t ndim = 1;
+
315 static constexpr size_t recursive_ndim = ndim;
+
316 static constexpr bool is_trivially_copyable = false;
+
317
+
318 static std::vector<size_t> getDimensions(const type& val) {
+
319 return std::vector<size_t>{val.size()};
+
320 }
+
321
+
322 static size_t getSizeVal(const type& val) {
+
323 return N * compute_total_size(getDimensions(val));
+
324 }
+
325
+
326 static size_t getSize(const std::vector<size_t>& dims) {
+
327 return N * compute_total_size(dims);
+
328 }
+
329
+
330 static void prepare(type& /* val */, const std::vector<size_t>& dims) {
+
331 if (dims[0] > N) {
+
332 std::ostringstream os;
+
333 os << "Size of FixedlenStringArray (" << N << ") is too small for dims (" << dims[0]
+
334 << ").";
+
335 throw DataSpaceException(os.str());
+
336 }
+
337 }
+
338
+
339 static hdf5_type* data(type& val) {
+
340 return val.data();
+
341 }
+
342
+
343 static const hdf5_type* data(const type& val) {
+
344 return val.data();
+
345 }
+
346
+
347 static void serialize(const type& val, hdf5_type* m) {
+
348 for (size_t i = 0; i < val.size(); ++i) {
+
349 std::memcpy(m + i * N, val[i], N);
+
350 }
+
351 }
+
352
+
353 static void unserialize(const hdf5_type* vec, const std::vector<size_t>& dims, type& val) {
+
354 for (size_t i = 0; i < dims[0]; ++i) {
+
355 std::array<char, N> s;
+
356 std::memcpy(s.data(), vec + (i * N), N);
+
357 val.push_back(s);
+
358 }
+
359 }
+
360};
+
361
+
362template <typename T>
+
363struct inspector<std::vector<T>> {
+
364 using type = std::vector<T>;
+
365 using value_type = unqualified_t<T>;
+
366 using base_type = typename inspector<value_type>::base_type;
+
367 using hdf5_type = typename inspector<value_type>::hdf5_type;
+
368
+
369 static constexpr size_t ndim = 1;
+
370 static constexpr size_t recursive_ndim = ndim + inspector<value_type>::recursive_ndim;
+
371 static constexpr bool is_trivially_copyable = std::is_trivially_copyable<value_type>::value &&
+
372 inspector<value_type>::is_trivially_copyable;
+
373
+
374 static std::vector<size_t> getDimensions(const type& val) {
+
375 std::vector<size_t> sizes(recursive_ndim, 1ul);
+
376 sizes[0] = val.size();
+
377 if (!val.empty()) {
+
378 auto s = inspector<value_type>::getDimensions(val[0]);
+
379 assert(s.size() + ndim == sizes.size());
+
380 for (size_t i = 0; i < s.size(); ++i) {
+
381 sizes[i + ndim] = s[i];
+
382 }
+
383 }
+
384 return sizes;
+
385 }
+
386
+
387 static size_t getSizeVal(const type& val) {
+
388 return compute_total_size(getDimensions(val));
+
389 }
+
390
+
391 static size_t getSize(const std::vector<size_t>& dims) {
+
392 return compute_total_size(dims);
+
393 }
+
394
+
395 static void prepare(type& val, const std::vector<size_t>& dims) {
+
396 val.resize(dims[0]);
+
397 std::vector<size_t> next_dims(dims.begin() + 1, dims.end());
+
398 for (auto&& e: val) {
+
399 inspector<value_type>::prepare(e, next_dims);
+
400 }
+
401 }
+
402
+
403 static hdf5_type* data(type& val) {
+
404 return inspector<value_type>::data(val[0]);
+
405 }
+
406
+
407 static const hdf5_type* data(const type& val) {
+
408 return inspector<value_type>::data(val[0]);
+
409 }
+
410
+
411 template <class It>
+
412 static void serialize(const type& val, It m) {
+
413 size_t subsize = inspector<value_type>::getSizeVal(val[0]);
+
414 for (auto&& e: val) {
+
415 inspector<value_type>::serialize(e, m);
+
416 m += subsize;
+
417 }
+
418 }
+
419
+
420 template <class It>
+
421 static void unserialize(const It& vec_align, const std::vector<size_t>& dims, type& val) {
+
422 std::vector<size_t> next_dims(dims.begin() + 1, dims.end());
+
423 size_t next_size = compute_total_size(next_dims);
+
424 for (size_t i = 0; i < dims[0]; ++i) {
+
425 inspector<value_type>::unserialize(vec_align + i * next_size, next_dims, val[i]);
+
426 }
+
427 }
+
428};
+
429
+
430template <>
+
431struct inspector<std::vector<bool>> {
+
432 using type = std::vector<bool>;
+
433 using value_type = bool;
+
434 using base_type = Boolean;
+
435 using hdf5_type = uint8_t;
+
436
+
437 static constexpr size_t ndim = 1;
+
438 static constexpr size_t recursive_ndim = ndim;
+
439 static constexpr bool is_trivially_copyable = false;
+
440
+
441 static std::vector<size_t> getDimensions(const type& val) {
+
442 std::vector<size_t> sizes{val.size()};
+
443 return sizes;
+
444 }
+
445
+
446 static size_t getSizeVal(const type& val) {
+
447 return val.size();
+
448 }
+
449
+
450 static size_t getSize(const std::vector<size_t>& dims) {
+
451 if (dims.size() > 1) {
+
452 throw DataSpaceException("std::vector<bool> is only 1 dimension.");
+
453 }
+
454 return dims[0];
+
455 }
+
456
+
457 static void prepare(type& val, const std::vector<size_t>& dims) {
+
458 if (dims.size() > 1) {
+
459 throw DataSpaceException("std::vector<bool> is only 1 dimension.");
+
460 }
+
461 val.resize(dims[0]);
+
462 }
+
463
+
464 static hdf5_type* data(type& /* val */) {
+
465 throw DataSpaceException("A std::vector<bool> cannot be read directly.");
+
466 }
+
467
+
468 static const hdf5_type* data(const type& /* val */) {
+
469 throw DataSpaceException("A std::vector<bool> cannot be written directly.");
+
470 }
+
471
+
472 static void serialize(const type& val, hdf5_type* m) {
+
473 for (size_t i = 0; i < val.size(); ++i) {
+
474 m[i] = val[i] ? 1 : 0;
+
475 }
+
476 }
+
477
+
478 static void unserialize(const hdf5_type* vec_align,
+
479 const std::vector<size_t>& dims,
+
480 type& val) {
+
481 for (size_t i = 0; i < dims[0]; ++i) {
+
482 val[i] = vec_align[i] != 0 ? true : false;
+
483 }
+
484 }
+
485};
+
486
+
487template <typename T, size_t N>
+
488struct inspector<std::array<T, N>> {
+
489 using type = std::array<T, N>;
+
490 using value_type = unqualified_t<T>;
+
491 using base_type = typename inspector<value_type>::base_type;
+
492 using hdf5_type = typename inspector<value_type>::hdf5_type;
+
493
+
494 static constexpr size_t ndim = 1;
+
495 static constexpr size_t recursive_ndim = ndim + inspector<value_type>::recursive_ndim;
+
496 static constexpr bool is_trivially_copyable = std::is_trivially_copyable<value_type>::value &&
+
497 sizeof(type) == N * sizeof(T) &&
+
498 inspector<value_type>::is_trivially_copyable;
+
499
+
500 static std::vector<size_t> getDimensions(const type& val) {
+
501 std::vector<size_t> sizes{N};
+
502 if (!val.empty()) {
+
503 auto s = inspector<value_type>::getDimensions(val[0]);
+
504 sizes.insert(sizes.end(), s.begin(), s.end());
+
505 }
+
506 return sizes;
+
507 }
+
508
+
509 static size_t getSizeVal(const type& val) {
+
510 return compute_total_size(getDimensions(val));
+
511 }
+
512
+
513 static size_t getSize(const std::vector<size_t>& dims) {
+
514 return compute_total_size(dims);
+
515 }
+
516
+
517 static void prepare(type& /* val */, const std::vector<size_t>& dims) {
+
518 if (dims[0] > N) {
+
519 std::ostringstream os;
+
520 os << "Size of std::array (" << N << ") is too small for dims (" << dims[0] << ").";
+
521 throw DataSpaceException(os.str());
+
522 }
+
523 }
+
524
+
525 static hdf5_type* data(type& val) {
+
526 return inspector<value_type>::data(val[0]);
+
527 }
+
528
+
529 static const hdf5_type* data(const type& val) {
+
530 return inspector<value_type>::data(val[0]);
+
531 }
+
532
+
533 template <class It>
+
534 static void serialize(const type& val, It m) {
+
535 size_t subsize = inspector<value_type>::getSizeVal(val[0]);
+
536 for (auto& e: val) {
+
537 inspector<value_type>::serialize(e, m);
+
538 m += subsize;
+
539 }
+
540 }
+
541
+
542 template <class It>
+
543 static void unserialize(const It& vec_align, const std::vector<size_t>& dims, type& val) {
+
544 if (dims[0] != N) {
+
545 std::ostringstream os;
+
546 os << "Impossible to pair DataSet with " << dims[0] << " elements into an array with "
+
547 << N << " elements.";
+
548 throw DataSpaceException(os.str());
+
549 }
+
550 std::vector<size_t> next_dims(dims.begin() + 1, dims.end());
+
551 size_t next_size = compute_total_size(next_dims);
+
552 for (size_t i = 0; i < dims[0]; ++i) {
+
553 inspector<value_type>::unserialize(vec_align + i * next_size, next_dims, val[i]);
+
554 }
+
555 }
+
556};
+
557
+
558// Cannot be use for reading
+
559template <typename T>
+
560struct inspector<T*> {
+
561 using type = T*;
+
562 using value_type = unqualified_t<T>;
+
563 using base_type = typename inspector<value_type>::base_type;
+
564 using hdf5_type = typename inspector<value_type>::hdf5_type;
+
565
+
566 static constexpr size_t ndim = 1;
+
567 static constexpr size_t recursive_ndim = ndim + inspector<value_type>::recursive_ndim;
+
568 static constexpr bool is_trivially_copyable = std::is_trivially_copyable<value_type>::value &&
+
569 inspector<value_type>::is_trivially_copyable;
+
570
+
571 static size_t getSizeVal(const type& /* val */) {
+
572 throw DataSpaceException("Not possible to have size of a T*");
+
573 }
+
574
+
575 static std::vector<size_t> getDimensions(const type& /* val */) {
+
576 throw DataSpaceException("Not possible to have size of a T*");
+
577 }
+
578
+
579 static const hdf5_type* data(const type& val) {
+
580 return reinterpret_cast<const hdf5_type*>(val);
+
581 }
+
582
+
583 /* it works because there is only T[][][] currently
+
584 we will fix it one day */
+
585 static void serialize(const type& /* val */, hdf5_type* /* m */) {
+
586 throw DataSpaceException("Not possible to serialize a T*");
+
587 }
+
588};
+
589
+
590// Cannot be use for reading
+
591template <typename T, size_t N>
+
592struct inspector<T[N]> {
+
593 using type = T[N];
+
594 using value_type = unqualified_t<T>;
+
595 using base_type = typename inspector<value_type>::base_type;
+
596 using hdf5_type = typename inspector<value_type>::hdf5_type;
+
597
+
598 static constexpr size_t ndim = 1;
+
599 static constexpr size_t recursive_ndim = ndim + inspector<value_type>::recursive_ndim;
+
600 static constexpr bool is_trivially_copyable = std::is_trivially_copyable<value_type>::value &&
+
601 inspector<value_type>::is_trivially_copyable;
+
602
+
603 static size_t getSizeVal(const type& val) {
+
604 return compute_total_size(getDimensions(val));
+
605 }
+
606
+
607 static std::vector<size_t> getDimensions(const type& val) {
+
608 std::vector<size_t> sizes{N};
+
609 if (N > 0) {
+
610 auto s = inspector<value_type>::getDimensions(val[0]);
+
611 sizes.insert(sizes.end(), s.begin(), s.end());
+
612 }
+
613 return sizes;
+
614 }
+
615
+
616 static const hdf5_type* data(const type& val) {
+
617 return inspector<value_type>::data(val[0]);
+
618 }
+
619
+
620 /* it works because there is only T[][][] currently
+
621 we will fix it one day */
+
622 static void serialize(const type& val, hdf5_type* m) {
+
623 size_t subsize = inspector<value_type>::getSizeVal(val[0]);
+
624 for (size_t i = 0; i < N; ++i) {
+
625 inspector<value_type>::serialize(val[i], m + i * subsize);
+
626 }
+
627 }
+
628};
+
629
+
630#ifdef H5_USE_EIGEN
+
631template <typename T, int M, int N>
+
632struct inspector<Eigen::Matrix<T, M, N>> {
+
633 using type = Eigen::Matrix<T, M, N>;
+
634 using value_type = T;
+
635 using base_type = typename inspector<value_type>::base_type;
+
636 using hdf5_type = base_type;
+
637
+
638 static constexpr size_t ndim = 2;
+
639 static constexpr size_t recursive_ndim = ndim + inspector<value_type>::recursive_ndim;
+
640 static constexpr bool is_trivially_copyable = std::is_trivially_copyable<value_type>::value &&
+
641 inspector<value_type>::is_trivially_copyable;
+
642
+
643
+
644 static void assert_not_buggy(Eigen::Index nrows, Eigen::Index ncols) {
+
645 if (nrows > 1 && ncols > 1) {
+
646 throw std::runtime_error(
+
647 "HighFive has been broken for Eigen::Matrix. Please check "
+
648 "https://github.com/BlueBrain/HighFive/issues/532.");
+
649 }
+
650 }
+
651
+
652 static std::vector<size_t> getDimensions(const type& val) {
+
653 assert_not_buggy(val.rows(), val.cols());
+
654
+
655 std::vector<size_t> sizes{static_cast<size_t>(val.rows()), static_cast<size_t>(val.cols())};
+
656 auto s = inspector<value_type>::getDimensions(val.data()[0]);
+
657 sizes.insert(sizes.end(), s.begin(), s.end());
+
658 return sizes;
+
659 }
+
660
+
661 static size_t getSizeVal(const type& val) {
+
662 return compute_total_size(getDimensions(val));
+
663 }
+
664
+
665 static size_t getSize(const std::vector<size_t>& dims) {
+
666 return compute_total_size(dims);
+
667 }
+
668
+
669 static void prepare(type& val, const std::vector<size_t>& dims) {
+
670 if (dims[0] != static_cast<size_t>(val.rows()) ||
+
671 dims[1] != static_cast<size_t>(val.cols())) {
+
672 val.resize(static_cast<typename type::Index>(dims[0]),
+
673 static_cast<typename type::Index>(dims[1]));
+
674 }
+
675
+
676 assert_not_buggy(val.rows(), val.cols());
+
677 }
+
678
+
679 static hdf5_type* data(type& val) {
+
680 assert_not_buggy(val.rows(), val.cols());
+
681 return inspector<value_type>::data(*val.data());
+
682 }
+
683
+
684 static const hdf5_type* data(const type& val) {
+
685 assert_not_buggy(val.rows(), val.cols());
+
686 return inspector<value_type>::data(*val.data());
+
687 }
+
688
+
689 static void serialize(const type& val, hdf5_type* m) {
+
690 assert_not_buggy(val.rows(), val.cols());
+
691 std::memcpy(m, val.data(), static_cast<size_t>(val.size()) * sizeof(hdf5_type));
+
692 }
+
693
+
694 static void unserialize(const hdf5_type* vec_align,
+
695 const std::vector<size_t>& dims,
+
696 type& val) {
+
697 assert_not_buggy(val.rows(), val.cols());
+
698 if (dims.size() < 2) {
+
699 std::ostringstream os;
+
700 os << "Impossible to pair DataSet with " << dims.size()
+
701 << " dimensions into an eigen-matrix.";
+
702 throw DataSpaceException(os.str());
+
703 }
+
704 std::memcpy(val.data(), vec_align, compute_total_size(dims) * sizeof(hdf5_type));
+
705 }
+
706};
+
707#endif
+
708
+
709#ifdef H5_USE_BOOST
+
710template <typename T, size_t Dims>
+
711struct inspector<boost::multi_array<T, Dims>> {
+
712 using type = boost::multi_array<T, Dims>;
+
713 using value_type = T;
+
714 using base_type = typename inspector<value_type>::base_type;
+
715 using hdf5_type = typename inspector<value_type>::hdf5_type;
+
716
+
717 static constexpr size_t ndim = Dims;
+
718 static constexpr size_t recursive_ndim = ndim + inspector<value_type>::recursive_ndim;
+
719 static constexpr bool is_trivially_copyable = std::is_trivially_copyable<value_type>::value &&
+
720 inspector<value_type>::is_trivially_copyable;
+
721
+
722 static std::vector<size_t> getDimensions(const type& val) {
+
723 std::vector<size_t> sizes;
+
724 for (size_t i = 0; i < ndim; ++i) {
+
725 sizes.push_back(val.shape()[i]);
+
726 }
+
727 auto s = inspector<value_type>::getDimensions(val.data()[0]);
+
728 sizes.insert(sizes.end(), s.begin(), s.end());
+
729 return sizes;
+
730 }
+
731
+
732 static size_t getSizeVal(const type& val) {
+
733 return compute_total_size(getDimensions(val));
+
734 }
+
735
+
736 static size_t getSize(const std::vector<size_t>& dims) {
+
737 return compute_total_size(dims);
+
738 }
+
739
+
740 static void prepare(type& val, const std::vector<size_t>& dims) {
+
741 if (dims.size() < ndim) {
+
742 std::ostringstream os;
+
743 os << "Only '" << dims.size() << "' given but boost::multi_array is of size '" << ndim
+
744 << "'.";
+
745 throw DataSpaceException(os.str());
+
746 }
+
747 boost::array<typename type::index, Dims> ext;
+
748 std::copy(dims.begin(), dims.begin() + ndim, ext.begin());
+
749 val.resize(ext);
+
750 std::vector<size_t> next_dims(dims.begin() + Dims, dims.end());
+
751 std::size_t size = std::accumulate(dims.begin(),
+
752 dims.begin() + Dims,
+
753 std::size_t{1},
+
754 std::multiplies<size_t>());
+
755 for (size_t i = 0; i < size; ++i) {
+
756 inspector<value_type>::prepare(*(val.origin() + i), next_dims);
+
757 }
+
758 }
+
759
+
760 static hdf5_type* data(type& val) {
+
761 return inspector<value_type>::data(*val.data());
+
762 }
+
763
+
764 static const hdf5_type* data(const type& val) {
+
765 return inspector<value_type>::data(*val.data());
+
766 }
+
767
+
768 template <class It>
+
769 static void serialize(const type& val, It m) {
+
770 size_t size = val.num_elements();
+
771 size_t subsize = inspector<value_type>::getSizeVal(*val.origin());
+
772 for (size_t i = 0; i < size; ++i) {
+
773 inspector<value_type>::serialize(*(val.origin() + i), m + i * subsize);
+
774 }
+
775 }
+
776
+
777 template <class It>
+
778 static void unserialize(It vec_align, const std::vector<size_t>& dims, type& val) {
+
779 std::vector<size_t> next_dims(dims.begin() + ndim, dims.end());
+
780 size_t subsize = compute_total_size(next_dims);
+
781 for (size_t i = 0; i < val.num_elements(); ++i) {
+
782 inspector<value_type>::unserialize(vec_align + i * subsize,
+
783 next_dims,
+
784 *(val.origin() + i));
+
785 }
+
786 }
+
787};
+
788
+
789template <typename T>
+
790struct inspector<boost::numeric::ublas::matrix<T>> {
+
791 using type = boost::numeric::ublas::matrix<T>;
+
792 using value_type = unqualified_t<T>;
+
793 using base_type = typename inspector<value_type>::base_type;
+
794 using hdf5_type = typename inspector<value_type>::hdf5_type;
+
795
+
796 static constexpr size_t ndim = 2;
+
797 static constexpr size_t recursive_ndim = ndim + inspector<value_type>::recursive_ndim;
+
798 static constexpr bool is_trivially_copyable = std::is_trivially_copyable<value_type>::value &&
+
799 inspector<value_type>::is_trivially_copyable;
+
800
+
801 static std::vector<size_t> getDimensions(const type& val) {
+
802 std::vector<size_t> sizes{val.size1(), val.size2()};
+
803 auto s = inspector<value_type>::getDimensions(val(0, 0));
+
804 sizes.insert(sizes.end(), s.begin(), s.end());
+
805 return sizes;
+
806 }
+
807
+
808 static size_t getSizeVal(const type& val) {
+
809 return compute_total_size(getDimensions(val));
+
810 }
+
811
+
812 static size_t getSize(const std::vector<size_t>& dims) {
+
813 return compute_total_size(dims);
+
814 }
+
815
+
816 static void prepare(type& val, const std::vector<size_t>& dims) {
+
817 if (dims.size() < ndim) {
+
818 std::ostringstream os;
+
819 os << "Impossible to pair DataSet with " << dims.size() << " dimensions into a " << ndim
+
820 << " boost::numeric::ublas::matrix";
+
821 throw DataSpaceException(os.str());
+
822 }
+
823 val.resize(dims[0], dims[1], false);
+
824 }
+
825
+
826 static hdf5_type* data(type& val) {
+
827 return inspector<value_type>::data(val(0, 0));
+
828 }
+
829
+
830 static const hdf5_type* data(const type& val) {
+
831 return inspector<value_type>::data(val(0, 0));
+
832 }
+
833
+
834 static void serialize(const type& val, hdf5_type* m) {
+
835 size_t size = val.size1() * val.size2();
+
836 size_t subsize = inspector<value_type>::getSizeVal(val(0, 0));
+
837 for (size_t i = 0; i < size; ++i) {
+
838 inspector<value_type>::serialize(*(&val(0, 0) + i), m + i * subsize);
+
839 }
+
840 }
+
841
+
842 static void unserialize(const hdf5_type* vec_align,
+
843 const std::vector<size_t>& dims,
+
844 type& val) {
+
845 std::vector<size_t> next_dims(dims.begin() + ndim, dims.end());
+
846 size_t subsize = compute_total_size(next_dims);
+
847 size_t size = val.size1() * val.size2();
+
848 for (size_t i = 0; i < size; ++i) {
+
849 inspector<value_type>::unserialize(vec_align + i * subsize,
+
850 next_dims,
+
851 *(&val(0, 0) + i));
+
852 }
+
853 }
+
854};
+
855#endif
+
856
+
857} // namespace details
+
858} // namespace HighFive
+
Exception specific to HighFive DataSpace interface.
Definition H5Exception.hpp:112
+
A structure representing a set of fixed-length strings.
Definition H5DataType.hpp:358
+
std::size_t size() const noexcept
Definition H5DataType.hpp:402
+
An HDF5 (object) reference type.
Definition H5Reference.hpp:33
+
Definition H5_definitions.hpp:15
+
typename std::remove_const< typename std::remove_reference< T >::type >::type unqualified_t
Definition H5Inspector_misc.hpp:133
+ +
size_t compute_total_size(const std::vector< size_t > &dims)
Definition H5Inspector_misc.hpp:128
+ +
+
+ + + + diff --git a/_h5_iterables__misc_8hpp.html b/_h5_iterables__misc_8hpp.html new file mode 100644 index 000000000..421caa306 --- /dev/null +++ b/_h5_iterables__misc_8hpp.html @@ -0,0 +1,186 @@ + + + + + + + +HighFive: highfive/bits/H5Iterables_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Iterables_misc.hpp File Reference
+
+
+
#include <exception>
+#include <string>
+#include <vector>
+#include <H5Ipublic.h>
+
+Include dependency graph for H5Iterables_misc.hpp:
+
+
+ + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_iterables__misc_8hpp__dep__incl.map b/_h5_iterables__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..34f822c9f --- /dev/null +++ b/_h5_iterables__misc_8hpp__dep__incl.map @@ -0,0 +1,44 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_iterables__misc_8hpp__dep__incl.md5 b/_h5_iterables__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..d7461e092 --- /dev/null +++ b/_h5_iterables__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +91502155dfb0fb0265eac2013a777565 \ No newline at end of file diff --git a/_h5_iterables__misc_8hpp__dep__incl.png b/_h5_iterables__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..91991f526 Binary files /dev/null and b/_h5_iterables__misc_8hpp__dep__incl.png differ diff --git a/_h5_iterables__misc_8hpp__incl.map b/_h5_iterables__misc_8hpp__incl.map new file mode 100644 index 000000000..182a5595e --- /dev/null +++ b/_h5_iterables__misc_8hpp__incl.map @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/_h5_iterables__misc_8hpp__incl.md5 b/_h5_iterables__misc_8hpp__incl.md5 new file mode 100644 index 000000000..fecc8c020 --- /dev/null +++ b/_h5_iterables__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +c5b16bf6f91b747de2f8bfba4b5f8a3c \ No newline at end of file diff --git a/_h5_iterables__misc_8hpp__incl.png b/_h5_iterables__misc_8hpp__incl.png new file mode 100644 index 000000000..0a189037f Binary files /dev/null and b/_h5_iterables__misc_8hpp__incl.png differ diff --git a/_h5_iterables__misc_8hpp_source.html b/_h5_iterables__misc_8hpp_source.html new file mode 100644 index 000000000..22d8a1a79 --- /dev/null +++ b/_h5_iterables__misc_8hpp_source.html @@ -0,0 +1,167 @@ + + + + + + + +HighFive: highfive/bits/H5Iterables_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Iterables_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <exception>
+
12#include <string>
+
13#include <vector>
+
14
+
15#include <H5Ipublic.h>
+
16
+
17namespace HighFive {
+
18
+
19namespace details {
+
20
+
21// iterator for H5 iterate
+
22
+
23struct HighFiveIterateData {
+
24 inline HighFiveIterateData(std::vector<std::string>& my_names)
+
25 : names(my_names)
+
26 , err(NULL) {}
+
27
+
28 std::vector<std::string>& names;
+
29 std::exception* err;
+
30
+
31 inline void throwIfError() {
+
32 if (err) {
+
33 throw *err;
+
34 }
+
35 }
+
36};
+
37
+
38template <typename InfoType>
+
39inline herr_t internal_high_five_iterate(hid_t /*id*/,
+
40 const char* name,
+
41 const InfoType* /*info*/,
+
42 void* op_data) {
+
43 auto* data = static_cast<HighFiveIterateData*>(op_data);
+
44 try {
+
45 data->names.emplace_back(name);
+
46 return 0;
+
47 } catch (...) {
+
48 data->err = new ObjectException("Exception during H5Iterate, abort listing");
+
49 }
+
50 return -1;
+
51}
+
52
+
53} // namespace details
+
54} // namespace HighFive
+
Definition H5_definitions.hpp:15
+
+
+ + + + diff --git a/_h5_node__traits_8hpp.html b/_h5_node__traits_8hpp.html new file mode 100644 index 000000000..0c7ab695d --- /dev/null +++ b/_h5_node__traits_8hpp.html @@ -0,0 +1,335 @@ + + + + + + + +HighFive: highfive/bits/H5Node_traits.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Node_traits.hpp File Reference
+
+
+
#include <string>
+#include "../H5PropertyList.hpp"
+#include "H5_definitions.hpp"
+#include "H5Converter_misc.hpp"
+
+Include dependency graph for H5Node_traits.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  HighFive::NodeTraits< Derivate >
 NodeTraits: Base class for Group and File. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+ + + + + + +

+Enumerations

enum class  HighFive::IndexType : std::underlying_type< H5_index_t >::type { HighFive::NAME = H5_INDEX_NAME +, HighFive::CRT_ORDER = H5_INDEX_CRT_ORDER + }
 
enum class  HighFive::LinkType { HighFive::Hard +, HighFive::Soft +, HighFive::External +, HighFive::Other + }
 The possible types of group entries (link concept) More...
 
+
+
+ + + + diff --git a/_h5_node__traits_8hpp.js b/_h5_node__traits_8hpp.js new file mode 100644 index 000000000..30cba0326 --- /dev/null +++ b/_h5_node__traits_8hpp.js @@ -0,0 +1,14 @@ +var _h5_node__traits_8hpp = +[ + [ "HighFive::NodeTraits< Derivate >", "class_high_five_1_1_node_traits.html", "class_high_five_1_1_node_traits" ], + [ "IndexType", "_h5_node__traits_8hpp.html#afed91f5950b7a58ec51a33d260773996", [ + [ "NAME", "_h5_node__traits_8hpp.html#afed91f5950b7a58ec51a33d260773996aad32e604e17467fc435538334fbddf3e", null ], + [ "CRT_ORDER", "_h5_node__traits_8hpp.html#afed91f5950b7a58ec51a33d260773996ac83c60110da7010a6dd3168fb2c8b8a7", null ] + ] ], + [ "LinkType", "_h5_node__traits_8hpp.html#abe5895b8113887accd6bff2392b24c40", [ + [ "Hard", "_h5_node__traits_8hpp.html#abe5895b8113887accd6bff2392b24c40a3656183169810334a96b91129dc9d881", null ], + [ "Soft", "_h5_node__traits_8hpp.html#abe5895b8113887accd6bff2392b24c40a682160fc6ad12f783f70608a9b46b9b9", null ], + [ "External", "_h5_node__traits_8hpp.html#abe5895b8113887accd6bff2392b24c40ab206a1b4ea1097761f78e8876f6da779", null ], + [ "Other", "_h5_node__traits_8hpp.html#abe5895b8113887accd6bff2392b24c40a6311ae17c1ee52b36e68aaf4ad066387", null ] + ] ] +]; \ No newline at end of file diff --git a/_h5_node__traits_8hpp__dep__incl.map b/_h5_node__traits_8hpp__dep__incl.map new file mode 100644 index 000000000..b653134ef --- /dev/null +++ b/_h5_node__traits_8hpp__dep__incl.map @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_node__traits_8hpp__dep__incl.md5 b/_h5_node__traits_8hpp__dep__incl.md5 new file mode 100644 index 000000000..d5dc349ff --- /dev/null +++ b/_h5_node__traits_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +4fb7a3c2795ba9c017f6c435e50bc410 \ No newline at end of file diff --git a/_h5_node__traits_8hpp__dep__incl.png b/_h5_node__traits_8hpp__dep__incl.png new file mode 100644 index 000000000..2c6ec2a8f Binary files /dev/null and b/_h5_node__traits_8hpp__dep__incl.png differ diff --git a/_h5_node__traits_8hpp__incl.map b/_h5_node__traits_8hpp__incl.map new file mode 100644 index 000000000..6229802bf --- /dev/null +++ b/_h5_node__traits_8hpp__incl.map @@ -0,0 +1,137 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_node__traits_8hpp__incl.md5 b/_h5_node__traits_8hpp__incl.md5 new file mode 100644 index 000000000..e6514752c --- /dev/null +++ b/_h5_node__traits_8hpp__incl.md5 @@ -0,0 +1 @@ +ad4b1f1a9e8742b50eee3c34c871f054 \ No newline at end of file diff --git a/_h5_node__traits_8hpp__incl.png b/_h5_node__traits_8hpp__incl.png new file mode 100644 index 000000000..f89b718d5 Binary files /dev/null and b/_h5_node__traits_8hpp__incl.png differ diff --git a/_h5_node__traits_8hpp_source.html b/_h5_node__traits_8hpp_source.html new file mode 100644 index 000000000..db5bc7618 --- /dev/null +++ b/_h5_node__traits_8hpp_source.html @@ -0,0 +1,311 @@ + + + + + + + +HighFive: highfive/bits/H5Node_traits.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Node_traits.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <string>
+
12
+
13#include "../H5PropertyList.hpp"
+
14#include "H5_definitions.hpp"
+
15#include "H5Converter_misc.hpp"
+
16
+
17namespace HighFive {
+
18
+
+
19enum class IndexType : std::underlying_type<H5_index_t>::type {
+
20 NAME = H5_INDEX_NAME,
+
21 CRT_ORDER = H5_INDEX_CRT_ORDER,
+
22};
+
+
23
+
27template <typename Derivate>
+
+ +
29 public:
+
40 DataSet createDataSet(const std::string& dataset_name,
+
41 const DataSpace& space,
+
42 const DataType& type,
+ + +
45 bool parents = true);
+
46
+
56 template <typename T,
+
57 typename std::enable_if<
+
58 std::is_same<typename details::inspector<T>::base_type, details::Boolean>::value,
+
59 int>::type* = nullptr>
+
60 DataSet createDataSet(const std::string& dataset_name,
+
61 const DataSpace& space,
+ + +
64 bool parents = true);
+
65
+
66 template <typename T,
+
67 typename std::enable_if<
+
68 !std::is_same<typename details::inspector<T>::base_type, details::Boolean>::value,
+
69 int>::type* = nullptr>
+
70 DataSet createDataSet(const std::string& dataset_name,
+
71 const DataSpace& space,
+ + +
74 bool parents = true);
+
75
+
86 template <typename T>
+
87 DataSet createDataSet(const std::string& dataset_name,
+
88 const T& data,
+ + +
91 bool parents = true);
+
92
+
93
+
94 template <std::size_t N>
+
95 DataSet createDataSet(const std::string& dataset_name,
+
96 const FixedLenStringArray<N>& data,
+ + +
99 bool parents = true);
+
100
+
106 DataSet getDataSet(const std::string& dataset_name,
+
107 const DataSetAccessProps& accessProps = DataSetAccessProps::Default()) const;
+
108
+
114 Group createGroup(const std::string& group_name, bool parents = true);
+
115
+
122 Group createGroup(const std::string& group_name,
+
123 const GroupCreateProps& createProps,
+
124 bool parents = true);
+
125
+
130 Group getGroup(const std::string& group_name) const;
+
131
+ +
137 const std::string& type_name,
+
138 const DataTypeAccessProps& accessProps = DataTypeAccessProps::Default()) const;
+
139
+
143 size_t getNumberObjects() const;
+
144
+
148 std::string getObjectName(size_t index) const;
+
149
+
156 bool rename(const std::string& src_path,
+
157 const std::string& dest_path,
+
158 bool parents = true) const;
+
159
+
166 std::vector<std::string> listObjectNames(IndexType idx_type = IndexType::NAME) const;
+
167
+
172 bool exist(const std::string& node_name) const;
+
173
+
177 void unlink(const std::string& node_name) const;
+
178
+
182 LinkType getLinkType(const std::string& node_name) const;
+
183
+
187 ObjectType getObjectType(const std::string& node_name) const;
+
188
+
192 template <typename T, typename = decltype(&T::getPath)>
+
+
193 void createSoftLink(const std::string& linkName, const T& obj) {
+
194 static_assert(!std::is_same<T, Attribute>::value,
+
195 "hdf5 doesn't support soft links to Attributes");
+
196 createSoftLink(linkName, obj.getPath());
+
197 }
+
+
198
+
206 void createSoftLink(const std::string& link_name,
+
207 const std::string& obj_path,
+
208 LinkCreateProps linkCreateProps = LinkCreateProps(),
+
209 const LinkAccessProps& linkAccessProps = LinkAccessProps(),
+
210 const bool parents = true);
+
211
+
212 void createExternalLink(const std::string& link_name,
+
213 const std::string& h5_file,
+
214 const std::string& obj_path,
+
215 LinkCreateProps linkCreateProps = LinkCreateProps(),
+
216 const LinkAccessProps& linkAccessProps = LinkAccessProps(),
+
217 const bool parents = true);
+
218
+
226 template <typename T, typename = decltype(&T::getPath)>
+
227 void createHardLink(const std::string& link_name,
+
228 const T& target_obj,
+
229 LinkCreateProps linkCreateProps = LinkCreateProps(),
+
230 const LinkAccessProps& linkAccessProps = LinkAccessProps(),
+
231 const bool parents = true);
+
232
+
233 private:
+
234 using derivate_type = Derivate;
+
235
+
236 // A wrapper over the low-level H5Lexist
+
237 // It makes behavior consistent among versions and by default transforms
+
238 // errors to exceptions
+
239 bool _exist(const std::string& node_name, bool raise_errors = true) const;
+
240
+
241 // Opens an arbitrary object to obtain info
+
242 Object _open(const std::string& node_name,
+
243 const DataSetAccessProps& accessProps = DataSetAccessProps::Default()) const;
+
244};
+
+
245
+
246
+
+
250enum class LinkType {
+
251 Hard,
+
252 Soft,
+
253 External,
+
254 Other // Reserved or User-defined
+
255};
+
+
256
+
257
+
258} // namespace HighFive
+ + +
Class representing a dataset.
Definition H5DataSet.hpp:30
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
A structure representing a set of fixed-length strings.
Definition H5DataType.hpp:358
+
Represents an hdf5 group.
Definition H5Group.hpp:46
+
NodeTraits: Base class for Group and File.
Definition H5Node_traits.hpp:28
+
Group getGroup(const std::string &group_name) const
open an existing group with the name group_name
Definition H5Node_traits_misc.hpp:167
+
std::vector< std::string > listObjectNames(IndexType idx_type=IndexType::NAME) const
list all leaf objects name of the node / group
Definition H5Node_traits_misc.hpp:235
+
void unlink(const std::string &node_name) const
unlink the given dataset or group
Definition H5Node_traits_misc.hpp:287
+
void createExternalLink(const std::string &link_name, const std::string &h5_file, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
Definition H5Node_traits_misc.hpp:354
+
DataType getDataType(const std::string &type_name, const DataTypeAccessProps &accessProps=DataTypeAccessProps::Default()) const
open a commited datatype with the name type_name
Definition H5Node_traits_misc.hpp:178
+
DataSet getDataSet(const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps::Default()) const
get an existing dataset in the current file
Definition H5Node_traits_misc.hpp:120
+
void createSoftLink(const std::string &linkName, const T &obj)
A shorthand to create softlink to any object which provides getPath The link will be created with def...
Definition H5Node_traits.hpp:193
+
void createHardLink(const std::string &link_name, const T &target_obj, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
Creates hardlinks.
Definition H5Node_traits_misc.hpp:376
+
Group createGroup(const std::string &group_name, bool parents=true)
create a new group, and eventually intermediate groups
Definition H5Node_traits_misc.hpp:133
+
DataSet createDataSet(const std::string &dataset_name, const DataSpace &space, const DataType &type, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
createDataSet Create a new dataset in the current file of datatype type and of size space
Definition H5Node_traits_misc.hpp:34
+
bool rename(const std::string &src_path, const std::string &dest_path, bool parents=true) const
moves an object and its content within an HDF5 file.
Definition H5Node_traits_misc.hpp:215
+
bool exist(const std::string &node_name) const
check a dataset or group exists in the current node / group
Definition H5Node_traits_misc.hpp:274
+
ObjectType getObjectType(const std::string &node_name) const
A shorthand to get the kind of object pointed to (group, dataset, type...)
Definition H5Node_traits_misc.hpp:328
+
size_t getNumberObjects() const
return the number of leaf objects of the node / group
Definition H5Node_traits_misc.hpp:191
+
std::string getObjectName(size_t index) const
return the name of the object with the given index
Definition H5Node_traits_misc.hpp:201
+
LinkType getLinkType(const std::string &node_name) const
Returns the kind of link of the given name (soft, hard...)
Definition H5Node_traits_misc.hpp:314
+
DataSet createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
+
Definition H5Object.hpp:54
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
static const PropertyList< T > & Default() noexcept
Return the Default property type object.
Definition H5PropertyList.hpp:178
+
PropertyList< PropertyType::LINK_CREATE > LinkCreateProps
Definition H5PropertyList.hpp:199
+
PropertyList< PropertyType::LINK_ACCESS > LinkAccessProps
Definition H5PropertyList.hpp:200
+
Definition H5_definitions.hpp:15
+
LinkType
The possible types of group entries (link concept)
Definition H5Node_traits.hpp:250
+ + + + +
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+
IndexType
Definition H5Node_traits.hpp:19
+ + +
+
+ + + + diff --git a/_h5_node__traits__misc_8hpp.html b/_h5_node__traits__misc_8hpp.html new file mode 100644 index 000000000..e2df936d9 --- /dev/null +++ b/_h5_node__traits__misc_8hpp.html @@ -0,0 +1,362 @@ + + + + + + + +HighFive: highfive/bits/H5Node_traits_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Node_traits_misc.hpp File Reference
+
+
+
#include <string>
+#include <vector>
+#include <H5Apublic.h>
+#include <H5Dpublic.h>
+#include <H5Fpublic.h>
+#include <H5Gpublic.h>
+#include <H5Ppublic.h>
+#include <H5Tpublic.h>
+#include "../H5DataSet.hpp"
+#include "../H5Group.hpp"
+#include "../H5Selection.hpp"
+#include "../H5Utility.hpp"
+#include "H5DataSet_misc.hpp"
+#include "H5Iterables_misc.hpp"
+#include "H5Selection_misc.hpp"
+#include "H5Slice_traits_misc.hpp"
+
+Include dependency graph for H5Node_traits_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_node__traits__misc_8hpp__dep__incl.map b/_h5_node__traits__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..1398060f7 --- /dev/null +++ b/_h5_node__traits__misc_8hpp__dep__incl.map @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_node__traits__misc_8hpp__dep__incl.md5 b/_h5_node__traits__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..f36f37b9f --- /dev/null +++ b/_h5_node__traits__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +f7e6eab7036b5bbb978e244f1d587ff3 \ No newline at end of file diff --git a/_h5_node__traits__misc_8hpp__dep__incl.png b/_h5_node__traits__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..53b77cfd0 Binary files /dev/null and b/_h5_node__traits__misc_8hpp__dep__incl.png differ diff --git a/_h5_node__traits__misc_8hpp__incl.map b/_h5_node__traits__misc_8hpp__incl.map new file mode 100644 index 000000000..2ce8303c0 --- /dev/null +++ b/_h5_node__traits__misc_8hpp__incl.map @@ -0,0 +1,180 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_node__traits__misc_8hpp__incl.md5 b/_h5_node__traits__misc_8hpp__incl.md5 new file mode 100644 index 000000000..05c297079 --- /dev/null +++ b/_h5_node__traits__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +16e8688df9a67f1eb913255dbdeedffb \ No newline at end of file diff --git a/_h5_node__traits__misc_8hpp__incl.png b/_h5_node__traits__misc_8hpp__incl.png new file mode 100644 index 000000000..8a3d58785 Binary files /dev/null and b/_h5_node__traits__misc_8hpp__incl.png differ diff --git a/_h5_node__traits__misc_8hpp_source.html b/_h5_node__traits__misc_8hpp_source.html new file mode 100644 index 000000000..2180e06fd --- /dev/null +++ b/_h5_node__traits__misc_8hpp_source.html @@ -0,0 +1,649 @@ + + + + + + + +HighFive: highfive/bits/H5Node_traits_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Node_traits_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <string>
+
12#include <vector>
+
13
+
14#include <H5Apublic.h>
+
15#include <H5Dpublic.h>
+
16#include <H5Fpublic.h>
+
17#include <H5Gpublic.h>
+
18#include <H5Ppublic.h>
+
19#include <H5Tpublic.h>
+
20
+
21#include "../H5DataSet.hpp"
+
22#include "../H5Group.hpp"
+
23#include "../H5Selection.hpp"
+
24#include "../H5Utility.hpp"
+
25#include "H5DataSet_misc.hpp"
+
26#include "H5Iterables_misc.hpp"
+
27#include "H5Selection_misc.hpp"
+ +
29
+
30namespace HighFive {
+
31
+
32
+
33template <typename Derivate>
+
+
34inline DataSet NodeTraits<Derivate>::createDataSet(const std::string& dataset_name,
+
35 const DataSpace& space,
+
36 const DataType& dtype,
+
37 const DataSetCreateProps& createProps,
+
38 const DataSetAccessProps& accessProps,
+
39 bool parents) {
+
+ +
41 lcpl.add(CreateIntermediateGroup(parents));
+
42 const auto hid = H5Dcreate2(static_cast<Derivate*>(this)->getId(),
+
43 dataset_name.c_str(),
+
44 dtype.getId(),
+
45 space.getId(),
+
46 lcpl.getId(),
+
47 createProps.getId(),
+
48 accessProps.getId());
+
49 if (hid < 0) {
+ +
51 std::string("Unable to create the dataset \"") + dataset_name + "\":");
+
52 }
+
53 return DataSet(hid);
+
54}
+
+
+
55
+
56template <typename Derivate>
+
57template <typename T,
+
58 typename std::enable_if<
+
59 std::is_same<typename details::inspector<T>::base_type, details::Boolean>::value,
+
+
60 int>::type*>
+
+
61inline DataSet NodeTraits<Derivate>::createDataSet(const std::string& dataset_name,
+
62 const DataSpace& space,
+
63 const DataSetCreateProps& createProps,
+
64 const DataSetAccessProps& accessProps,
+
65 bool parents) {
+
66 return createDataSet(dataset_name,
+
67 space,
+
68 create_and_check_datatype<typename details::inspector<T>::base_type>(),
+
69 createProps,
+
70 accessProps,
+
71 parents);
+
72}
+
+
+
73
+
74template <typename Derivate>
+
75template <typename T,
+
76 typename std::enable_if<
+
77 !std::is_same<typename details::inspector<T>::base_type, details::Boolean>::value,
+
78 int>::type*>
+
79inline DataSet NodeTraits<Derivate>::createDataSet(const std::string& dataset_name,
+
80 const DataSpace& space,
+
81 const DataSetCreateProps& createProps,
+
82 const DataSetAccessProps& accessProps,
+
83 bool parents) {
+
84 return createDataSet(
+
85 dataset_name, space, create_and_check_datatype<T>(), createProps, accessProps, parents);
+
86}
+
+ +
88template <typename Derivate>
+
89template <typename T>
+
+
90inline DataSet NodeTraits<Derivate>::createDataSet(const std::string& dataset_name,
+
91 const T& data,
+
92 const DataSetCreateProps& createProps,
+
93 const DataSetAccessProps& accessProps,
+
94 bool parents) {
+
+ +
96 createDataSet(dataset_name,
+
97 DataSpace::From(data),
+
98 create_and_check_datatype<typename details::inspector<T>::base_type>(),
+
99 createProps,
+
100 accessProps,
+
101 parents);
+
102 ds.write(data);
+
103 return ds;
+
104}
+
105
+
+
106template <typename Derivate>
+
107template <std::size_t N>
+
+
108inline DataSet NodeTraits<Derivate>::createDataSet(const std::string& dataset_name,
+
109 const FixedLenStringArray<N>& data,
+
110 const DataSetCreateProps& createProps,
+
111 const DataSetAccessProps& accessProps,
+
112 bool parents) {
+
113 DataSet ds = createDataSet<char[N]>(
+
+
114 dataset_name, DataSpace(data.size()), createProps, accessProps, parents);
+
115 ds.write(data);
+
116 return ds;
+
117}
+
118
+
119template <typename Derivate>
+
+
120inline DataSet NodeTraits<Derivate>::getDataSet(const std::string& dataset_name,
+
121 const DataSetAccessProps& accessProps) const {
+
+
122 const auto hid = H5Dopen2(static_cast<const Derivate*>(this)->getId(),
+
123 dataset_name.c_str(),
+
124 accessProps.getId());
+
125 if (hid < 0) {
+
126 HDF5ErrMapper::ToException<DataSetException>(std::string("Unable to open the dataset \"") +
+
127 dataset_name + "\":");
+
128 }
+
129 return DataSet(hid);
+
+ +
131
+
132template <typename Derivate>
+
+
133inline Group NodeTraits<Derivate>::createGroup(const std::string& group_name, bool parents) {
+
134 LinkCreateProps lcpl;
+
135 lcpl.add(CreateIntermediateGroup(parents));
+
+
136 const auto hid = H5Gcreate2(static_cast<Derivate*>(this)->getId(),
+
137 group_name.c_str(),
+
138 lcpl.getId(),
+
139 H5P_DEFAULT,
+
140 H5P_DEFAULT);
+
141 if (hid < 0) {
+
142 HDF5ErrMapper::ToException<GroupException>(std::string("Unable to create the group \"") +
+
+
143 group_name + "\":");
+
144 }
+
145 return detail::make_group(hid);
+
146}
+
147
+
+
148template <typename Derivate>
+
+
149inline Group NodeTraits<Derivate>::createGroup(const std::string& group_name,
+
150 const GroupCreateProps& createProps,
+
151 bool parents) {
+
152 LinkCreateProps lcpl;
+
153 lcpl.add(CreateIntermediateGroup(parents));
+
154 const auto hid = H5Gcreate2(static_cast<Derivate*>(this)->getId(),
+
155 group_name.c_str(),
+
+
156 lcpl.getId(),
+
157 createProps.getId(),
+
158 H5P_DEFAULT);
+
159 if (hid < 0) {
+
160 HDF5ErrMapper::ToException<GroupException>(std::string("Unable to create the group \"") +
+
161 group_name + "\":");
+
162 }
+
163 return detail::make_group(hid);
+
164}
+
165
+
+
166template <typename Derivate>
+
+
167inline Group NodeTraits<Derivate>::getGroup(const std::string& group_name) const {
+
168 const auto hid =
+
169 H5Gopen2(static_cast<const Derivate*>(this)->getId(), group_name.c_str(), H5P_DEFAULT);
+
170 if (hid < 0) {
+
171 HDF5ErrMapper::ToException<GroupException>(std::string("Unable to open the group \"") +
+
+
172 group_name + "\":");
+
173 }
+
174 return detail::make_group(hid);
+
175}
+
176
+
+
177template <typename Derivate>
+
+
178inline DataType NodeTraits<Derivate>::getDataType(const std::string& type_name,
+
179 const DataTypeAccessProps& accessProps) const {
+
180 const auto hid = H5Topen2(static_cast<const Derivate*>(this)->getId(),
+
181 type_name.c_str(),
+
+
182 accessProps.getId());
+
183 if (hid < 0) {
+ +
185 std::string("Unable to open the datatype \"") + type_name + "\":");
+
186 }
+
+
187 return DataType(hid);
+
188}
+
189
+
190template <typename Derivate>
+
+ +
192 hsize_t res;
+
193 if (H5Gget_num_objs(static_cast<const Derivate*>(this)->getId(), &res) < 0) {
+ +
195 std::string("Unable to count objects in existing group or file"));
+
196 }
+
197 return static_cast<size_t>(res);
+
198}
+
+
199
+
200template <typename Derivate>
+
+
201inline std::string NodeTraits<Derivate>::getObjectName(size_t index) const {
+
202 return details::get_name([&](char* buffer, size_t length) {
+
203 return H5Lget_name_by_idx(static_cast<const Derivate*>(this)->getId(),
+
204 ".",
+
205 H5_INDEX_NAME,
+
+
206 H5_ITER_INC,
+
207 index,
+
208 buffer,
+
209 length,
+
210 H5P_DEFAULT);
+
211 });
+
+ +
213
+
214template <typename Derivate>
+
+
215inline bool NodeTraits<Derivate>::rename(const std::string& src_path,
+
216 const std::string& dst_path,
+
217 bool parents) const {
+
218 LinkCreateProps lcpl;
+
219 lcpl.add(CreateIntermediateGroup(parents));
+
220 herr_t status = H5Lmove(static_cast<const Derivate*>(this)->getId(),
+
221 src_path.c_str(),
+
222 static_cast<const Derivate*>(this)->getId(),
+
223 dst_path.c_str(),
+
224 lcpl.getId(),
+
225 H5P_DEFAULT);
+
226 if (status < 0) {
+
+
227 HDF5ErrMapper::ToException<GroupException>(std::string("Unable to move link to \"") +
+
228 dst_path + "\":");
+
229 return false;
+
230 }
+
231 return true;
+
232}
+
233
+
234template <typename Derivate>
+
+
235inline std::vector<std::string> NodeTraits<Derivate>::listObjectNames(IndexType idx_type) const {
+
236 std::vector<std::string> names;
+
237 details::HighFiveIterateData iterateData(names);
+
238
+
239 size_t num_objs = getNumberObjects();
+
240 names.reserve(num_objs);
+
241
+
242 if (H5Literate(static_cast<const Derivate*>(this)->getId(),
+
243 static_cast<H5_index_t>(idx_type),
+
244 H5_ITER_INC,
+
245 NULL,
+
246 &details::internal_high_five_iterate<H5L_info_t>,
+
247 static_cast<void*>(&iterateData)) < 0) {
+
248 HDF5ErrMapper::ToException<GroupException>(std::string("Unable to list objects in group"));
+
249 }
+
250
+
251 return names;
+
252}
+
+
253
+
254template <typename Derivate>
+
255inline bool NodeTraits<Derivate>::_exist(const std::string& node_name, bool raise_errors) const {
+
256 SilenceHDF5 silencer{};
+
257 const auto val =
+
258 H5Lexists(static_cast<const Derivate*>(this)->getId(), node_name.c_str(), H5P_DEFAULT);
+
259 if (val < 0) {
+
260 if (raise_errors) {
+
261 HDF5ErrMapper::ToException<GroupException>("Invalid link for exist()");
+
262 } else {
+
263 return false;
+
264 }
+
265 }
+
266
+
267 // The root path always exists, but H5Lexists return 0 or 1
+
268 // depending of the version of HDF5, so always return true for it
+
269 // We had to call H5Lexists anyway to check that there are no errors
+
270 return (node_name == "/") ? true : (val > 0);
+
271}
+
272
+
273template <typename Derivate>
+
+
274inline bool NodeTraits<Derivate>::exist(const std::string& group_path) const {
+
275 // When there are slashes, first check everything is fine
+
276 // so that subsequent errors are only due to missing intermediate groups
+
277 if (group_path.find('/') != std::string::npos) {
+
278 _exist("/"); // Shall not throw under normal circumstances
+
279 // Unless "/" (already checked), verify path exists (not throwing errors)
+
280 return (group_path == "/") ? true : _exist(group_path, false);
+
281 }
+
282 return _exist(group_path);
+
283}
+
+
284
+
285
+
286template <typename Derivate>
+
+
287inline void NodeTraits<Derivate>::unlink(const std::string& node_name) const {
+
288 const herr_t val =
+
289 H5Ldelete(static_cast<const Derivate*>(this)->getId(), node_name.c_str(), H5P_DEFAULT);
+
290 if (val < 0) {
+
291 HDF5ErrMapper::ToException<GroupException>(std::string("Invalid name for unlink() "));
+
292 }
+
293}
+
+
294
+
295
+
296// convert internal link types to enum class.
+
297// This function is internal, so H5L_TYPE_ERROR shall be handled in the calling context
+
298static inline LinkType _convert_link_type(const H5L_type_t& ltype) noexcept {
+
299 switch (ltype) {
+
300 case H5L_TYPE_HARD:
+
301 return LinkType::Hard;
+
302 case H5L_TYPE_SOFT:
+
303 return LinkType::Soft;
+
304 case H5L_TYPE_EXTERNAL:
+
305 return LinkType::External;
+
306 default:
+
307 // Other link types are possible but are considered strange to HighFive.
+
308 // see https://support.hdfgroup.org/HDF5/doc/RM/H5L/H5Lregister.htm
+
309 return LinkType::Other;
+
310 }
+
311}
+
312
+
313template <typename Derivate>
+
+
314inline LinkType NodeTraits<Derivate>::getLinkType(const std::string& node_name) const {
+
315 H5L_info_t linkinfo;
+
316 if (H5Lget_info(static_cast<const Derivate*>(this)->getId(),
+
317 node_name.c_str(),
+
318 &linkinfo,
+
319 H5P_DEFAULT) < 0 ||
+
320 linkinfo.type == H5L_TYPE_ERROR) {
+
321 HDF5ErrMapper::ToException<GroupException>(std::string("Unable to obtain info for link ") +
+
322 node_name);
+
323 }
+
324 return _convert_link_type(linkinfo.type);
+
325}
+
+
326
+
327template <typename Derivate>
+
+
328inline ObjectType NodeTraits<Derivate>::getObjectType(const std::string& node_name) const {
+
329 return _open(node_name).getType();
+
330}
+
+
331
+
332
+
333template <typename Derivate>
+
+
334inline void NodeTraits<Derivate>::createSoftLink(const std::string& link_name,
+
335 const std::string& obj_path,
+
336 LinkCreateProps linkCreateProps,
+
337 const LinkAccessProps& linkAccessProps,
+
338 const bool parents) {
+
339 if (parents) {
+
340 linkCreateProps.add(CreateIntermediateGroup{});
+
341 }
+
342 auto status = H5Lcreate_soft(obj_path.c_str(),
+
343 static_cast<const Derivate*>(this)->getId(),
+
344 link_name.c_str(),
+
345 linkCreateProps.getId(),
+
346 linkAccessProps.getId());
+
347 if (status < 0) {
+
348 HDF5ErrMapper::ToException<GroupException>(std::string("Unable to create soft link: "));
+
349 }
+
350}
+
+
351
+
352
+
353template <typename Derivate>
+
+
354inline void NodeTraits<Derivate>::createExternalLink(const std::string& link_name,
+
355 const std::string& h5_file,
+
356 const std::string& obj_path,
+
357 LinkCreateProps linkCreateProps,
+
358 const LinkAccessProps& linkAccessProps,
+
359 const bool parents) {
+
360 if (parents) {
+
361 linkCreateProps.add(CreateIntermediateGroup{});
+
362 }
+
363 auto status = H5Lcreate_external(h5_file.c_str(),
+
364 obj_path.c_str(),
+
365 static_cast<const Derivate*>(this)->getId(),
+
366 link_name.c_str(),
+
367 linkCreateProps.getId(),
+
368 linkAccessProps.getId());
+
369 if (status < 0) {
+
370 HDF5ErrMapper::ToException<GroupException>(std::string("Unable to create external link: "));
+
371 }
+
372}
+
+
373
+
374template <typename Derivate>
+
375template <typename T, typename>
+
+
376inline void NodeTraits<Derivate>::createHardLink(const std::string& link_name,
+
377 const T& target_obj,
+
378 LinkCreateProps linkCreateProps,
+
379 const LinkAccessProps& linkAccessProps,
+
380 const bool parents) {
+
381 static_assert(!std::is_same<T, Attribute>::value,
+
382 "hdf5 doesn't support hard links to Attributes");
+
383 if (parents) {
+
384 linkCreateProps.add(CreateIntermediateGroup{});
+
385 }
+
386 auto status = H5Lcreate_hard(target_obj.getId(),
+
387 ".",
+
388 static_cast<const Derivate*>(this)->getId(),
+
389 link_name.c_str(),
+
390 linkCreateProps.getId(),
+
391 linkAccessProps.getId());
+
392 if (status < 0) {
+
393 HDF5ErrMapper::ToException<GroupException>(std::string("Unable to create hard link: "));
+
394 }
+
395}
+
+
+
396
+
397
+
398template <typename Derivate>
+
399inline Object NodeTraits<Derivate>::_open(const std::string& node_name,
+
400 const DataSetAccessProps& accessProps) const {
+
401 const auto id = H5Oopen(static_cast<const Derivate*>(this)->getId(),
+
402 node_name.c_str(),
+
403 accessProps.getId());
+
404 if (id < 0) {
+
405 HDF5ErrMapper::ToException<GroupException>(std::string("Unable to open \"") + node_name +
+
406 "\":");
+
407 }
+
408 return detail::make_object(id);
+
409}
+
410
+
411
+
412} // namespace HighFive
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ + + + +
Definition H5PropertyList.hpp:590
+
Class representing a dataset.
Definition H5DataSet.hpp:30
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
static DataSpace From(const T &value)
Automatically deduce the DataSpace from a container/value.
Definition H5Dataspace_misc.hpp:136
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
A structure representing a set of fixed-length strings.
Definition H5DataType.hpp:358
+
std::size_t size() const noexcept
Definition H5DataType.hpp:402
+
Represents an hdf5 group.
Definition H5Group.hpp:46
+
NodeTraits: Base class for Group and File.
Definition H5Node_traits.hpp:28
+
Group getGroup(const std::string &group_name) const
open an existing group with the name group_name
Definition H5Node_traits_misc.hpp:167
+
std::vector< std::string > listObjectNames(IndexType idx_type=IndexType::NAME) const
list all leaf objects name of the node / group
Definition H5Node_traits_misc.hpp:235
+
void unlink(const std::string &node_name) const
unlink the given dataset or group
Definition H5Node_traits_misc.hpp:287
+
void createExternalLink(const std::string &link_name, const std::string &h5_file, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
Definition H5Node_traits_misc.hpp:354
+
DataType getDataType(const std::string &type_name, const DataTypeAccessProps &accessProps=DataTypeAccessProps::Default()) const
open a commited datatype with the name type_name
Definition H5Node_traits_misc.hpp:178
+
DataSet getDataSet(const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps::Default()) const
get an existing dataset in the current file
Definition H5Node_traits_misc.hpp:120
+
void createSoftLink(const std::string &linkName, const T &obj)
A shorthand to create softlink to any object which provides getPath The link will be created with def...
Definition H5Node_traits.hpp:193
+
void createHardLink(const std::string &link_name, const T &target_obj, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
Creates hardlinks.
Definition H5Node_traits_misc.hpp:376
+
Group createGroup(const std::string &group_name, bool parents=true)
create a new group, and eventually intermediate groups
Definition H5Node_traits_misc.hpp:133
+
DataSet createDataSet(const std::string &dataset_name, const DataSpace &space, const DataType &type, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
createDataSet Create a new dataset in the current file of datatype type and of size space
Definition H5Node_traits_misc.hpp:34
+
bool rename(const std::string &src_path, const std::string &dest_path, bool parents=true) const
moves an object and its content within an HDF5 file.
Definition H5Node_traits_misc.hpp:215
+
bool exist(const std::string &node_name) const
check a dataset or group exists in the current node / group
Definition H5Node_traits_misc.hpp:274
+
ObjectType getObjectType(const std::string &node_name) const
A shorthand to get the kind of object pointed to (group, dataset, type...)
Definition H5Node_traits_misc.hpp:328
+
size_t getNumberObjects() const
return the number of leaf objects of the node / group
Definition H5Node_traits_misc.hpp:191
+
std::string getObjectName(size_t index) const
return the name of the object with the given index
Definition H5Node_traits_misc.hpp:201
+
LinkType getLinkType(const std::string &node_name) const
Returns the kind of link of the given name (soft, hard...)
Definition H5Node_traits_misc.hpp:314
+
Definition H5Object.hpp:54
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
void add(const P &property)
Definition H5PropertyList_misc.hpp:74
+
Utility class to disable HDF5 stack printing inside a scope.
Definition H5Utility.hpp:24
+
void write(const T &buffer, const DataTransferProps &xfer_props=DataTransferProps())
Definition H5Slice_traits_misc.hpp:249
+
Definition H5_definitions.hpp:15
+
DataType create_and_check_datatype()
Create a DataType instance representing type T and perform a sanity check on its size.
Definition H5DataType_misc.hpp:573
+
LinkType
The possible types of group entries (link concept)
Definition H5Node_traits.hpp:250
+ + + + +
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+
IndexType
Definition H5Node_traits.hpp:19
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_object_8hpp.html b/_h5_object_8hpp.html new file mode 100644 index 000000000..ee92ab5ab --- /dev/null +++ b/_h5_object_8hpp.html @@ -0,0 +1,315 @@ + + + + + + + +HighFive: highfive/H5Object.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Object.hpp File Reference
+
+
+
#include <ctime>
+#include <H5Ipublic.h>
+#include <H5Opublic.h>
+#include "bits/H5_definitions.hpp"
+#include "bits/H5Friends.hpp"
+#include "bits/H5Object_misc.hpp"
+
+Include dependency graph for H5Object.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + +

+Classes

class  HighFive::Object
 
class  HighFive::ObjectInfo
 A class for accessing hdf5 objects info. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+ + + + +

+Enumerations

enum class  HighFive::ObjectType {
+  HighFive::File +, HighFive::Group +, HighFive::UserDataType +, HighFive::DataSpace +,
+  HighFive::Dataset +, HighFive::Attribute +, HighFive::Other +
+ }
 Enum of the types of objects (H5O api) More...
 
+
+
+ + + + diff --git a/_h5_object_8hpp.js b/_h5_object_8hpp.js new file mode 100644 index 000000000..e60ca0fd3 --- /dev/null +++ b/_h5_object_8hpp.js @@ -0,0 +1,14 @@ +var _h5_object_8hpp = +[ + [ "HighFive::Object", "class_high_five_1_1_object.html", "class_high_five_1_1_object" ], + [ "HighFive::ObjectInfo", "class_high_five_1_1_object_info.html", "class_high_five_1_1_object_info" ], + [ "ObjectType", "_h5_object_8hpp.html#ad8790d0a626a7355392c05dc69a1d474", [ + [ "File", "_h5_object_8hpp.html#ad8790d0a626a7355392c05dc69a1d474a0b27918290ff5323bea1e3b78a9cf04e", null ], + [ "Group", "_h5_object_8hpp.html#ad8790d0a626a7355392c05dc69a1d474a03937134cedab9078be39a77ee3a48a0", null ], + [ "UserDataType", "_h5_object_8hpp.html#ad8790d0a626a7355392c05dc69a1d474a99f109983e5e6524be1f6fbcc819691c", null ], + [ "DataSpace", "_h5_object_8hpp.html#ad8790d0a626a7355392c05dc69a1d474a546863182b9bd136e5295389d0e8343e", null ], + [ "Dataset", "_h5_object_8hpp.html#ad8790d0a626a7355392c05dc69a1d474a239658e016e3d5d06ae719d280a79fec", null ], + [ "Attribute", "_h5_object_8hpp.html#ad8790d0a626a7355392c05dc69a1d474af2bbdf9f72c085adc4d0404e370f0f4c", null ], + [ "Other", "_h5_object_8hpp.html#ad8790d0a626a7355392c05dc69a1d474a6311ae17c1ee52b36e68aaf4ad066387", null ] + ] ] +]; \ No newline at end of file diff --git a/_h5_object_8hpp__dep__incl.map b/_h5_object_8hpp__dep__incl.map new file mode 100644 index 000000000..e14cac007 --- /dev/null +++ b/_h5_object_8hpp__dep__incl.map @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_object_8hpp__dep__incl.md5 b/_h5_object_8hpp__dep__incl.md5 new file mode 100644 index 000000000..1668d152b --- /dev/null +++ b/_h5_object_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +aa6238fbfb23494beb30a38a06b9f2e3 \ No newline at end of file diff --git a/_h5_object_8hpp__dep__incl.png b/_h5_object_8hpp__dep__incl.png new file mode 100644 index 000000000..5a712cd3f Binary files /dev/null and b/_h5_object_8hpp__dep__incl.png differ diff --git a/_h5_object_8hpp__incl.map b/_h5_object_8hpp__incl.map new file mode 100644 index 000000000..109886285 --- /dev/null +++ b/_h5_object_8hpp__incl.map @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_object_8hpp__incl.md5 b/_h5_object_8hpp__incl.md5 new file mode 100644 index 000000000..8fe212ca2 --- /dev/null +++ b/_h5_object_8hpp__incl.md5 @@ -0,0 +1 @@ +e910b2ad2f7610294b54e86fecbee1d1 \ No newline at end of file diff --git a/_h5_object_8hpp__incl.png b/_h5_object_8hpp__incl.png new file mode 100644 index 000000000..32131aecf Binary files /dev/null and b/_h5_object_8hpp__incl.png differ diff --git a/_h5_object_8hpp_source.html b/_h5_object_8hpp_source.html new file mode 100644 index 000000000..aabc573bb --- /dev/null +++ b/_h5_object_8hpp_source.html @@ -0,0 +1,266 @@ + + + + + + + +HighFive: highfive/H5Object.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Object.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <ctime>
+
12
+
13#include <H5Ipublic.h>
+
14#include <H5Opublic.h>
+
15
+ +
17#include "bits/H5Friends.hpp"
+
18
+
19namespace HighFive {
+
20
+
+
24enum class ObjectType {
+
25 File,
+
26 Group,
+ + +
29 Dataset,
+ +
31 Other // Internal/custom object type
+
32};
+
+
33
+
34namespace detail {
+
50Object make_object(hid_t hid);
+
51} // namespace detail
+
52
+
53
+
+
54class Object {
+
55 public:
+
56 // move constructor, reuse hid
+
57 Object(Object&& other) noexcept;
+
58
+
59 // decrease reference counter
+
60 ~Object();
+
61
+
66 bool isValid() const noexcept;
+
67
+
73 hid_t getId() const noexcept;
+
74
+
78 ObjectInfo getInfo() const;
+
79
+
85 ObjectType getType() const;
+
86
+
87 // Check if refer to same object
+
+
88 bool operator==(const Object& other) const noexcept {
+
89 return _hid == other._hid;
+
90 }
+
+
91
+
92 protected:
+
93 // empty constructor
+
94 Object();
+
95
+
96 // copy constructor, increase reference counter
+
97 Object(const Object& other);
+
98
+
99 // Init with an low-level object id
+
100 explicit Object(hid_t);
+
101
+
102 // Copy-Assignment operator
+
103 Object& operator=(const Object& other);
+
104
+
105 hid_t _hid;
+
106
+
107 private:
+
108 friend Object detail::make_object(hid_t);
+
109 friend class Reference;
+
110 friend class CompoundType;
+
111
+
112#if HIGHFIVE_HAS_FRIEND_DECLARATIONS
+
113 template <typename Derivate>
+
114 friend class NodeTraits;
+
115 template <typename Derivate>
+
116 friend class AnnotateTraits;
+
117 template <typename Derivate>
+
118 friend class PathTraits;
+
119#endif
+
120};
+
+
121
+
122
+
+ +
127 public:
+
130 H5_DEPRECATED("Deprecated since HighFive 2.2. Soon supporting VOL tokens")
+
131 haddr_t getAddress() const noexcept;
+
132
+
134 size_t getRefCount() const noexcept;
+
135
+
137 time_t getCreationTime() const noexcept;
+
138
+
140 time_t getModificationTime() const noexcept;
+
141
+
142 protected:
+
143#if (H5Oget_info_vers < 3)
+
144 H5O_info_t raw_info;
+
145#else
+
146 // Use compat H5O_info1_t while getAddress() is supported (deprecated)
+
147 H5O_info1_t raw_info;
+
148#endif
+
149
+
150 friend class Object;
+
151};
+
+
152
+
153} // namespace HighFive
+
154
+
155#include "bits/H5Object_misc.hpp"
+ +
#define H5_DEPRECATED(msg)
Definition H5_definitions.hpp:9
+ + +
Definition H5Annotate_traits.hpp:18
+
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
+
Create a compound HDF5 datatype.
Definition H5DataType.hpp:196
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
File class.
Definition H5File.hpp:24
+
Represents an hdf5 group.
Definition H5Group.hpp:46
+
NodeTraits: Base class for Group and File.
Definition H5Node_traits.hpp:28
+
Definition H5Object.hpp:54
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
ObjectInfo getInfo() const
Retrieve several infos about the current object (address, dates, etc)
Definition H5Object_misc.hpp:97
+
~Object()
Definition H5Object_misc.hpp:55
+
ObjectType getType() const
Gets the fundamental type of the object (dataset, group, etc)
Definition H5Object_misc.hpp:88
+
Object()
Definition H5Object_misc.hpp:24
+
bool isValid() const noexcept
isValid
Definition H5Object_misc.hpp:61
+
hid_t _hid
Definition H5Object.hpp:105
+
Object & operator=(const Object &other)
Definition H5Object_misc.hpp:42
+
bool operator==(const Object &other) const noexcept
Definition H5Object.hpp:88
+
A class for accessing hdf5 objects info.
Definition H5Object.hpp:126
+
time_t getCreationTime() const noexcept
Retrieve the object's creation time.
Definition H5Object_misc.hpp:115
+
haddr_t getAddress() const noexcept
Retrieve the address of the object (within its file)
Definition H5Object_misc.hpp:109
+
size_t getRefCount() const noexcept
Retrieve the number of references to this object.
Definition H5Object_misc.hpp:112
+
H5O_info_t raw_info
Definition H5Object.hpp:144
+
time_t getModificationTime() const noexcept
Retrieve the object's last modification time.
Definition H5Object_misc.hpp:118
+
Definition H5Path_traits.hpp:16
+
An HDF5 (object) reference type.
Definition H5Reference.hpp:33
+
Definition H5_definitions.hpp:15
+ +
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+ + +
+
+ + + + diff --git a/_h5_object__misc_8hpp.html b/_h5_object__misc_8hpp.html new file mode 100644 index 000000000..a23a0c699 --- /dev/null +++ b/_h5_object__misc_8hpp.html @@ -0,0 +1,278 @@ + + + + + + + +HighFive: highfive/bits/H5Object_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Object_misc.hpp File Reference
+
+
+
#include <iostream>
+#include "../H5Exception.hpp"
+#include "../H5Utility.hpp"
+
+Include dependency graph for H5Object_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_object__misc_8hpp__dep__incl.map b/_h5_object__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..8493aeccc --- /dev/null +++ b/_h5_object__misc_8hpp__dep__incl.map @@ -0,0 +1,116 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_object__misc_8hpp__dep__incl.md5 b/_h5_object__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..ab93b601a --- /dev/null +++ b/_h5_object__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +3c4fc2fcd8ce76e7be3d5b825c3c2744 \ No newline at end of file diff --git a/_h5_object__misc_8hpp__dep__incl.png b/_h5_object__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..4ce4a10bc Binary files /dev/null and b/_h5_object__misc_8hpp__dep__incl.png differ diff --git a/_h5_object__misc_8hpp__incl.map b/_h5_object__misc_8hpp__incl.map new file mode 100644 index 000000000..911980623 --- /dev/null +++ b/_h5_object__misc_8hpp__incl.map @@ -0,0 +1,32 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_object__misc_8hpp__incl.md5 b/_h5_object__misc_8hpp__incl.md5 new file mode 100644 index 000000000..9ac3de4ac --- /dev/null +++ b/_h5_object__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +461035a9d5b5ce6eddb99630b160c8ab \ No newline at end of file diff --git a/_h5_object__misc_8hpp__incl.png b/_h5_object__misc_8hpp__incl.png new file mode 100644 index 000000000..fc5d52f7c Binary files /dev/null and b/_h5_object__misc_8hpp__incl.png differ diff --git a/_h5_object__misc_8hpp_source.html b/_h5_object__misc_8hpp_source.html new file mode 100644 index 000000000..323627272 --- /dev/null +++ b/_h5_object__misc_8hpp_source.html @@ -0,0 +1,296 @@ + + + + + + + +HighFive: highfive/bits/H5Object_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Object_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <iostream>
+
12
+
13#include "../H5Exception.hpp"
+
14#include "../H5Utility.hpp"
+
15
+
16namespace HighFive {
+
17namespace detail {
+
18inline Object make_object(hid_t hid) {
+
19 return Object(hid);
+
20}
+
21} // namespace detail
+
22
+
23
+
+ +
25 : _hid(H5I_INVALID_HID) {}
+
+
26
+
+
27inline Object::Object(hid_t hid)
+
28 : _hid(hid) {}
+
+
29
+
+
30inline Object::Object(const Object& other)
+
31 : _hid(other._hid) {
+
32 if (other.isValid() && H5Iinc_ref(_hid) < 0) {
+
33 throw ObjectException("Reference counter increase failure");
+
34 }
+
35}
+
+
36
+
+
37inline Object::Object(Object&& other) noexcept
+
38 : _hid(other._hid) {
+
39 other._hid = H5I_INVALID_HID;
+
40}
+
+
41
+
+
42inline Object& Object::operator=(const Object& other) {
+
43 if (this != &other) {
+
44 if (isValid())
+
45 H5Idec_ref(_hid);
+
46
+
47 _hid = other._hid;
+
48 if (other.isValid() && H5Iinc_ref(_hid) < 0) {
+
49 throw ObjectException("Reference counter increase failure");
+
50 }
+
51 }
+
52 return *this;
+
53}
+
+
54
+
+ +
56 if (isValid() && H5Idec_ref(_hid) < 0) {
+
+
57 HIGHFIVE_LOG_ERROR("HighFive::~Object: reference counter decrease failure");
+
58 }
+
59}
+
60
+
+
61inline bool Object::isValid() const noexcept {
+
62 return (_hid != H5I_INVALID_HID) && (H5Iis_valid(_hid) != false);
+
63}
+
+
64
+
+
65inline hid_t Object::getId() const noexcept {
+
66 return _hid;
+
67}
+
+
68
+
69static inline ObjectType _convert_object_type(const H5I_type_t& h5type) {
+
70 switch (h5type) {
+
71 case H5I_FILE:
+
72 return ObjectType::File;
+
73 case H5I_GROUP:
+
74 return ObjectType::Group;
+
75 case H5I_DATATYPE:
+ +
77 case H5I_DATASPACE:
+ +
79 case H5I_DATASET:
+ +
81 case H5I_ATTR:
+ +
83 default:
+
84 return ObjectType::Other;
+
85 }
+
86}
+
87
+
+ +
89 // H5Iget_type is a very lightweight func which extracts the type from the id
+
90 H5I_type_t h5type;
+
91 if ((h5type = H5Iget_type(_hid)) == H5I_BADID) {
+
92 HDF5ErrMapper::ToException<ObjectException>("Invalid hid or object type");
+
93 }
+
+
94 return _convert_object_type(h5type);
+
95}
+
96
+
+ +
98 ObjectInfo info;
+
99#if (H5Oget_info_vers < 3)
+
+
100 if (H5Oget_info(_hid, &info.raw_info) < 0) {
+
101#else
+
102 if (H5Oget_info1(_hid, &info.raw_info) < 0) {
+
103#endif
+
104 HDF5ErrMapper::ToException<ObjectException>("Unable to obtain info for object");
+
105 }
+
106 return info;
+
107}
+
108
+
+
109inline haddr_t ObjectInfo::getAddress() const noexcept {
+
110 return raw_info.addr;
+
111}
+
+
+
112inline size_t ObjectInfo::getRefCount() const noexcept {
+
113 return raw_info.rc;
+
114}
+
+
+
115inline time_t ObjectInfo::getCreationTime() const noexcept {
+
116 return raw_info.btime;
+
117}
+
+
+
118inline time_t ObjectInfo::getModificationTime() const noexcept {
+
119 return raw_info.mtime;
+
120}
+
+
121
+
122
+
123} // namespace HighFive
+
+
+
+
+
+
+
#define HIGHFIVE_LOG_ERROR(message)
Definition H5Utility.hpp:201
+
Exception specific to HighFive Object interface.
Definition H5Exception.hpp:85
+
Definition H5Object.hpp:54
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
ObjectInfo getInfo() const
Retrieve several infos about the current object (address, dates, etc)
Definition H5Object_misc.hpp:97
+
~Object()
Definition H5Object_misc.hpp:55
+
ObjectType getType() const
Gets the fundamental type of the object (dataset, group, etc)
Definition H5Object_misc.hpp:88
+
Object()
Definition H5Object_misc.hpp:24
+
bool isValid() const noexcept
isValid
Definition H5Object_misc.hpp:61
+
hid_t _hid
Definition H5Object.hpp:105
+
Object & operator=(const Object &other)
Definition H5Object_misc.hpp:42
+
A class for accessing hdf5 objects info.
Definition H5Object.hpp:126
+
time_t getCreationTime() const noexcept
Retrieve the object's creation time.
Definition H5Object_misc.hpp:115
+
haddr_t getAddress() const noexcept
Retrieve the address of the object (within its file)
Definition H5Object_misc.hpp:109
+
size_t getRefCount() const noexcept
Retrieve the number of references to this object.
Definition H5Object_misc.hpp:112
+
H5O_info_t raw_info
Definition H5Object.hpp:144
+
time_t getModificationTime() const noexcept
Retrieve the object's last modification time.
Definition H5Object_misc.hpp:118
+
Definition H5_definitions.hpp:15
+
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+ + + + + + + +
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_path__traits_8hpp.html b/_h5_path__traits_8hpp.html new file mode 100644 index 000000000..3ab396425 --- /dev/null +++ b/_h5_path__traits_8hpp.html @@ -0,0 +1,202 @@ + + + + + + + +HighFive: highfive/bits/H5Path_traits.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Path_traits.hpp File Reference
+
+
+
#include "H5_definitions.hpp"
+
+Include dependency graph for H5Path_traits.hpp:
+
+
+ + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  HighFive::PathTraits< Derivate >
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_path__traits_8hpp.js b/_h5_path__traits_8hpp.js new file mode 100644 index 000000000..babf9bd1a --- /dev/null +++ b/_h5_path__traits_8hpp.js @@ -0,0 +1,4 @@ +var _h5_path__traits_8hpp = +[ + [ "HighFive::PathTraits< Derivate >", "class_high_five_1_1_path_traits.html", "class_high_five_1_1_path_traits" ] +]; \ No newline at end of file diff --git a/_h5_path__traits_8hpp__dep__incl.map b/_h5_path__traits_8hpp__dep__incl.map new file mode 100644 index 000000000..6b1f21293 --- /dev/null +++ b/_h5_path__traits_8hpp__dep__incl.map @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_path__traits_8hpp__dep__incl.md5 b/_h5_path__traits_8hpp__dep__incl.md5 new file mode 100644 index 000000000..3bb152279 --- /dev/null +++ b/_h5_path__traits_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +34a26db77056069caea26260699a5a8d \ No newline at end of file diff --git a/_h5_path__traits_8hpp__dep__incl.png b/_h5_path__traits_8hpp__dep__incl.png new file mode 100644 index 000000000..f4566ec8a Binary files /dev/null and b/_h5_path__traits_8hpp__dep__incl.png differ diff --git a/_h5_path__traits_8hpp__incl.map b/_h5_path__traits_8hpp__incl.map new file mode 100644 index 000000000..6e6884254 --- /dev/null +++ b/_h5_path__traits_8hpp__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/_h5_path__traits_8hpp__incl.md5 b/_h5_path__traits_8hpp__incl.md5 new file mode 100644 index 000000000..0f848adba --- /dev/null +++ b/_h5_path__traits_8hpp__incl.md5 @@ -0,0 +1 @@ +9e9453b164183457561945aabf1775f8 \ No newline at end of file diff --git a/_h5_path__traits_8hpp__incl.png b/_h5_path__traits_8hpp__incl.png new file mode 100644 index 000000000..8e1ce048b Binary files /dev/null and b/_h5_path__traits_8hpp__incl.png differ diff --git a/_h5_path__traits_8hpp_source.html b/_h5_path__traits_8hpp_source.html new file mode 100644 index 000000000..d0cdb824b --- /dev/null +++ b/_h5_path__traits_8hpp_source.html @@ -0,0 +1,151 @@ + + + + + + + +HighFive: highfive/bits/H5Path_traits.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Path_traits.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2020, EPFL - Blue Brain Project
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include "H5_definitions.hpp"
+
12
+
13namespace HighFive {
+
14
+
15template <typename Derivate>
+
+ +
17 public:
+
18 PathTraits();
+
19
+
23 std::string getPath() const;
+
24
+
28 File& getFile() const noexcept;
+
29
+
30
+
31 protected:
+
32 std::shared_ptr<File> _file_obj; // keep a ref to file so we keep its ref count > 0
+
33};
+
+
34
+
35} // namespace HighFive
+ +
File class.
Definition H5File.hpp:24
+
Definition H5Path_traits.hpp:16
+
PathTraits()
Definition H5Path_traits_misc.hpp:19
+
std::shared_ptr< File > _file_obj
Definition H5Path_traits.hpp:32
+
File & getFile() const noexcept
Return a reference to the File object this object belongs.
Definition H5Path_traits_misc.hpp:42
+
std::string getPath() const
return the path to the current object
Definition H5Path_traits_misc.hpp:35
+
Definition H5_definitions.hpp:15
+
+
+ + + + diff --git a/_h5_path__traits__misc_8hpp.html b/_h5_path__traits__misc_8hpp.html new file mode 100644 index 000000000..b70d6f53f --- /dev/null +++ b/_h5_path__traits__misc_8hpp.html @@ -0,0 +1,215 @@ + + + + + + + +HighFive: highfive/bits/H5Path_traits_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Path_traits_misc.hpp File Reference
+
+
+
#include <H5Ipublic.h>
+#include "H5Utils.hpp"
+#include "H5Path_traits.hpp"
+
+Include dependency graph for H5Path_traits_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_path__traits__misc_8hpp__dep__incl.map b/_h5_path__traits__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..a3683bff2 --- /dev/null +++ b/_h5_path__traits__misc_8hpp__dep__incl.map @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_path__traits__misc_8hpp__dep__incl.md5 b/_h5_path__traits__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..67f85c4c6 --- /dev/null +++ b/_h5_path__traits__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +44bddb1852f7c0073391369e09c287f2 \ No newline at end of file diff --git a/_h5_path__traits__misc_8hpp__dep__incl.png b/_h5_path__traits__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..ac3136bee Binary files /dev/null and b/_h5_path__traits__misc_8hpp__dep__incl.png differ diff --git a/_h5_path__traits__misc_8hpp__incl.map b/_h5_path__traits__misc_8hpp__incl.map new file mode 100644 index 000000000..de3c3a797 --- /dev/null +++ b/_h5_path__traits__misc_8hpp__incl.map @@ -0,0 +1,46 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_path__traits__misc_8hpp__incl.md5 b/_h5_path__traits__misc_8hpp__incl.md5 new file mode 100644 index 000000000..b81d54ba8 --- /dev/null +++ b/_h5_path__traits__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +d4733557f4ff10bcf486c89bd541ee44 \ No newline at end of file diff --git a/_h5_path__traits__misc_8hpp__incl.png b/_h5_path__traits__misc_8hpp__incl.png new file mode 100644 index 000000000..3b469286b Binary files /dev/null and b/_h5_path__traits__misc_8hpp__incl.png differ diff --git a/_h5_path__traits__misc_8hpp_source.html b/_h5_path__traits__misc_8hpp_source.html new file mode 100644 index 000000000..65cbb2639 --- /dev/null +++ b/_h5_path__traits__misc_8hpp_source.html @@ -0,0 +1,178 @@ + + + + + + + +HighFive: highfive/bits/H5Path_traits_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Path_traits_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2020, EPFL - Blue Brain Project
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <H5Ipublic.h>
+
12
+
13#include "H5Utils.hpp"
+
14#include "H5Path_traits.hpp"
+
15
+
16namespace HighFive {
+
17
+
+
18template <typename Derivate>
+
+ +
20 static_assert(std::is_same<Derivate, Group>::value || std::is_same<Derivate, DataSet>::value ||
+
21 std::is_same<Derivate, Attribute>::value,
+
22 "PathTraits can only be applied to Group, DataSet and Attribute");
+
+
23 const auto& obj = static_cast<const Derivate&>(*this);
+
24 if (!obj.isValid()) {
+
25 return;
+
26 }
+
27 const hid_t file_id = H5Iget_file_id(obj.getId());
+
+
28 if (file_id < 0) {
+
29 HDF5ErrMapper::ToException<PropertyException>("getFile(): Could not obtain file of object");
+
30 }
+
31 _file_obj.reset(new File(file_id));
+
32}
+
33
+
34template <typename Derivate>
+
+
35inline std::string PathTraits<Derivate>::getPath() const {
+
36 return details::get_name([this](char* buffer, size_t length) {
+
37 return H5Iget_name(static_cast<const Derivate&>(*this).getId(), buffer, length);
+
38 });
+
39}
+
+
40
+
41template <typename Derivate>
+
+
42inline File& PathTraits<Derivate>::getFile() const noexcept {
+
43 return *_file_obj;
+
44}
+
+
+
45
+
46} // namespace HighFive
+
+
+
+ + +
File class.
Definition H5File.hpp:24
+
PathTraits()
Definition H5Path_traits_misc.hpp:19
+
File & getFile() const noexcept
Return a reference to the File object this object belongs.
Definition H5Path_traits_misc.hpp:42
+
std::string getPath() const
return the path to the current object
Definition H5Path_traits_misc.hpp:35
+
Definition H5_definitions.hpp:15
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_property_list_8hpp.html b/_h5_property_list_8hpp.html new file mode 100644 index 000000000..228050f99 --- /dev/null +++ b/_h5_property_list_8hpp.html @@ -0,0 +1,404 @@ + + + + + + + +HighFive: highfive/H5PropertyList.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5PropertyList.hpp File Reference
+
+
+
#include <vector>
+#include <H5Ppublic.h>
+#include <H5FDmpi.h>
+#include "H5Exception.hpp"
+#include "H5Object.hpp"
+#include "bits/H5PropertyList_misc.hpp"
+
+Include dependency graph for H5PropertyList.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  HighFive::PropertyListBase
 Base Class for Property lists, providing global default. More...
 
class  HighFive::PropertyList< T >
 HDF5 property Lists. More...
 
class  HighFive::RawPropertyList< T >
 
class  HighFive::MPIOFileAccess
 Configure MPI access for the file. More...
 
class  HighFive::MPIOCollectiveMetadata
 Use collective MPI-IO for metadata read and write. More...
 
class  HighFive::MPIOCollectiveMetadataRead
 Use collective MPI-IO for metadata read? More...
 
class  HighFive::MPIOCollectiveMetadataWrite
 Use collective MPI-IO for metadata write? More...
 
class  HighFive::FileVersionBounds
 Configure the version bounds for the file. More...
 
class  HighFive::MetadataBlockSize
 Configure the metadata block size to use writing to files. More...
 
class  HighFive::EstimatedLinkInfo
 Set hints as to how many links to expect and their average length. More...
 
class  HighFive::Chunking
 
class  HighFive::Deflate
 
class  HighFive::Szip
 
class  HighFive::Shuffle
 
class  HighFive::AllocationTime
 When are datasets allocated? More...
 
class  HighFive::Caching
 
class  HighFive::CreateIntermediateGroup
 
class  HighFive::UseCollectiveIO
 
class  HighFive::MpioNoCollectiveCause
 The cause for non-collective I/O. More...
 
struct  HighFive::CreationOrder
 
class  HighFive::LinkCreationOrder
 Track and index creation order time. More...
 
class  HighFive::AttributePhaseChange
 Set threshold for attribute storage. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

using HighFive::ObjectCreateProps = PropertyList< PropertyType::OBJECT_CREATE >
 
using HighFive::FileCreateProps = PropertyList< PropertyType::FILE_CREATE >
 
using HighFive::FileAccessProps = PropertyList< PropertyType::FILE_ACCESS >
 
using HighFive::DataSetCreateProps = PropertyList< PropertyType::DATASET_CREATE >
 
using HighFive::DataSetAccessProps = PropertyList< PropertyType::DATASET_ACCESS >
 
using HighFive::DataTransferProps = PropertyList< PropertyType::DATASET_XFER >
 
using HighFive::GroupCreateProps = PropertyList< PropertyType::GROUP_CREATE >
 
using HighFive::GroupAccessProps = PropertyList< PropertyType::GROUP_ACCESS >
 
using HighFive::DataTypeCreateProps = PropertyList< PropertyType::DATATYPE_CREATE >
 
using HighFive::DataTypeAccessProps = PropertyList< PropertyType::DATATYPE_ACCESS >
 
using HighFive::StringCreateProps = PropertyList< PropertyType::STRING_CREATE >
 
using HighFive::AttributeCreateProps = PropertyList< PropertyType::ATTRIBUTE_CREATE >
 
using HighFive::ObjectCopyProps = PropertyList< PropertyType::OBJECT_COPY >
 
using HighFive::LinkCreateProps = PropertyList< PropertyType::LINK_CREATE >
 
using HighFive::LinkAccessProps = PropertyList< PropertyType::LINK_ACCESS >
 
+ + + + +

+Enumerations

enum class  HighFive::PropertyType : int {
+  HighFive::PropertyType::OBJECT_CREATE +, HighFive::PropertyType::FILE_CREATE +, HighFive::PropertyType::FILE_ACCESS +, HighFive::PropertyType::DATASET_CREATE +,
+  HighFive::PropertyType::DATASET_ACCESS +, HighFive::PropertyType::DATASET_XFER +, HighFive::PropertyType::GROUP_CREATE +, HighFive::PropertyType::GROUP_ACCESS +,
+  HighFive::PropertyType::DATATYPE_CREATE +, HighFive::PropertyType::DATATYPE_ACCESS +, HighFive::PropertyType::STRING_CREATE +, HighFive::PropertyType::ATTRIBUTE_CREATE +,
+  HighFive::PropertyType::OBJECT_COPY +, HighFive::PropertyType::LINK_CREATE +, HighFive::PropertyType::LINK_ACCESS +
+ }
 Types of property lists. More...
 
+
+
+ + + + diff --git a/_h5_property_list_8hpp.js b/_h5_property_list_8hpp.js new file mode 100644 index 000000000..b2ba1c838 --- /dev/null +++ b/_h5_property_list_8hpp.js @@ -0,0 +1,35 @@ +var _h5_property_list_8hpp = +[ + [ "AttributeCreateProps", "_h5_property_list_8hpp.html#gacb1c3dfd159c55b953758edb7685a049", null ], + [ "DataSetAccessProps", "_h5_property_list_8hpp.html#gaf44317987cc247ecd0a2c0fc7106ca24", null ], + [ "DataSetCreateProps", "_h5_property_list_8hpp.html#ga5d1374d565280c990d8ec175175dd25b", null ], + [ "DataTransferProps", "_h5_property_list_8hpp.html#ga0cf55aeace55556d9c828d69249733b9", null ], + [ "DataTypeAccessProps", "_h5_property_list_8hpp.html#gac8cba5869615a0ed534eabcd4fcf5764", null ], + [ "DataTypeCreateProps", "_h5_property_list_8hpp.html#gafc468b8dcc348886b27bc4edba46caf3", null ], + [ "FileAccessProps", "_h5_property_list_8hpp.html#gabb713eeb1c3198abc08924c3b47c7db2", null ], + [ "FileCreateProps", "_h5_property_list_8hpp.html#ga8b0174aba58621002ec76da62a5f5f13", null ], + [ "GroupAccessProps", "_h5_property_list_8hpp.html#ga68c5d34220b4d213a933c2b7308b174e", null ], + [ "GroupCreateProps", "_h5_property_list_8hpp.html#ga81ced798505b82c667922df6b6936de9", null ], + [ "LinkAccessProps", "_h5_property_list_8hpp.html#gab75da37bb03e01aab133b5addfc04e19", null ], + [ "LinkCreateProps", "_h5_property_list_8hpp.html#ga1808107b873f17c08bc69b747173f4cb", null ], + [ "ObjectCopyProps", "_h5_property_list_8hpp.html#gac6067de093761c8456301af3690b9125", null ], + [ "ObjectCreateProps", "_h5_property_list_8hpp.html#gab5f00c2acd27b216a83e220c5b8d42ec", null ], + [ "StringCreateProps", "_h5_property_list_8hpp.html#ga87ce367dfedef16f5d2c4d37a26e52eb", null ], + [ "PropertyType", "_h5_property_list_8hpp.html#ga097a358bdda37ff6e6b48d9f43664ad4", [ + [ "OBJECT_CREATE", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4afcea7f1287d62768c2fc0ee0cf18023f", null ], + [ "FILE_CREATE", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4a5534109883a2d6699c0262b228c14f67", null ], + [ "FILE_ACCESS", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4a8f93e8ee202d29ba296afdfb6c08550e", null ], + [ "DATASET_CREATE", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4aafd89ef46ba1fc317f8b8cfadbc8e89d", null ], + [ "DATASET_ACCESS", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4a1f9f49c3a9b29c99fd336a46e1fb0b8c", null ], + [ "DATASET_XFER", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4adbac4060e0053cc521283eb9f7d0869e", null ], + [ "GROUP_CREATE", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4aa9f9694169963af7096ae421df5025ce", null ], + [ "GROUP_ACCESS", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4aff3aa98325265641dfb5b6c727973774", null ], + [ "DATATYPE_CREATE", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4a4a9bef3e26735c56f85701720da97704", null ], + [ "DATATYPE_ACCESS", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4a023c2a1da4192ec57c9589f2adcf0375", null ], + [ "STRING_CREATE", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4a8c7bdf2b95146589251f8ecff10ca084", null ], + [ "ATTRIBUTE_CREATE", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4a518c30284a8061ffe051004a0670f135", null ], + [ "OBJECT_COPY", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4a9b0ceee4dc388106832eabb5522d4506", null ], + [ "LINK_CREATE", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4a57fb2f103675cde088df70923f6224b1", null ], + [ "LINK_ACCESS", "_h5_property_list_8hpp.html#gga097a358bdda37ff6e6b48d9f43664ad4a49f33864cd831c0b35b59fc99cb75293", null ] + ] ] +]; \ No newline at end of file diff --git a/_h5_property_list_8hpp__dep__incl.map b/_h5_property_list_8hpp__dep__incl.map new file mode 100644 index 000000000..aac58418d --- /dev/null +++ b/_h5_property_list_8hpp__dep__incl.map @@ -0,0 +1,95 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_property_list_8hpp__dep__incl.md5 b/_h5_property_list_8hpp__dep__incl.md5 new file mode 100644 index 000000000..844506726 --- /dev/null +++ b/_h5_property_list_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +4fedd642a521b63be99d08a5ff43f33f \ No newline at end of file diff --git a/_h5_property_list_8hpp__dep__incl.png b/_h5_property_list_8hpp__dep__incl.png new file mode 100644 index 000000000..dc1443200 Binary files /dev/null and b/_h5_property_list_8hpp__dep__incl.png differ diff --git a/_h5_property_list_8hpp__incl.map b/_h5_property_list_8hpp__incl.map new file mode 100644 index 000000000..aaedb9a8f --- /dev/null +++ b/_h5_property_list_8hpp__incl.map @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_property_list_8hpp__incl.md5 b/_h5_property_list_8hpp__incl.md5 new file mode 100644 index 000000000..4a8634f64 --- /dev/null +++ b/_h5_property_list_8hpp__incl.md5 @@ -0,0 +1 @@ +f0bdbae3e0b648f5b3ee67422fbfe417 \ No newline at end of file diff --git a/_h5_property_list_8hpp__incl.png b/_h5_property_list_8hpp__incl.png new file mode 100644 index 000000000..4ded1315b Binary files /dev/null and b/_h5_property_list_8hpp__incl.png differ diff --git a/_h5_property_list_8hpp_source.html b/_h5_property_list_8hpp_source.html new file mode 100644 index 000000000..4b4d4d0aa --- /dev/null +++ b/_h5_property_list_8hpp_source.html @@ -0,0 +1,734 @@ + + + + + + + +HighFive: highfive/H5PropertyList.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5PropertyList.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017-2018, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 * Juan Hernando <juan.hernando@epfl.ch>
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <vector>
+
12
+
13#include <H5Ppublic.h>
+
14
+
15// Required by MPIOFileAccess
+
16#ifdef H5_HAVE_PARALLEL
+
17#include <H5FDmpi.h>
+
18#endif
+
19
+
20#include "H5Exception.hpp"
+
21#include "H5Object.hpp"
+
22
+
23namespace HighFive {
+
24
+
85
+
+
89enum class PropertyType : int {
+ + + + + + + + + + + + + + + +
105};
+
+
106
+
107namespace details {
+
108template <typename T, typename U>
+
109T get_plist(const U& obj, hid_t (*f)(hid_t)) {
+
110 auto hid = f(obj.getId());
+
111 if (hid < 0) {
+
112 HDF5ErrMapper::ToException<PropertyException>("Unable to get property list");
+
113 }
+
114 T t{};
+
115 t._hid = hid;
+
116 return t;
+
117}
+
118} // namespace details
+
119
+
+ +
123 public:
+
124 PropertyListBase() noexcept;
+
125
+
+
126 static const PropertyListBase& Default() noexcept {
+
127 static const PropertyListBase plist{};
+
128 return plist;
+
129 }
+
+
130
+
131 private:
+
132 template <typename T, typename U>
+
133 friend T details::get_plist(const U&, hid_t (*f)(hid_t));
+
134};
+
+
135
+
145#if HIGHFIVE_HAS_CONCEPTS && __cplusplus >= 202002L
+
146template <typename P>
+
147concept PropertyInterface = requires(P p, const hid_t hid) {
+
148 {p.apply(hid)};
+
149};
+
150
+
151#else
+
152#define PropertyInterface typename
+
153#endif
+
155
+
159template <PropertyType T>
+
+ +
161 public:
+
+
164 constexpr PropertyType getType() const noexcept {
+
165 return T;
+
166 }
+
+
167
+
173 template <PropertyInterface P>
+
174 void add(const P& property);
+
175
+
+
178 static const PropertyList<T>& Default() noexcept {
+
179 return static_cast<const PropertyList<T>&>(PropertyListBase::Default());
+
180 }
+
+
181
+
182 protected:
+
183 void _initializeIfNeeded();
+
184};
+
+
185
+ + + + + + + + + + + + + + + +
201
+
206template <PropertyType T>
+
+ +
208 public:
+
209 template <typename F, typename... Args>
+
210 void add(const F& funct, const Args&... args);
+
211};
+
+
212
+
213#ifdef H5_HAVE_PARALLEL
+
+ +
221 public:
+
222 MPIOFileAccess(MPI_Comm comm, MPI_Info info);
+
223
+
224 private:
+
225 friend FileAccessProps;
+
226 void apply(const hid_t list) const;
+
227
+
228 MPI_Comm _comm;
+
229 MPI_Info _info;
+
230};
+
+
231
+
+ +
238 public:
+
239 explicit MPIOCollectiveMetadata(bool collective = true);
+
240 explicit MPIOCollectiveMetadata(const FileAccessProps& plist);
+
241
+
242 bool isCollectiveRead() const;
+
243 bool isCollectiveWrite() const;
+
244
+
245
+
246 private:
+
247 friend FileAccessProps;
+
248 void apply(hid_t plist) const;
+
249
+
250 bool collective_read_;
+
251 bool collective_write_;
+
252};
+
+
253
+
+ +
268 public:
+
269 explicit MPIOCollectiveMetadataRead(bool collective = true);
+
270 explicit MPIOCollectiveMetadataRead(const FileAccessProps& plist);
+
271
+
272 bool isCollective() const;
+
273
+
274 private:
+
275 friend FileAccessProps;
+ +
277
+
278 void apply(hid_t plist) const;
+
279
+
280 bool collective_;
+
281};
+
+
282
+
+ +
294 public:
+
295 explicit MPIOCollectiveMetadataWrite(bool collective = true);
+
296 explicit MPIOCollectiveMetadataWrite(const FileAccessProps& plist);
+
297
+
298 bool isCollective() const;
+
299
+
300 private:
+
301 friend FileAccessProps;
+ +
303
+
304 void apply(hid_t plist) const;
+
305
+
306 bool collective_;
+
307};
+
+
308
+
309#endif
+
310
+
+ +
328 public:
+
329 FileVersionBounds(H5F_libver_t low, H5F_libver_t high);
+
330 explicit FileVersionBounds(const FileAccessProps& fapl);
+
331
+
332 std::pair<H5F_libver_t, H5F_libver_t> getVersion() const;
+
333
+
334 private:
+
335 friend FileAccessProps;
+
336 void apply(const hid_t list) const;
+
337
+
338 H5F_libver_t _low;
+
339 H5F_libver_t _high;
+
340};
+
+
341
+
+ +
348 public:
+
349 explicit MetadataBlockSize(hsize_t size);
+
350 explicit MetadataBlockSize(const FileAccessProps& fapl);
+
351
+
352 hsize_t getSize() const;
+
353
+
354 private:
+
355 friend FileAccessProps;
+
356 void apply(const hid_t list) const;
+
357 hsize_t _size;
+
358};
+
+
359
+
360#if H5_VERSION_GE(1, 10, 1)
+
367class FileSpaceStrategy {
+
368 public:
+
375 FileSpaceStrategy(H5F_fspace_strategy_t strategy, hbool_t persist, hsize_t threshold);
+
376 explicit FileSpaceStrategy(const FileCreateProps& fcpl);
+
377
+
378 H5F_fspace_strategy_t getStrategy() const;
+
379 hbool_t getPersist() const;
+
380 hsize_t getThreshold() const;
+
381
+
382 private:
+
383 friend FileCreateProps;
+
384
+
385 void apply(const hid_t list) const;
+
386
+
387 H5F_fspace_strategy_t _strategy;
+
388 hbool_t _persist;
+
389 hsize_t _threshold;
+
390};
+
391
+
401class FileSpacePageSize {
+
402 public:
+
407 explicit FileSpacePageSize(hsize_t page_size);
+
408 explicit FileSpacePageSize(const FileCreateProps& fcpl);
+
409
+
410 hsize_t getPageSize() const;
+
411
+
412 private:
+
413 friend FileCreateProps;
+
414 void apply(const hid_t list) const;
+
415
+
416 hsize_t _page_size;
+
417};
+
418
+
419#ifndef H5_HAVE_PARALLEL
+
431class PageBufferSize {
+
432 public:
+
438 explicit PageBufferSize(size_t page_buffer_size,
+
439 unsigned min_meta_percent = 0,
+
440 unsigned min_raw_percent = 0);
+
441
+
442 explicit PageBufferSize(const FileAccessProps& fapl);
+
443
+
444 size_t getPageBufferSize() const;
+
445 unsigned getMinMetaPercent() const;
+
446 unsigned getMinRawPercent() const;
+
447
+
448 private:
+
449 friend FileAccessProps;
+
450
+
451 void apply(hid_t list) const;
+
452
+
453 size_t _page_buffer_size;
+
454 unsigned _min_meta;
+
455 unsigned _min_raw;
+
456};
+
457#endif
+
458#endif
+
459
+
+ +
464 public:
+
469 explicit EstimatedLinkInfo(unsigned entries, unsigned length);
+
470
+
471 explicit EstimatedLinkInfo(const GroupCreateProps& gcpl);
+
472
+
474 unsigned getEntries() const;
+
475
+
477 unsigned getNameLength() const;
+
478
+
479 private:
+
480 friend GroupCreateProps;
+
481 void apply(hid_t hid) const;
+
482 unsigned _entries;
+
483 unsigned _length;
+
484};
+
+
485
+
486
+
+
488class Chunking {
+
489 public:
+
490 explicit Chunking(const std::vector<hsize_t>& dims);
+
491 Chunking(const std::initializer_list<hsize_t>& items);
+
492
+
493 template <typename... Args>
+
494 explicit Chunking(hsize_t item, Args... args);
+
495
+
496 explicit Chunking(DataSetCreateProps& plist, size_t max_dims = 32);
+
497
+
498 const std::vector<hsize_t>& getDimensions() const noexcept;
+
499
+
500 private:
+
501 friend DataSetCreateProps;
+
502 void apply(hid_t hid) const;
+
503 std::vector<hsize_t> _dims;
+
504};
+
+
505
+
+
507class Deflate {
+
508 public:
+
509 explicit Deflate(unsigned level);
+
510
+
511 private:
+
512 friend DataSetCreateProps;
+
513 friend GroupCreateProps;
+
514 void apply(hid_t hid) const;
+
515 const unsigned _level;
+
516};
+
+
517
+
+
519class Szip {
+
520 public:
+
521 explicit Szip(unsigned options_mask = H5_SZIP_EC_OPTION_MASK,
+
522 unsigned pixels_per_block = H5_SZIP_MAX_PIXELS_PER_BLOCK);
+
523
+
524 unsigned getOptionsMask() const;
+
525 unsigned getPixelsPerBlock() const;
+
526
+
527 private:
+
528 friend DataSetCreateProps;
+
529 void apply(hid_t hid) const;
+
530 const unsigned _options_mask;
+
531 const unsigned _pixels_per_block;
+
532};
+
+
533
+
+
535class Shuffle {
+
536 public:
+
537 Shuffle() = default;
+
538
+
539 private:
+
540 friend DataSetCreateProps;
+
541 void apply(hid_t hid) const;
+
542};
+
+
543
+
+ +
551 public:
+
552 explicit AllocationTime(H5D_alloc_time_t alloc_time);
+
553 explicit AllocationTime(const DataSetCreateProps& dcpl);
+
554
+
555 H5D_alloc_time_t getAllocationTime();
+
556
+
557 private:
+
558 friend DataSetCreateProps;
+
559 void apply(hid_t dcpl) const;
+
560
+
561 H5D_alloc_time_t _alloc_time;
+
562};
+
+
563
+
+
567class Caching {
+
568 public:
+
571 Caching(const size_t numSlots,
+
572 const size_t cacheSize,
+
573 const double w0 = static_cast<double>(H5D_CHUNK_CACHE_W0_DEFAULT));
+
574
+
575 explicit Caching(const DataSetCreateProps& dcpl);
+
576
+
577 size_t getNumSlots() const;
+
578 size_t getCacheSize() const;
+
579 double getW0() const;
+
580
+
581 private:
+
582 friend DataSetAccessProps;
+
583 void apply(hid_t hid) const;
+
584 size_t _numSlots;
+
585 size_t _cacheSize;
+
586 double _w0;
+
587};
+
+
588
+
+ +
591 public:
+
592 explicit CreateIntermediateGroup(bool create = true);
+
593
+
594 explicit CreateIntermediateGroup(const ObjectCreateProps& ocpl);
+ +
596
+
597 bool isSet() const;
+
598
+
599 protected:
+
600 void fromPropertyList(hid_t hid);
+
601
+
602 private:
+
603 friend ObjectCreateProps;
+
604 friend LinkCreateProps;
+
605 void apply(hid_t hid) const;
+
606 bool _create;
+
607};
+
+
608
+
609#ifdef H5_HAVE_PARALLEL
+
+ +
612 public:
+
613 explicit UseCollectiveIO(bool enable = true);
+
614
+
615 explicit UseCollectiveIO(const DataTransferProps& dxpl);
+
616
+
618 bool isCollective() const;
+
619
+
620 private:
+
621 friend DataTransferProps;
+
622 void apply(hid_t hid) const;
+
623 bool _enable;
+
624};
+
+
625
+
626
+
+ +
635 public:
+
636 explicit MpioNoCollectiveCause(const DataTransferProps& dxpl);
+
637
+
639 bool wasCollective() const;
+
640
+
642 uint32_t getLocalCause() const;
+
643
+
645 uint32_t getGlobalCause() const;
+
646
+
648 std::pair<uint32_t, uint32_t> getCause() const;
+
649
+
650 private:
+
651 friend DataTransferProps;
+
652 uint32_t _local_cause;
+
653 uint32_t _global_cause;
+
654};
+
+
655#endif
+
656
+
+ +
+ +
659 Tracked = H5P_CRT_ORDER_TRACKED,
+
660 Indexed = H5P_CRT_ORDER_INDEXED,
+
661 };
+
+
662};
+
+
663
+
+ +
671 public:
+
+
676 explicit LinkCreationOrder(unsigned flags)
+
677 : _flags(flags) {}
+
+
678
+
679 explicit LinkCreationOrder(const FileCreateProps& fcpl);
+
680 explicit LinkCreationOrder(const GroupCreateProps& gcpl);
+
681
+
682 unsigned getFlags() const;
+
683
+
684 protected:
+
685 void fromPropertyList(hid_t hid);
+
686
+
687 private:
+
688 friend FileCreateProps;
+
689 friend GroupCreateProps;
+
690 void apply(hid_t hid) const;
+
691 unsigned _flags;
+
692};
+
+
693
+
694
+
+ +
707 public:
+
714 AttributePhaseChange(unsigned max_compact, unsigned min_dense);
+
715
+
717 explicit AttributePhaseChange(const GroupCreateProps& gcpl);
+
718
+
719 unsigned max_compact() const;
+
720 unsigned min_dense() const;
+
721
+
722 private:
+
723 friend GroupCreateProps;
+
724 void apply(hid_t hid) const;
+
725
+
726 unsigned _max_compact;
+
727 unsigned _min_dense;
+
728};
+
+
729
+
731
+
732} // namespace HighFive
+
733
+ + + + +
When are datasets allocated?
Definition H5PropertyList.hpp:550
+
H5D_alloc_time_t getAllocationTime()
Definition H5PropertyList_misc.hpp:405
+
Set threshold for attribute storage.
Definition H5PropertyList.hpp:706
+
unsigned max_compact() const
Definition H5PropertyList_misc.hpp:558
+
unsigned min_dense() const
Definition H5PropertyList_misc.hpp:562
+
Definition H5PropertyList.hpp:567
+
size_t getNumSlots() const
Definition H5PropertyList_misc.hpp:426
+
size_t getCacheSize() const
Definition H5PropertyList_misc.hpp:430
+
double getW0() const
Definition H5PropertyList_misc.hpp:434
+
Definition H5PropertyList.hpp:488
+
const std::vector< hsize_t > & getDimensions() const noexcept
Definition H5PropertyList_misc.hpp:341
+
Definition H5PropertyList.hpp:590
+
CreateIntermediateGroup(const LinkCreateProps &lcpl)
+
void fromPropertyList(hid_t hid)
Definition H5PropertyList_misc.hpp:457
+
bool isSet() const
Definition H5PropertyList_misc.hpp:467
+
Definition H5PropertyList.hpp:507
+ + + +
Configure the version bounds for the file.
Definition H5PropertyList.hpp:327
+
std::pair< H5F_libver_t, H5F_libver_t > getVersion() const
Definition H5PropertyList_misc.hpp:262
+ + + + + +
Use collective MPI-IO for metadata read and write.
Definition H5PropertyList.hpp:237
+
bool isCollectiveWrite() const
Definition H5PropertyList_misc.hpp:207
+
bool isCollectiveRead() const
Definition H5PropertyList_misc.hpp:203
+
Use collective MPI-IO for metadata read?
Definition H5PropertyList.hpp:267
+
bool isCollective() const
Definition H5PropertyList_misc.hpp:218
+
Use collective MPI-IO for metadata write?
Definition H5PropertyList.hpp:293
+
bool isCollective() const
Definition H5PropertyList_misc.hpp:237
+
Configure MPI access for the file.
Definition H5PropertyList.hpp:220
+
Configure the metadata block size to use writing to files.
Definition H5PropertyList.hpp:347
+
hsize_t getSize() const
Definition H5PropertyList_misc.hpp:287
+
The cause for non-collective I/O.
Definition H5PropertyList.hpp:634
+
uint32_t getGlobalCause() const
The global cause for a non-collective I/O.
Definition H5PropertyList_misc.hpp:513
+
bool wasCollective() const
Was the datatransfer collective?
Definition H5PropertyList_misc.hpp:505
+
std::pair< uint32_t, uint32_t > getCause() const
A pair of the local and global cause for non-collective I/O.
Definition H5PropertyList_misc.hpp:517
+
uint32_t getLocalCause() const
The local cause for a non-collective I/O.
Definition H5PropertyList_misc.hpp:509
+
Definition H5Object.hpp:54
+
Base Class for Property lists, providing global default.
Definition H5PropertyList.hpp:122
+
PropertyListBase() noexcept
Definition H5PropertyList_misc.hpp:58
+
static const PropertyListBase & Default() noexcept
Definition H5PropertyList.hpp:126
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
void _initializeIfNeeded()
Definition H5PropertyList_misc.hpp:63
+
static const PropertyList< T > & Default() noexcept
Return the Default property type object.
Definition H5PropertyList.hpp:178
+
constexpr PropertyType getType() const noexcept
return the type of this PropertyList
Definition H5PropertyList.hpp:164
+
void add(const P &property)
Definition H5PropertyList_misc.hpp:74
+
Definition H5PropertyList.hpp:207
+
void add(const F &funct, const Args &... args)
Definition H5PropertyList_misc.hpp:81
+
Definition H5PropertyList.hpp:535
+ +
Definition H5PropertyList.hpp:519
+
unsigned getPixelsPerBlock() const
Definition H5PropertyList_misc.hpp:376
+
unsigned getOptionsMask() const
Definition H5PropertyList_misc.hpp:372
+
Definition H5PropertyList.hpp:611
+
bool isCollective() const
Does the property request collective IO?
Definition H5PropertyList_misc.hpp:495
+
PropertyType
Types of property lists.
Definition H5PropertyList.hpp:89
+
PropertyList< PropertyType::FILE_ACCESS > FileAccessProps
Definition H5PropertyList.hpp:188
+ + + + + + + + + + + + + + + +
HDF5 file property object.
+
Definition H5_definitions.hpp:15
+
Definition H5PropertyList.hpp:657
+
_CreationOrder
Definition H5PropertyList.hpp:658
+
@ Tracked
Definition H5PropertyList.hpp:659
+
@ Indexed
Definition H5PropertyList.hpp:660
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_property_list__misc_8hpp.html b/_h5_property_list__misc_8hpp.html new file mode 100644 index 000000000..edc4cec40 --- /dev/null +++ b/_h5_property_list__misc_8hpp.html @@ -0,0 +1,230 @@ + + + + + + + +HighFive: highfive/bits/H5PropertyList_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5PropertyList_misc.hpp File Reference
+
+
+
#include <H5Ppublic.h>
+
+Include dependency graph for H5PropertyList_misc.hpp:
+
+
+ + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_property_list__misc_8hpp__dep__incl.map b/_h5_property_list__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..c2ed7fd69 --- /dev/null +++ b/_h5_property_list__misc_8hpp__dep__incl.map @@ -0,0 +1,97 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_property_list__misc_8hpp__dep__incl.md5 b/_h5_property_list__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..6660e7ce8 --- /dev/null +++ b/_h5_property_list__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +a980e418e80d63d2c94965d76094aa25 \ No newline at end of file diff --git a/_h5_property_list__misc_8hpp__dep__incl.png b/_h5_property_list__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..e9555f8e2 Binary files /dev/null and b/_h5_property_list__misc_8hpp__dep__incl.png differ diff --git a/_h5_property_list__misc_8hpp__incl.map b/_h5_property_list__misc_8hpp__incl.map new file mode 100644 index 000000000..6363da675 --- /dev/null +++ b/_h5_property_list__misc_8hpp__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/_h5_property_list__misc_8hpp__incl.md5 b/_h5_property_list__misc_8hpp__incl.md5 new file mode 100644 index 000000000..078600c3f --- /dev/null +++ b/_h5_property_list__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +4eebb188d963f3b2096103e0707e26a4 \ No newline at end of file diff --git a/_h5_property_list__misc_8hpp__incl.png b/_h5_property_list__misc_8hpp__incl.png new file mode 100644 index 000000000..000936210 Binary files /dev/null and b/_h5_property_list__misc_8hpp__incl.png differ diff --git a/_h5_property_list__misc_8hpp_source.html b/_h5_property_list__misc_8hpp_source.html new file mode 100644 index 000000000..04289793b --- /dev/null +++ b/_h5_property_list__misc_8hpp_source.html @@ -0,0 +1,882 @@ + + + + + + + +HighFive: highfive/bits/H5PropertyList_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5PropertyList_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017-2018, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 * Juan Hernando <juan.hernando@epfl.ch>
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <H5Ppublic.h>
+
12
+
13namespace HighFive {
+
14
+
15namespace {
+
16inline hid_t convert_plist_type(PropertyType propertyType) {
+
17 // The HP5_XXX are macros with function calls so we can't assign
+
18 // them as the enum values
+
19 switch (propertyType) {
+ +
21 return H5P_OBJECT_CREATE;
+ +
23 return H5P_FILE_CREATE;
+ +
25 return H5P_FILE_ACCESS;
+ +
27 return H5P_DATASET_CREATE;
+ +
29 return H5P_DATASET_ACCESS;
+ +
31 return H5P_DATASET_XFER;
+ +
33 return H5P_GROUP_CREATE;
+ +
35 return H5P_GROUP_ACCESS;
+ +
37 return H5P_DATATYPE_CREATE;
+ +
39 return H5P_DATATYPE_ACCESS;
+ +
41 return H5P_STRING_CREATE;
+ +
43 return H5P_ATTRIBUTE_CREATE;
+ +
45 return H5P_OBJECT_COPY;
+ +
47 return H5P_LINK_CREATE;
+ +
49 return H5P_LINK_ACCESS;
+
50 default:
+
51 HDF5ErrMapper::ToException<PropertyException>("Unsupported property list type");
+
52 }
+
53}
+
54
+
55} // namespace
+
56
+
57
+
+ +
59 : Object(H5P_DEFAULT) {}
+
+
60
+
61
+
62template <PropertyType T>
+
+ +
64 if (_hid != H5P_DEFAULT) {
+
65 return;
+
66 }
+
67 if ((_hid = H5Pcreate(convert_plist_type(T))) < 0) {
+
68 HDF5ErrMapper::ToException<PropertyException>("Unable to create property list");
+
69 }
+
70}
+
+
71
+
72template <PropertyType T>
+
73template <PropertyInterface P>
+
+
74inline void PropertyList<T>::add(const P& property) {
+
75 _initializeIfNeeded();
+
76 property.apply(_hid);
+
77}
+
+
78
+
79template <PropertyType T>
+
80template <typename F, typename... Args>
+
+
81inline void RawPropertyList<T>::add(const F& funct, const Args&... args) {
+
82 this->_initializeIfNeeded();
+
83 if (funct(this->_hid, args...) < 0) {
+
84 HDF5ErrMapper::ToException<PropertyException>("Error setting raw hdf5 property.");
+
85 }
+
86}
+
+
87
+
88// Specific options to be added to Property Lists
+
89#if H5_VERSION_GE(1, 10, 1)
+
90inline FileSpaceStrategy::FileSpaceStrategy(H5F_fspace_strategy_t strategy,
+
91 hbool_t persist,
+
92 hsize_t threshold)
+
93 : _strategy(strategy)
+
94 , _persist(persist)
+
95 , _threshold(threshold) {}
+
96
+
97inline FileSpaceStrategy::FileSpaceStrategy(const FileCreateProps& fcpl) {
+
98 if (H5Pget_file_space_strategy(fcpl.getId(), &_strategy, &_persist, &_threshold) < 0) {
+
99 HDF5ErrMapper::ToException<PropertyException>("Unable to get file space strategy");
+
100 }
+
101}
+
102
+
103inline void FileSpaceStrategy::apply(const hid_t list) const {
+
104 if (H5Pset_file_space_strategy(list, _strategy, _persist, _threshold) < 0) {
+
105 HDF5ErrMapper::ToException<PropertyException>("Error setting file space strategy.");
+
106 }
+
107}
+
108
+
109inline H5F_fspace_strategy_t FileSpaceStrategy::getStrategy() const {
+
110 return _strategy;
+
111}
+
112
+
113inline hbool_t FileSpaceStrategy::getPersist() const {
+
114 return _persist;
+
115}
+
116
+
117inline hsize_t FileSpaceStrategy::getThreshold() const {
+
118 return _threshold;
+
119}
+
120
+
121inline FileSpacePageSize::FileSpacePageSize(hsize_t page_size)
+
122 : _page_size(page_size) {}
+
123
+
124inline void FileSpacePageSize::apply(const hid_t list) const {
+
125 if (H5Pset_file_space_page_size(list, _page_size) < 0) {
+
126 HDF5ErrMapper::ToException<PropertyException>("Error setting file space page size.");
+
127 }
+
128}
+
129
+
130inline FileSpacePageSize::FileSpacePageSize(const FileCreateProps& fcpl) {
+
131 if (H5Pget_file_space_page_size(fcpl.getId(), &_page_size) < 0) {
+
132 HDF5ErrMapper::ToException<PropertyException>("Unable to get file space page size");
+
133 }
+
134}
+
135
+
136inline hsize_t FileSpacePageSize::getPageSize() const {
+
137 return _page_size;
+
138}
+
139
+
140#ifndef H5_HAVE_PARALLEL
+
141inline PageBufferSize::PageBufferSize(size_t page_buffer_size,
+
142 unsigned min_meta_percent,
+
143 unsigned min_raw_percent)
+
144 : _page_buffer_size(page_buffer_size)
+
145 , _min_meta(min_meta_percent)
+
146 , _min_raw(min_raw_percent) {}
+
147
+
148inline PageBufferSize::PageBufferSize(const FileAccessProps& plist) {
+
149 if (H5Pget_page_buffer_size(plist.getId(), &_page_buffer_size, &_min_meta, &_min_raw) < 0) {
+
150 HDF5ErrMapper::ToException<PropertyException>("Error setting page buffer size.");
+
151 }
+
152}
+
153
+
154inline void PageBufferSize::apply(const hid_t list) const {
+
155 if (H5Pset_page_buffer_size(list, _page_buffer_size, _min_meta, _min_raw) < 0) {
+
156 HDF5ErrMapper::ToException<PropertyException>("Error setting page buffer size.");
+
157 }
+
158}
+
159
+
160inline size_t PageBufferSize::getPageBufferSize() const {
+
161 return _page_buffer_size;
+
162}
+
163
+
164inline unsigned PageBufferSize::getMinMetaPercent() const {
+
165 return _min_meta;
+
166}
+
167
+
168inline unsigned PageBufferSize::getMinRawPercent() const {
+
169 return _min_raw;
+
170}
+
171#endif
+
172#endif
+
173
+
174#ifdef H5_HAVE_PARALLEL
+
175
+
+
176inline MPIOFileAccess::MPIOFileAccess(MPI_Comm comm, MPI_Info info)
+
177 : _comm(comm)
+
178 , _info(info) {}
+
+
179
+
180inline void MPIOFileAccess::apply(const hid_t list) const {
+
181 if (H5Pset_fapl_mpio(list, _comm, _info) < 0) {
+
182 HDF5ErrMapper::ToException<FileException>("Unable to set-up MPIO Driver configuration");
+
183 }
+
184}
+
185
+
186inline void MPIOCollectiveMetadata::apply(const hid_t plist) const {
+
187 auto read = MPIOCollectiveMetadataRead{collective_read_};
+
188 auto write = MPIOCollectiveMetadataWrite{collective_write_};
+
189
+
190 read.apply(plist);
+
191 write.apply(plist);
+
192}
+
193
+
+ +
195 : collective_read_(collective)
+
196 , collective_write_(collective) {}
+
+
197
+
198
+
+ +
200 : collective_read_(MPIOCollectiveMetadataRead(plist).isCollective())
+
201 , collective_write_(MPIOCollectiveMetadataWrite(plist).isCollective()) {}
+
+
202
+
+ +
204 return collective_read_;
+
205}
+
+
206
+
+ +
208 return collective_write_;
+
209}
+
+
210
+
211
+
212inline void MPIOCollectiveMetadataRead::apply(const hid_t plist) const {
+
213 if (H5Pset_all_coll_metadata_ops(plist, collective_) < 0) {
+
214 HDF5ErrMapper::ToException<FileException>("Unable to request collective metadata reads");
+
215 }
+
216}
+
217
+
+ +
219 return collective_;
+
220}
+
+
221
+
+ +
223 if (H5Pget_all_coll_metadata_ops(plist.getId(), &collective_) < 0) {
+
224 HDF5ErrMapper::ToException<PropertyException>("Error loading MPI metadata read.");
+
225 }
+
226}
+
+
227
+
+ +
229 : collective_(collective) {}
+
+
230
+
231inline void MPIOCollectiveMetadataWrite::apply(const hid_t plist) const {
+
232 if (H5Pset_coll_metadata_write(plist, collective_) < 0) {
+
233 HDF5ErrMapper::ToException<FileException>("Unable to request collective metadata writes");
+
234 }
+
235}
+
236
+
+ +
238 return collective_;
+
239}
+
+
240
+
+ +
242 if (H5Pget_coll_metadata_write(plist.getId(), &collective_) < 0) {
+
243 HDF5ErrMapper::ToException<PropertyException>("Error loading MPI metadata write.");
+
244 }
+
245}
+
+
246
+
+ +
248 : collective_(collective) {}
+
+
249
+
250#endif
+
251
+
+
252inline FileVersionBounds::FileVersionBounds(H5F_libver_t low, H5F_libver_t high)
+
253 : _low(low)
+
254 , _high(high) {}
+
+
255
+
+ +
257 if (H5Pget_libver_bounds(fapl.getId(), &_low, &_high) < 0) {
+
258 HDF5ErrMapper::ToException<PropertyException>("Unable to access file version bounds");
+
259 }
+
260}
+
+
261
+
+
262inline std::pair<H5F_libver_t, H5F_libver_t> FileVersionBounds::getVersion() const {
+
263 return std::make_pair(_low, _high);
+
264}
+
+
265
+
266inline void FileVersionBounds::apply(const hid_t list) const {
+
267 if (H5Pset_libver_bounds(list, _low, _high) < 0) {
+
268 HDF5ErrMapper::ToException<PropertyException>("Error setting file version bounds");
+
269 }
+
270}
+
271
+
+ +
273 : _size(size) {}
+
+
274
+
+ +
276 if (H5Pget_meta_block_size(fapl.getId(), &_size) < 0) {
+
277 HDF5ErrMapper::ToException<PropertyException>("Unable to access file metadata block size");
+
278 }
+
279}
+
+
280
+
281inline void MetadataBlockSize::apply(const hid_t list) const {
+
282 if (H5Pset_meta_block_size(list, _size) < 0) {
+
283 HDF5ErrMapper::ToException<PropertyException>("Error setting metadata block size");
+
284 }
+
285}
+
286
+
+
287inline hsize_t MetadataBlockSize::getSize() const {
+
288 return _size;
+
289}
+
+
290
+
291inline void EstimatedLinkInfo::apply(const hid_t hid) const {
+
292 if (H5Pset_est_link_info(hid, _entries, _length) < 0) {
+
293 HDF5ErrMapper::ToException<PropertyException>("Error setting estimated link info");
+
294 }
+
295}
+
296
+
+
297inline EstimatedLinkInfo::EstimatedLinkInfo(unsigned entries, unsigned length)
+
298 : _entries(entries)
+
299 , _length(length) {}
+
+
300
+
+ +
302 if (H5Pget_est_link_info(gcpl.getId(), &_entries, &_length) < 0) {
+
303 HDF5ErrMapper::ToException<PropertyException>("Unable to access group link size property");
+
304 }
+
305}
+
+
306
+
+
307inline unsigned EstimatedLinkInfo::getEntries() const {
+
308 return _entries;
+
309}
+
+
310
+
+
311inline unsigned EstimatedLinkInfo::getNameLength() const {
+
312 return _length;
+
313}
+
+
314
+
315inline void Chunking::apply(const hid_t hid) const {
+
316 if (H5Pset_chunk(hid, static_cast<int>(_dims.size()), _dims.data()) < 0) {
+
317 HDF5ErrMapper::ToException<PropertyException>("Error setting chunk property");
+
318 }
+
319}
+
320
+
+
321inline Chunking::Chunking(const std::vector<hsize_t>& dims)
+
322 : _dims(dims) {}
+
+
323
+
+
324inline Chunking::Chunking(const std::initializer_list<hsize_t>& items)
+
325 : Chunking(std::vector<hsize_t>{items}) {}
+
+
326
+
+
327inline Chunking::Chunking(DataSetCreateProps& plist, size_t max_dims)
+
328 : _dims(max_dims + 1) {
+
329 auto n_loaded = H5Pget_chunk(plist.getId(), static_cast<int>(_dims.size()), _dims.data());
+
330 if (n_loaded < 0) {
+
331 HDF5ErrMapper::ToException<PropertyException>("Error getting chunk size");
+
332 }
+
333
+
334 if (n_loaded >= static_cast<int>(_dims.size())) {
+
335 *this = Chunking(plist, 8 * max_dims);
+
336 } else {
+
337 _dims.resize(static_cast<size_t>(n_loaded));
+
338 }
+
339}
+
+
340
+
+
341inline const std::vector<hsize_t>& Chunking::getDimensions() const noexcept {
+
342 return _dims;
+
343}
+
+
344
+
345template <typename... Args>
+
+
346inline Chunking::Chunking(hsize_t item, Args... args)
+
347 : Chunking(std::vector<hsize_t>{item, static_cast<hsize_t>(args)...}) {}
+
+
348
+
349inline void Deflate::apply(const hid_t hid) const {
+
350 if (!H5Zfilter_avail(H5Z_FILTER_DEFLATE) || H5Pset_deflate(hid, _level) < 0) {
+
351 HDF5ErrMapper::ToException<PropertyException>("Error setting deflate property");
+
352 }
+
353}
+
354
+
+
355inline Deflate::Deflate(unsigned int level)
+
356 : _level(level) {}
+
+
357
+
358inline void Szip::apply(const hid_t hid) const {
+
359 if (!H5Zfilter_avail(H5Z_FILTER_SZIP)) {
+
360 HDF5ErrMapper::ToException<PropertyException>("Error setting szip property");
+
361 }
+
362
+
363 if (H5Pset_szip(hid, _options_mask, _pixels_per_block) < 0) {
+
364 HDF5ErrMapper::ToException<PropertyException>("Error setting szip property");
+
365 }
+
366}
+
367
+
+
368inline Szip::Szip(unsigned int options_mask, unsigned int pixels_per_block)
+
369 : _options_mask(options_mask)
+
370 , _pixels_per_block(pixels_per_block) {}
+
+
371
+
+
372inline unsigned Szip::getOptionsMask() const {
+
373 return _options_mask;
+
374}
+
+
375
+
+
376inline unsigned Szip::getPixelsPerBlock() const {
+
377 return _pixels_per_block;
+
378}
+
+
379
+
380inline void Shuffle::apply(const hid_t hid) const {
+
381 if (!H5Zfilter_avail(H5Z_FILTER_SHUFFLE)) {
+
382 HDF5ErrMapper::ToException<PropertyException>("Error setting shuffle property");
+
383 }
+
384
+
385 if (H5Pset_shuffle(hid) < 0) {
+
386 HDF5ErrMapper::ToException<PropertyException>("Error setting shuffle property");
+
387 }
+
388}
+
389
+
+
390inline AllocationTime::AllocationTime(H5D_alloc_time_t alloc_time)
+
391 : _alloc_time(alloc_time) {}
+
+
392
+
+ +
394 if (H5Pget_alloc_time(dcpl.getId(), &_alloc_time) < 0) {
+
395 HDF5ErrMapper::ToException<PropertyException>("Error getting allocation time");
+
396 }
+
397}
+
+
398
+
399inline void AllocationTime::apply(hid_t dcpl) const {
+
400 if (H5Pset_alloc_time(dcpl, _alloc_time) < 0) {
+
401 HDF5ErrMapper::ToException<PropertyException>("Error setting allocation time");
+
402 }
+
403}
+
404
+
+
405inline H5D_alloc_time_t AllocationTime::getAllocationTime() {
+
406 return _alloc_time;
+
407}
+
+
408
+
+ +
410 if (H5Pget_chunk_cache(dcpl.getId(), &_numSlots, &_cacheSize, &_w0) < 0) {
+
411 HDF5ErrMapper::ToException<PropertyException>("Error getting dataset cache parameters");
+
412 }
+
413}
+
+
414
+
415inline void Caching::apply(const hid_t hid) const {
+
416 if (H5Pset_chunk_cache(hid, _numSlots, _cacheSize, _w0) < 0) {
+
417 HDF5ErrMapper::ToException<PropertyException>("Error setting dataset cache parameters");
+
418 }
+
419}
+
420
+
+
421inline Caching::Caching(const size_t numSlots, const size_t cacheSize, const double w0)
+
422 : _numSlots(numSlots)
+
423 , _cacheSize(cacheSize)
+
424 , _w0(w0) {}
+
+
425
+
+
426inline size_t Caching::getNumSlots() const {
+
427 return _numSlots;
+
428}
+
+
429
+
+
430inline size_t Caching::getCacheSize() const {
+
431 return _cacheSize;
+
432}
+
+
433
+
+
434inline double Caching::getW0() const {
+
435 return _w0;
+
436}
+
+
437
+
+ +
439 : _create(create) {}
+
+
440
+ +
444
+
445
+
446inline void CreateIntermediateGroup::apply(const hid_t hid) const {
+
447 if (H5Pset_create_intermediate_group(hid, _create ? 1 : 0) < 0) {
+ +
449 "Error setting property for create intermediate groups");
+
450 }
+
451}
+
452
+ +
454 fromPropertyList(lcpl.getId());
+
455}
+
456
+
+ +
458 unsigned c_bool = 0;
+
459 if (H5Pget_create_intermediate_group(hid, &c_bool) < 0) {
+ +
461 "Error getting property for create intermediate groups");
+
462 }
+
463
+
464 _create = bool(c_bool);
+
465}
+
+
466
+
+ +
468 return _create;
+
469}
+
+
470
+
471#ifdef H5_HAVE_PARALLEL
+
+ +
473 : _enable(enable) {}
+
+
474
+
475inline void UseCollectiveIO::apply(const hid_t hid) const {
+
476 if (H5Pset_dxpl_mpio(hid, _enable ? H5FD_MPIO_COLLECTIVE : H5FD_MPIO_INDEPENDENT) < 0) {
+
477 HDF5ErrMapper::ToException<PropertyException>("Error setting H5Pset_dxpl_mpio.");
+
478 }
+
479}
+
480
+
+ +
482 H5FD_mpio_xfer_t collective;
+
483
+
484 if (H5Pget_dxpl_mpio(dxpl.getId(), &collective) < 0) {
+
485 HDF5ErrMapper::ToException<PropertyException>("Error getting H5Pset_dxpl_mpio.");
+
486 }
+
487
+
488 if (collective != H5FD_MPIO_COLLECTIVE && collective != H5FD_MPIO_INDEPENDENT) {
+
489 throw std::logic_error("H5Pget_dxpl_mpio returned something strange.");
+
490 }
+
491
+
492 _enable = collective == H5FD_MPIO_COLLECTIVE;
+
493}
+
+
494
+
+
495inline bool UseCollectiveIO::isCollective() const {
+
496 return _enable;
+
497}
+
+
498
+
+ +
500 if (H5Pget_mpio_no_collective_cause(dxpl.getId(), &_local_cause, &_global_cause) < 0) {
+
501 HDF5ErrMapper::ToException<PropertyException>("Failed to check mpio_no_collective_cause.");
+
502 }
+
503}
+
+
504
+
+ +
506 return _local_cause == 0 && _global_cause == 0;
+
507}
+
+
508
+
+ +
510 return _local_cause;
+
511}
+
+
512
+
+ +
514 return _global_cause;
+
515}
+
+
516
+
+
517inline std::pair<uint32_t, uint32_t> MpioNoCollectiveCause::getCause() const {
+
518 return {_local_cause, _global_cause};
+
519}
+
+
520#endif
+
521
+
+ +
523 fromPropertyList(fcpl.getId());
+
524}
+
+
525
+ +
527 fromPropertyList(gcpl.getId());
+
528}
+
529
+
+
530inline unsigned LinkCreationOrder::getFlags() const {
+
531 return _flags;
+
532}
+
+
533
+
534inline void LinkCreationOrder::apply(const hid_t hid) const {
+
535 if (H5Pset_link_creation_order(hid, _flags) < 0) {
+
536 HDF5ErrMapper::ToException<PropertyException>("Error setting LinkCreationOrder.");
+
537 }
+
538}
+
539
+
+ +
541 if (H5Pget_link_creation_order(hid, &_flags) < 0) {
+ +
543 "Error getting property for link creation order");
+
544 }
+
545}
+
+
546
+
+
547inline AttributePhaseChange::AttributePhaseChange(unsigned max_compact, unsigned min_dense)
+
548 : _max_compact(max_compact)
+
549 , _min_dense(min_dense) {}
+
+
550
+
+ +
552 if (H5Pget_attr_phase_change(gcpl.getId(), &_max_compact, &_min_dense) < 0) {
+ +
554 "Error getting property for attribute phase change");
+
555 }
+
556}
+
+
557
+
+
558inline unsigned AttributePhaseChange::max_compact() const {
+
559 return _max_compact;
+
560}
+
+
561
+
+
562inline unsigned AttributePhaseChange::min_dense() const {
+
563 return _min_dense;
+
564}
+
+
565
+
566inline void AttributePhaseChange::apply(hid_t hid) const {
+
567 if (H5Pset_attr_phase_change(hid, _max_compact, _min_dense) < 0) {
+ +
569 "Error getting property for attribute phase change");
+
570 }
+
571}
+
572
+
573
+
574} // namespace HighFive
+
H5D_alloc_time_t getAllocationTime()
Definition H5PropertyList_misc.hpp:405
+
AllocationTime(H5D_alloc_time_t alloc_time)
Definition H5PropertyList_misc.hpp:390
+
unsigned max_compact() const
Definition H5PropertyList_misc.hpp:558
+
AttributePhaseChange(unsigned max_compact, unsigned min_dense)
Create the property from the threshold values.
Definition H5PropertyList_misc.hpp:547
+
unsigned min_dense() const
Definition H5PropertyList_misc.hpp:562
+
size_t getNumSlots() const
Definition H5PropertyList_misc.hpp:426
+
Caching(const size_t numSlots, const size_t cacheSize, const double w0=static_cast< double >(H5D_CHUNK_CACHE_W0_DEFAULT))
Definition H5PropertyList_misc.hpp:421
+
size_t getCacheSize() const
Definition H5PropertyList_misc.hpp:430
+
double getW0() const
Definition H5PropertyList_misc.hpp:434
+
Definition H5PropertyList.hpp:488
+
const std::vector< hsize_t > & getDimensions() const noexcept
Definition H5PropertyList_misc.hpp:341
+
Chunking(const std::vector< hsize_t > &dims)
Definition H5PropertyList_misc.hpp:321
+
CreateIntermediateGroup(bool create=true)
Definition H5PropertyList_misc.hpp:438
+
void fromPropertyList(hid_t hid)
Definition H5PropertyList_misc.hpp:457
+
bool isSet() const
Definition H5PropertyList_misc.hpp:467
+
Deflate(unsigned level)
Definition H5PropertyList_misc.hpp:355
+ + + +
std::pair< H5F_libver_t, H5F_libver_t > getVersion() const
Definition H5PropertyList_misc.hpp:262
+
FileVersionBounds(H5F_libver_t low, H5F_libver_t high)
Definition H5PropertyList_misc.hpp:252
+ + + +
bool isCollectiveWrite() const
Definition H5PropertyList_misc.hpp:207
+
MPIOCollectiveMetadata(bool collective=true)
Definition H5PropertyList_misc.hpp:194
+
bool isCollectiveRead() const
Definition H5PropertyList_misc.hpp:203
+
Use collective MPI-IO for metadata read?
Definition H5PropertyList.hpp:267
+
bool isCollective() const
Definition H5PropertyList_misc.hpp:218
+
MPIOCollectiveMetadataRead(bool collective=true)
Definition H5PropertyList_misc.hpp:228
+
Use collective MPI-IO for metadata write?
Definition H5PropertyList.hpp:293
+
bool isCollective() const
Definition H5PropertyList_misc.hpp:237
+
MPIOCollectiveMetadataWrite(bool collective=true)
Definition H5PropertyList_misc.hpp:247
+
MPIOFileAccess(MPI_Comm comm, MPI_Info info)
Definition H5PropertyList_misc.hpp:176
+
MetadataBlockSize(hsize_t size)
Definition H5PropertyList_misc.hpp:272
+
hsize_t getSize() const
Definition H5PropertyList_misc.hpp:287
+
uint32_t getGlobalCause() const
The global cause for a non-collective I/O.
Definition H5PropertyList_misc.hpp:513
+
bool wasCollective() const
Was the datatransfer collective?
Definition H5PropertyList_misc.hpp:505
+
std::pair< uint32_t, uint32_t > getCause() const
A pair of the local and global cause for non-collective I/O.
Definition H5PropertyList_misc.hpp:517
+
MpioNoCollectiveCause(const DataTransferProps &dxpl)
Definition H5PropertyList_misc.hpp:499
+
uint32_t getLocalCause() const
The local cause for a non-collective I/O.
Definition H5PropertyList_misc.hpp:509
+
Definition H5Object.hpp:54
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
PropertyListBase() noexcept
Definition H5PropertyList_misc.hpp:58
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
void _initializeIfNeeded()
Definition H5PropertyList_misc.hpp:63
+
void add(const P &property)
Definition H5PropertyList_misc.hpp:74
+
void add(const F &funct, const Args &... args)
Definition H5PropertyList_misc.hpp:81
+
Szip(unsigned options_mask=H5_SZIP_EC_OPTION_MASK, unsigned pixels_per_block=H5_SZIP_MAX_PIXELS_PER_BLOCK)
Definition H5PropertyList_misc.hpp:368
+
unsigned getPixelsPerBlock() const
Definition H5PropertyList_misc.hpp:376
+
unsigned getOptionsMask() const
Definition H5PropertyList_misc.hpp:372
+
bool isCollective() const
Does the property request collective IO?
Definition H5PropertyList_misc.hpp:495
+
UseCollectiveIO(bool enable=true)
Definition H5PropertyList_misc.hpp:472
+
PropertyType
Types of property lists.
Definition H5PropertyList.hpp:89
+
PropertyList< PropertyType::LINK_CREATE > LinkCreateProps
Definition H5PropertyList.hpp:199
+
PropertyList< PropertyType::FILE_CREATE > FileCreateProps
Definition H5PropertyList.hpp:187
+
PropertyList< PropertyType::FILE_ACCESS > FileAccessProps
Definition H5PropertyList.hpp:188
+ + + + + + + + + + + + + + + +
Definition H5_definitions.hpp:15
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_read_write__misc_8hpp.html b/_h5_read_write__misc_8hpp.html new file mode 100644 index 000000000..a55ed87b2 --- /dev/null +++ b/_h5_read_write__misc_8hpp.html @@ -0,0 +1,220 @@ + + + + + + + +HighFive: highfive/bits/H5ReadWrite_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5ReadWrite_misc.hpp File Reference
+
+
+
#include <H5Tpublic.h>
+#include "H5Utils.hpp"
+
+Include dependency graph for H5ReadWrite_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_read_write__misc_8hpp__dep__incl.map b/_h5_read_write__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..74246a493 --- /dev/null +++ b/_h5_read_write__misc_8hpp__dep__incl.map @@ -0,0 +1,48 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_read_write__misc_8hpp__dep__incl.md5 b/_h5_read_write__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..9d8caa5d3 --- /dev/null +++ b/_h5_read_write__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +97b1a05c864fb48beb3fcb8b42dc37ce \ No newline at end of file diff --git a/_h5_read_write__misc_8hpp__dep__incl.png b/_h5_read_write__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..a76076ec7 Binary files /dev/null and b/_h5_read_write__misc_8hpp__dep__incl.png differ diff --git a/_h5_read_write__misc_8hpp__incl.map b/_h5_read_write__misc_8hpp__incl.map new file mode 100644 index 000000000..e12dbd675 --- /dev/null +++ b/_h5_read_write__misc_8hpp__incl.map @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_read_write__misc_8hpp__incl.md5 b/_h5_read_write__misc_8hpp__incl.md5 new file mode 100644 index 000000000..a11615a89 --- /dev/null +++ b/_h5_read_write__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +f9d73788f5b56a9cd4455e308b8f5f9e \ No newline at end of file diff --git a/_h5_read_write__misc_8hpp__incl.png b/_h5_read_write__misc_8hpp__incl.png new file mode 100644 index 000000000..d48b8316e Binary files /dev/null and b/_h5_read_write__misc_8hpp__incl.png differ diff --git a/_h5_read_write__misc_8hpp_source.html b/_h5_read_write__misc_8hpp_source.html new file mode 100644 index 000000000..6d58a10e7 --- /dev/null +++ b/_h5_read_write__misc_8hpp_source.html @@ -0,0 +1,274 @@ + + + + + + + +HighFive: highfive/bits/H5ReadWrite_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5ReadWrite_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c) 2020 Blue Brain Project
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <H5Tpublic.h>
+
12#include "H5Utils.hpp"
+
13
+
14namespace HighFive {
+
15
+
16namespace details {
+
17
+
18template <typename T>
+
19using unqualified_t = typename std::remove_const<typename std::remove_reference<T>::type>::type;
+
20
+
21// Find the type of an eventual char array, otherwise void
+
22template <typename T>
+
23struct type_char_array {
+
24 using type = typename std::conditional<
+
25 std::is_same<typename inspector<T>::base_type, std::string>::value,
+
26 std::string,
+
27 void>::type;
+
28 static constexpr bool is_char_array = false;
+
29};
+
30
+
31template <typename T>
+
32struct type_char_array<T*> {
+
33 using type = typename std::conditional<std::is_same<unqualified_t<T>, char>::value,
+
34 char*,
+
35 typename type_char_array<T>::type>::type;
+
36 static constexpr bool is_char_array = true;
+
37};
+
38
+
39template <typename T, std::size_t N>
+
40struct type_char_array<T[N]> {
+
41 using type = typename std::conditional<std::is_same<unqualified_t<T>, char>::value,
+
42 char[N],
+
43 typename type_char_array<T>::type>::type;
+
44 static constexpr bool is_char_array = true;
+
45};
+
46
+
47template <typename T>
+
48struct BufferInfo {
+
49 using type_no_const = typename std::remove_const<T>::type;
+
50 using elem_type = typename details::inspector<type_no_const>::base_type;
+
51 using char_array_t = typename details::type_char_array<type_no_const>::type;
+
52 static constexpr bool is_char_array = details::type_char_array<type_no_const>::is_char_array;
+
53
+
54 enum Operation { read, write };
+
55 const Operation op;
+
56
+
57 template <class F>
+
58 BufferInfo(const DataType& dtype, F getName, Operation _op);
+
59
+
60 // member data for info depending on the destination dataset type
+
61 const bool is_fixed_len_string;
+
62 const size_t n_dimensions;
+
63 const DataType data_type;
+
64};
+
65
+
66// details implementation
+
67template <typename SrcStrT>
+
68struct string_type_checker {
+
69 static DataType getDataType(const DataType&, const DataType&);
+
70};
+
71
+
72inline void enforce_ascii_hack(const DataType& dst, const DataType& src) {
+
73 // Note: constness only refers to constness of the DataType object, which
+
74 // is just an ID, we can/will change properties of `dst`.
+
75
+
76 // TEMP. CHANGE: Ensure that the character set is properly configured to prevent
+
77 // converter issues on HDF5 <=v1.12.0 when loading ASCII strings first.
+
78 // See https://github.com/HDFGroup/hdf5/issues/544 for further information.
+
79 if (H5Tget_cset(src.getId()) == H5T_CSET_ASCII) {
+
80 H5Tset_cset(dst.getId(), H5T_CSET_ASCII);
+
81 }
+
82}
+
83
+
84template <>
+
85struct string_type_checker<void> {
+
86 inline static DataType getDataType(const DataType& element_type, const DataType& dtype) {
+
87 if (H5Tget_class(element_type.getId()) == H5T_STRING) {
+
88 enforce_ascii_hack(element_type, dtype);
+
89 }
+
90 return element_type;
+
91 }
+
92};
+
93
+
94template <>
+
95struct string_type_checker<std::string> {
+
96 inline static DataType getDataType(const DataType&, const DataType& file_datatype) {
+
97 // The StringBuffer ensures that the data is transformed such that it
+
98 // matches the datatype of the dataset, i.e. `file_datatype` and
+
99 // `mem_datatype` are the same.
+
100 return file_datatype;
+
101 }
+
102};
+
103
+
104template <std::size_t FixedLen>
+
105struct string_type_checker<char[FixedLen]> {
+
106 inline static DataType getDataType(const DataType& element_type, const DataType& dtype) {
+
107 DataType return_type = (dtype.isFixedLenStr()) ? AtomicType<char[FixedLen]>()
+
108 : element_type;
+
109 enforce_ascii_hack(return_type, dtype);
+
110 return return_type;
+
111 }
+
112};
+
113
+
114template <>
+
115struct string_type_checker<char*> {
+
116 inline static DataType getDataType(const DataType&, const DataType& dtype) {
+
117 if (dtype.isFixedLenStr()) {
+
118 throw DataSetException("Can't output variable-length to fixed-length strings");
+
119 }
+
120 DataType return_type = AtomicType<std::string>();
+
121 enforce_ascii_hack(return_type, dtype);
+
122 return return_type;
+
123 }
+
124};
+
125
+
126template <typename T>
+
127template <class F>
+
128BufferInfo<T>::BufferInfo(const DataType& dtype, F getName, Operation _op)
+
129 : op(_op)
+
130 , is_fixed_len_string(dtype.isFixedLenStr())
+
131 // In case we are using Fixed-len strings we need to subtract one dimension
+
132 , n_dimensions(details::inspector<type_no_const>::recursive_ndim -
+
133 ((is_fixed_len_string && is_char_array) ? 1 : 0))
+
134 , data_type(
+
135 string_type_checker<char_array_t>::getDataType(create_datatype<elem_type>(), dtype)) {
+
136 // We warn. In case they are really not convertible an exception will rise on read/write
+
137 if (dtype.getClass() != data_type.getClass()) {
+
138 HIGHFIVE_LOG_WARN(getName() + "\": data and hdf5 dataset have different types: " +
+
139 data_type.string() + " -> " + dtype.string());
+
140 } else if ((dtype.getClass() & data_type.getClass()) == DataTypeClass::Float) {
+ +
142 (op == read) && (dtype.getSize() > data_type.getSize()),
+
143 getName() + "\": hdf5 dataset has higher floating point precision than data on read: " +
+
144 dtype.string() + " -> " + data_type.string());
+
145
+ +
147 (op == write) && (dtype.getSize() < data_type.getSize()),
+
148 getName() +
+
149 "\": data has higher floating point precision than hdf5 dataset on write: " +
+
150 data_type.string() + " -> " + dtype.string());
+
151 }
+
152}
+
153
+
154} // namespace details
+
155
+
156} // namespace HighFive
+
#define HIGHFIVE_LOG_WARN_IF(cond, message)
Definition H5Utility.hpp:190
+
#define HIGHFIVE_LOG_WARN(message)
Definition H5Utility.hpp:186
+ +
Definition H5_definitions.hpp:15
+
DataType create_datatype()
Create a DataType instance representing type T.
Definition H5DataType_misc.hpp:566
+
typename std::remove_const< typename std::remove_reference< T >::type >::type unqualified_t
Definition H5Inspector_misc.hpp:133
+
+
+ + + + diff --git a/_h5_reference_8hpp.html b/_h5_reference_8hpp.html new file mode 100644 index 000000000..e4f6f0984 --- /dev/null +++ b/_h5_reference_8hpp.html @@ -0,0 +1,305 @@ + + + + + + + +HighFive: highfive/H5Reference.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Reference.hpp File Reference
+
+
+
#include <string>
+#include <vector>
+#include <H5Ipublic.h>
+#include <H5Rpublic.h>
+#include "bits/H5_definitions.hpp"
+#include "bits/H5Reference_misc.hpp"
+
+Include dependency graph for H5Reference.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  HighFive::Reference
 An HDF5 (object) reference type. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_reference_8hpp.js b/_h5_reference_8hpp.js new file mode 100644 index 000000000..21af720c4 --- /dev/null +++ b/_h5_reference_8hpp.js @@ -0,0 +1,4 @@ +var _h5_reference_8hpp = +[ + [ "HighFive::Reference", "class_high_five_1_1_reference.html", "class_high_five_1_1_reference" ] +]; \ No newline at end of file diff --git a/_h5_reference_8hpp__dep__incl.map b/_h5_reference_8hpp__dep__incl.map new file mode 100644 index 000000000..d500b5adf --- /dev/null +++ b/_h5_reference_8hpp__dep__incl.map @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_reference_8hpp__dep__incl.md5 b/_h5_reference_8hpp__dep__incl.md5 new file mode 100644 index 000000000..34aedc207 --- /dev/null +++ b/_h5_reference_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +6605fc51a5c830e7375669c191552db2 \ No newline at end of file diff --git a/_h5_reference_8hpp__dep__incl.png b/_h5_reference_8hpp__dep__incl.png new file mode 100644 index 000000000..1ef02cab8 Binary files /dev/null and b/_h5_reference_8hpp__dep__incl.png differ diff --git a/_h5_reference_8hpp__incl.map b/_h5_reference_8hpp__incl.map new file mode 100644 index 000000000..42ff049e2 --- /dev/null +++ b/_h5_reference_8hpp__incl.map @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_reference_8hpp__incl.md5 b/_h5_reference_8hpp__incl.md5 new file mode 100644 index 000000000..bb409640f --- /dev/null +++ b/_h5_reference_8hpp__incl.md5 @@ -0,0 +1 @@ +c32ef361e31b0cff292b5c49402cb8ed \ No newline at end of file diff --git a/_h5_reference_8hpp__incl.png b/_h5_reference_8hpp__incl.png new file mode 100644 index 000000000..59863ef25 Binary files /dev/null and b/_h5_reference_8hpp__incl.png differ diff --git a/_h5_reference_8hpp_source.html b/_h5_reference_8hpp_source.html new file mode 100644 index 000000000..7abb2717b --- /dev/null +++ b/_h5_reference_8hpp_source.html @@ -0,0 +1,182 @@ + + + + + + + +HighFive: highfive/H5Reference.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Reference.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2020, EPFL - Blue Brain Project
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9
+
10#pragma once
+
11
+
12#include <string>
+
13#include <vector>
+
14
+
15#include <H5Ipublic.h>
+
16#include <H5Rpublic.h>
+
17
+ +
19
+
20namespace HighFive {
+
21
+
22namespace details {
+
23template <typename T>
+
24struct inspector;
+
25}
+
+
33class Reference {
+
34 public:
+
36 Reference() = default;
+
37
+
42 Reference(const Object& location, const Object& object);
+
43
+
49 template <typename T>
+
50 T dereference(const Object& location) const;
+
51
+
56 ObjectType getType(const Object& location) const;
+
57
+
58 protected:
+
+
60 inline explicit Reference(const hobj_ref_t h5_ref)
+
61 : href(h5_ref){};
+
+
62
+
67 void create_ref(hobj_ref_t* refptr) const;
+
68
+
69 private:
+
70 Object get_ref(const Object& location) const;
+
71
+
72 hobj_ref_t href{};
+
73 std::string obj_name{};
+
74 hid_t parent_id{};
+
75
+
76 friend struct details::inspector<Reference>;
+
77};
+
+
78
+
79} // namespace HighFive
+
80
+ + + +
Definition H5Object.hpp:54
+
An HDF5 (object) reference type.
Definition H5Reference.hpp:33
+
T dereference(const Object &location) const
Retrieve the Object being referenced by the Reference.
Definition H5Reference_misc.hpp:39
+
Reference(const hobj_ref_t h5_ref)
Create a Reference from a low-level HDF5 object reference.
Definition H5Reference.hpp:60
+
Reference()=default
Create an empty Reference to be initialized later.
+
ObjectType getType(const Object &location) const
Get only the type of the referenced Object.
Definition H5Reference_misc.hpp:34
+
void create_ref(hobj_ref_t *refptr) const
Create the low-level reference and store it at refptr.
Definition H5Reference_misc.hpp:27
+
Definition H5_definitions.hpp:15
+
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+
+
+ + + + diff --git a/_h5_reference__misc_8hpp.html b/_h5_reference__misc_8hpp.html new file mode 100644 index 000000000..a06bc1b23 --- /dev/null +++ b/_h5_reference__misc_8hpp.html @@ -0,0 +1,290 @@ + + + + + + + +HighFive: highfive/bits/H5Reference_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Reference_misc.hpp File Reference
+
+
+
#include <string>
+#include <H5Ppublic.h>
+#include "H5Utils.hpp"
+#include "../H5Object.hpp"
+
+Include dependency graph for H5Reference_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_reference__misc_8hpp__dep__incl.map b/_h5_reference__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..9e3ec3b66 --- /dev/null +++ b/_h5_reference__misc_8hpp__dep__incl.map @@ -0,0 +1,92 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_reference__misc_8hpp__dep__incl.md5 b/_h5_reference__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..93ac5d74a --- /dev/null +++ b/_h5_reference__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +a1787079cfefb9f400c4d5b338d26e3a \ No newline at end of file diff --git a/_h5_reference__misc_8hpp__dep__incl.png b/_h5_reference__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..73357a97f Binary files /dev/null and b/_h5_reference__misc_8hpp__dep__incl.png differ diff --git a/_h5_reference__misc_8hpp__incl.map b/_h5_reference__misc_8hpp__incl.map new file mode 100644 index 000000000..53a2163f6 --- /dev/null +++ b/_h5_reference__misc_8hpp__incl.map @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_reference__misc_8hpp__incl.md5 b/_h5_reference__misc_8hpp__incl.md5 new file mode 100644 index 000000000..99259bc39 --- /dev/null +++ b/_h5_reference__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +e2251f780debf13c48f85e1076be94c8 \ No newline at end of file diff --git a/_h5_reference__misc_8hpp__incl.png b/_h5_reference__misc_8hpp__incl.png new file mode 100644 index 000000000..d6cb03887 Binary files /dev/null and b/_h5_reference__misc_8hpp__incl.png differ diff --git a/_h5_reference__misc_8hpp_source.html b/_h5_reference__misc_8hpp_source.html new file mode 100644 index 000000000..471b8db15 --- /dev/null +++ b/_h5_reference__misc_8hpp_source.html @@ -0,0 +1,198 @@ + + + + + + + +HighFive: highfive/bits/H5Reference_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Reference_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2020, EPFL - Blue Brain Project
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9
+
10#pragma once
+
11
+
12#include <string>
+
13#include <H5Ppublic.h>
+
14
+
15#include "H5Utils.hpp"
+
16
+
17#include "../H5Object.hpp"
+
18
+
19namespace HighFive {
+
20
+
+
21inline Reference::Reference(const Object& location, const Object& object)
+
22 : parent_id(location.getId()) {
+
23 obj_name = details::get_name(
+
24 [&](char* buffer, size_t length) { return H5Iget_name(object.getId(), buffer, length); });
+
25}
+
+
26
+
+
27inline void Reference::create_ref(hobj_ref_t* refptr) const {
+
28 if (H5Rcreate(refptr, parent_id, obj_name.c_str(), H5R_OBJECT, -1) < 0) {
+ +
30 std::string("Unable to create the reference for \"") + obj_name + "\":");
+
31 }
+
32}
+
+
33
+
+
34inline ObjectType Reference::getType(const Object& location) const {
+
35 return get_ref(location).getType();
+
36}
+
+
37
+
38template <typename T>
+
+
39inline T Reference::dereference(const Object& location) const {
+
40 static_assert(std::is_same<DataSet, T>::value || std::is_same<Group, T>::value,
+
41 "We can only (de)reference HighFive::Group or HighFive:DataSet");
+
42 auto obj = get_ref(location);
+
43 if (obj.getType() != T::type) {
+
44 HDF5ErrMapper::ToException<ReferenceException>("Trying to dereference the wrong type");
+
45 }
+
46#if defined __GNUC__ && __GNUC__ < 9
+
47 return std::move(obj);
+
48#else
+
49 return obj;
+
50#endif
+
51}
+
+
52
+
53inline Object Reference::get_ref(const Object& location) const {
+
54 hid_t res;
+
55#if (H5Rdereference_vers == 2)
+
56 if ((res = H5Rdereference(location.getId(), H5P_DEFAULT, H5R_OBJECT, &href)) < 0) {
+
57 HDF5ErrMapper::ToException<ReferenceException>("Unable to dereference.");
+
58 }
+
59#else
+
60 if ((res = H5Rdereference(location.getId(), H5R_OBJECT, &href)) < 0) {
+
61 HDF5ErrMapper::ToException<ReferenceException>("Unable to dereference.");
+
62 }
+
63#endif
+
64 return Object(res);
+
65}
+
66
+
67} // namespace HighFive
+ +
Definition H5Object.hpp:54
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
ObjectType getType() const
Gets the fundamental type of the object (dataset, group, etc)
Definition H5Object_misc.hpp:88
+
T dereference(const Object &location) const
Retrieve the Object being referenced by the Reference.
Definition H5Reference_misc.hpp:39
+
Reference()=default
Create an empty Reference to be initialized later.
+
ObjectType getType(const Object &location) const
Get only the type of the referenced Object.
Definition H5Reference_misc.hpp:34
+
void create_ref(hobj_ref_t *refptr) const
Create the low-level reference and store it at refptr.
Definition H5Reference_misc.hpp:27
+
Definition H5_definitions.hpp:15
+
ObjectType
Enum of the types of objects (H5O api)
Definition H5Object.hpp:24
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_selection_8hpp.html b/_h5_selection_8hpp.html new file mode 100644 index 000000000..5926dc8d4 --- /dev/null +++ b/_h5_selection_8hpp.html @@ -0,0 +1,336 @@ + + + + + + + +HighFive: highfive/H5Selection.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Selection.hpp File Reference
+
+
+
#include "H5DataSet.hpp"
+#include "H5DataSpace.hpp"
+#include "bits/H5Slice_traits.hpp"
+#include "bits/H5Friends.hpp"
+
+Include dependency graph for H5Selection.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  HighFive::Selection
 Selection: represent a view on a slice/part of a dataset. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_selection_8hpp.js b/_h5_selection_8hpp.js new file mode 100644 index 000000000..ed393aff9 --- /dev/null +++ b/_h5_selection_8hpp.js @@ -0,0 +1,4 @@ +var _h5_selection_8hpp = +[ + [ "HighFive::Selection", "class_high_five_1_1_selection.html", "class_high_five_1_1_selection" ] +]; \ No newline at end of file diff --git a/_h5_selection_8hpp__dep__incl.map b/_h5_selection_8hpp__dep__incl.map new file mode 100644 index 000000000..0bebb2c57 --- /dev/null +++ b/_h5_selection_8hpp__dep__incl.map @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_selection_8hpp__dep__incl.md5 b/_h5_selection_8hpp__dep__incl.md5 new file mode 100644 index 000000000..4f88f58da --- /dev/null +++ b/_h5_selection_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +13e591495ed5e8b2998a219375a6e61e \ No newline at end of file diff --git a/_h5_selection_8hpp__dep__incl.png b/_h5_selection_8hpp__dep__incl.png new file mode 100644 index 000000000..21545788e Binary files /dev/null and b/_h5_selection_8hpp__dep__incl.png differ diff --git a/_h5_selection_8hpp__incl.map b/_h5_selection_8hpp__incl.map new file mode 100644 index 000000000..3e3c338dc --- /dev/null +++ b/_h5_selection_8hpp__incl.map @@ -0,0 +1,156 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_selection_8hpp__incl.md5 b/_h5_selection_8hpp__incl.md5 new file mode 100644 index 000000000..c2d3a9edb --- /dev/null +++ b/_h5_selection_8hpp__incl.md5 @@ -0,0 +1 @@ +092defac3e1be019f8ece861fa55d8cd \ No newline at end of file diff --git a/_h5_selection_8hpp__incl.png b/_h5_selection_8hpp__incl.png new file mode 100644 index 000000000..fcc4e77d7 Binary files /dev/null and b/_h5_selection_8hpp__incl.png differ diff --git a/_h5_selection_8hpp_source.html b/_h5_selection_8hpp_source.html new file mode 100644 index 000000000..1942b7583 --- /dev/null +++ b/_h5_selection_8hpp_source.html @@ -0,0 +1,175 @@ + + + + + + + +HighFive: highfive/H5Selection.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Selection.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include "H5DataSet.hpp"
+
12#include "H5DataSpace.hpp"
+ +
14#include "bits/H5Friends.hpp"
+
15
+
16namespace HighFive {
+
17
+
18namespace detail {
+
19Selection make_selection(const DataSpace&, const DataSpace&, const DataSet&);
+
20}
+
21
+
+
27class Selection: public SliceTraits<Selection> {
+
28 public:
+
33 DataSpace getSpace() const noexcept;
+
34
+
40 DataSpace getMemSpace() const noexcept;
+
41
+
46 DataSet& getDataset() noexcept;
+
47 const DataSet& getDataset() const noexcept;
+
48
+
52 const DataType getDataType() const;
+
53
+
54 protected:
+
55 Selection(const DataSpace& memspace, const DataSpace& file_space, const DataSet& set);
+
56
+
57 private:
+
58 DataSpace _mem_space, _file_space;
+
59 DataSet _set;
+
60
+
61#if HIGHFIVE_HAS_FRIEND_DECLARATIONS
+
62 template <typename Derivate>
+
63 friend class ::HighFive::SliceTraits;
+
64#endif
+
65 friend Selection detail::make_selection(const DataSpace&, const DataSpace&, const DataSet&);
+
66};
+
+
67
+
68} // namespace HighFive
+ + + + +
Class representing a dataset.
Definition H5DataSet.hpp:30
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
Selection: represent a view on a slice/part of a dataset.
Definition H5Selection.hpp:27
+
DataSpace getMemSpace() const noexcept
getMemSpace
Definition H5Selection_misc.hpp:24
+
const DataType getDataType() const
return the datatype of the selection
Definition H5Selection_misc.hpp:37
+
DataSet & getDataset() noexcept
getDataSet
Definition H5Selection_misc.hpp:28
+
DataSpace getSpace() const noexcept
getSpace
Definition H5Selection_misc.hpp:20
+
Definition H5Slice_traits.hpp:249
+
Definition H5_definitions.hpp:15
+
+
+ + + + diff --git a/_h5_selection__misc_8hpp.html b/_h5_selection__misc_8hpp.html new file mode 100644 index 000000000..0db111842 --- /dev/null +++ b/_h5_selection__misc_8hpp.html @@ -0,0 +1,163 @@ + + + + + + + +HighFive: highfive/bits/H5Selection_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Selection_misc.hpp File Reference
+
+
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_selection__misc_8hpp__dep__incl.map b/_h5_selection__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..f323aff02 --- /dev/null +++ b/_h5_selection__misc_8hpp__dep__incl.map @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_selection__misc_8hpp__dep__incl.md5 b/_h5_selection__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..2cedf5833 --- /dev/null +++ b/_h5_selection__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +5131209410157c00f17ff16ba8f0883d \ No newline at end of file diff --git a/_h5_selection__misc_8hpp__dep__incl.png b/_h5_selection__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..bbe7f65b4 Binary files /dev/null and b/_h5_selection__misc_8hpp__dep__incl.png differ diff --git a/_h5_selection__misc_8hpp_source.html b/_h5_selection__misc_8hpp_source.html new file mode 100644 index 000000000..a94f53346 --- /dev/null +++ b/_h5_selection__misc_8hpp_source.html @@ -0,0 +1,184 @@ + + + + + + + +HighFive: highfive/bits/H5Selection_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Selection_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11namespace HighFive {
+
12
+
+
13inline Selection::Selection(const DataSpace& memspace,
+
14 const DataSpace& file_space,
+
15 const DataSet& set)
+
16 : _mem_space(memspace)
+
17 , _file_space(file_space)
+
18 , _set(set) {}
+
+
19
+
+
20inline DataSpace Selection::getSpace() const noexcept {
+
21 return _file_space;
+
22}
+
+
23
+
+
24inline DataSpace Selection::getMemSpace() const noexcept {
+
25 return _mem_space;
+
26}
+
+
27
+
+
28inline DataSet& Selection::getDataset() noexcept {
+
29 return _set;
+
30}
+
+
31
+
+
32inline const DataSet& Selection::getDataset() const noexcept {
+
33 return _set;
+
34}
+
+
35
+
36// Not only a shortcut but also for templated compat with H5Dataset
+
+
37inline const DataType Selection::getDataType() const {
+
38 return _set.getDataType();
+
39}
+
+
40
+
41namespace detail {
+
42inline Selection make_selection(const DataSpace& mem_space,
+
43 const DataSpace& file_space,
+
44 const DataSet& set) {
+
45 return Selection(mem_space, file_space, set);
+
46}
+
47} // namespace detail
+
48
+
49} // namespace HighFive
+
Class representing a dataset.
Definition H5DataSet.hpp:30
+
DataType getDataType() const
getDataType
Definition H5DataSet_misc.hpp:28
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
Selection: represent a view on a slice/part of a dataset.
Definition H5Selection.hpp:27
+
DataSpace getMemSpace() const noexcept
getMemSpace
Definition H5Selection_misc.hpp:24
+
const DataType getDataType() const
return the datatype of the selection
Definition H5Selection_misc.hpp:37
+
DataSet & getDataset() noexcept
getDataSet
Definition H5Selection_misc.hpp:28
+
Selection(const DataSpace &memspace, const DataSpace &file_space, const DataSet &set)
Definition H5Selection_misc.hpp:13
+
DataSpace getSpace() const noexcept
getSpace
Definition H5Selection_misc.hpp:20
+
Definition H5_definitions.hpp:15
+
+
+ + + + diff --git a/_h5_slice__traits_8hpp.html b/_h5_slice__traits_8hpp.html new file mode 100644 index 000000000..425d6c809 --- /dev/null +++ b/_h5_slice__traits_8hpp.html @@ -0,0 +1,279 @@ + + + + + + + +HighFive: highfive/bits/H5Slice_traits.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Slice_traits.hpp File Reference
+
+
+
#include <cstdlib>
+#include <vector>
+#include "H5_definitions.hpp"
+#include "H5Utils.hpp"
+#include "../H5PropertyList.hpp"
+
+Include dependency graph for H5Slice_traits.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + + + +

+Classes

class  HighFive::ElementSet
 
struct  HighFive::RegularHyperSlab
 
class  HighFive::HyperSlab
 
class  HighFive::SliceTraits< Derivate >
 
+ + + +

+Namespaces

namespace  HighFive
 
+ + + + + +

+Functions

std::vector< hsize_t > HighFive::toHDF5SizeVector (const std::vector< size_t > &from)
 
std::vector< size_t > HighFive::toSTLSizeVector (const std::vector< hsize_t > &from)
 
+
+
+ + + + diff --git a/_h5_slice__traits_8hpp.js b/_h5_slice__traits_8hpp.js new file mode 100644 index 000000000..fc9ea3ce1 --- /dev/null +++ b/_h5_slice__traits_8hpp.js @@ -0,0 +1,9 @@ +var _h5_slice__traits_8hpp = +[ + [ "HighFive::ElementSet", "class_high_five_1_1_element_set.html", "class_high_five_1_1_element_set" ], + [ "HighFive::RegularHyperSlab", "struct_high_five_1_1_regular_hyper_slab.html", "struct_high_five_1_1_regular_hyper_slab" ], + [ "HighFive::HyperSlab", "class_high_five_1_1_hyper_slab.html", "class_high_five_1_1_hyper_slab" ], + [ "HighFive::SliceTraits< Derivate >", "class_high_five_1_1_slice_traits.html", "class_high_five_1_1_slice_traits" ], + [ "toHDF5SizeVector", "_h5_slice__traits_8hpp.html#acd815ee14c714bfa4ba0f05acc6e486d", null ], + [ "toSTLSizeVector", "_h5_slice__traits_8hpp.html#a1de5c5eaf17007862e5cf63ec186a64e", null ] +]; \ No newline at end of file diff --git a/_h5_slice__traits_8hpp__dep__incl.map b/_h5_slice__traits_8hpp__dep__incl.map new file mode 100644 index 000000000..c5c703be4 --- /dev/null +++ b/_h5_slice__traits_8hpp__dep__incl.map @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_slice__traits_8hpp__dep__incl.md5 b/_h5_slice__traits_8hpp__dep__incl.md5 new file mode 100644 index 000000000..3c7a3153d --- /dev/null +++ b/_h5_slice__traits_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +7673f4d26804d00d26f2c3074335124a \ No newline at end of file diff --git a/_h5_slice__traits_8hpp__dep__incl.png b/_h5_slice__traits_8hpp__dep__incl.png new file mode 100644 index 000000000..ba8e54c23 Binary files /dev/null and b/_h5_slice__traits_8hpp__dep__incl.png differ diff --git a/_h5_slice__traits_8hpp__incl.map b/_h5_slice__traits_8hpp__incl.map new file mode 100644 index 000000000..d5cbe72a4 --- /dev/null +++ b/_h5_slice__traits_8hpp__incl.map @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_slice__traits_8hpp__incl.md5 b/_h5_slice__traits_8hpp__incl.md5 new file mode 100644 index 000000000..b241b22f9 --- /dev/null +++ b/_h5_slice__traits_8hpp__incl.md5 @@ -0,0 +1 @@ +80632ccb24c026cc5d19915b7f8013c8 \ No newline at end of file diff --git a/_h5_slice__traits_8hpp__incl.png b/_h5_slice__traits_8hpp__incl.png new file mode 100644 index 000000000..4ab2cca10 Binary files /dev/null and b/_h5_slice__traits_8hpp__incl.png differ diff --git a/_h5_slice__traits_8hpp_source.html b/_h5_slice__traits_8hpp_source.html new file mode 100644 index 000000000..c4bd350f6 --- /dev/null +++ b/_h5_slice__traits_8hpp_source.html @@ -0,0 +1,466 @@ + + + + + + + +HighFive: highfive/bits/H5Slice_traits.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Slice_traits.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <cstdlib>
+
12#include <vector>
+
13
+
14#include "H5_definitions.hpp"
+
15#include "H5Utils.hpp"
+
16
+
17#include "../H5PropertyList.hpp"
+
18
+
19namespace HighFive {
+
20
+
+ +
22 public:
+
28 explicit ElementSet(std::initializer_list<std::size_t> list);
+
33 explicit ElementSet(std::initializer_list<std::vector<std::size_t>> list);
+
39 explicit ElementSet(const std::vector<std::size_t>& element_ids);
+
44 explicit ElementSet(const std::vector<std::vector<std::size_t>>& element_ids);
+
45
+
46 private:
+
47 std::vector<std::size_t> _ids;
+
48
+
49 template <typename Derivate>
+
50 friend class SliceTraits;
+
51};
+
+
52
+
53namespace detail {
+
54
+
55template <class To, class From>
+
56inline std::vector<To> convertSizeVector(const std::vector<From>& from) {
+
57 std::vector<To> to(from.size());
+
58 std::copy(from.cbegin(), from.cend(), to.begin());
+
59
+
60 return to;
+
61}
+
62} // namespace detail
+
63
+
+
64inline std::vector<hsize_t> toHDF5SizeVector(const std::vector<size_t>& from) {
+
65 return detail::convertSizeVector<hsize_t>(from);
+
66}
+
+
67
+
+
68inline std::vector<size_t> toSTLSizeVector(const std::vector<hsize_t>& from) {
+
69 return detail::convertSizeVector<size_t>(from);
+
70}
+
+
71
+
+ +
73 RegularHyperSlab() = default;
+
74
+
+
75 RegularHyperSlab(std::vector<size_t> offset_,
+
76 std::vector<size_t> count_ = {},
+
77 std::vector<size_t> stride_ = {},
+
78 std::vector<size_t> block_ = {})
+
79 : offset(toHDF5SizeVector(offset_))
+
80 , count(toHDF5SizeVector(count_))
+
81 , stride(toHDF5SizeVector(stride_))
+
82 , block(toHDF5SizeVector(block_)) {}
+
+
83
+
+
84 static RegularHyperSlab fromHDF5Sizes(std::vector<hsize_t> offset_,
+
85 std::vector<hsize_t> count_ = {},
+
86 std::vector<hsize_t> stride_ = {},
+
87 std::vector<hsize_t> block_ = {}) {
+ +
89 slab.offset = offset_;
+
90 slab.count = count_;
+
91 slab.stride = stride_;
+
92 slab.block = block_;
+
93
+
94 return slab;
+
95 }
+
+
96
+
+
97 size_t rank() const {
+
98 return std::max(std::max(offset.size(), count.size()),
+
99 std::max(stride.size(), block.size()));
+
100 }
+
+
101
+
+
103 std::vector<size_t> packedDims() const {
+
104 auto n_dims = rank();
+
105 auto dims = std::vector<size_t>(n_dims, 0);
+
106
+
107 for (size_t i = 0; i < n_dims; ++i) {
+
108 dims[i] = count[i] * (block.empty() ? 1 : block[i]);
+
109 }
+
110
+
111 return dims;
+
112 }
+
+
113
+
114 std::vector<hsize_t> offset;
+
115 std::vector<hsize_t> count;
+
116 std::vector<hsize_t> stride;
+
117 std::vector<hsize_t> block;
+
118};
+
+
119
+
+ +
121 public:
+
+ +
123 selects.emplace_back(RegularHyperSlab{}, Op::None);
+
124 };
+
+
125
+
+
126 explicit HyperSlab(const RegularHyperSlab& sel) {
+
127 selects.emplace_back(sel, Op::Set);
+
128 }
+
+
129
+
+ +
131 auto ret = *this;
+
132 ret |= sel;
+
133 return ret;
+
134 }
+
+
135
+
+ +
137 selects.emplace_back(sel, Op::Or);
+
138 return *this;
+
139 }
+
+
140
+
+ +
142 auto ret = *this;
+
143 ret &= sel;
+
144 return ret;
+
145 }
+
+
146
+
+ +
148 selects.emplace_back(sel, Op::And);
+
149 return *this;
+
150 }
+
+
151
+
+ +
153 auto ret = *this;
+
154 ret ^= sel;
+
155 return ret;
+
156 }
+
+
157
+
+ +
159 selects.emplace_back(sel, Op::Xor);
+
160 return *this;
+
161 }
+
+
162
+
+ +
164 selects.emplace_back(sel, Op::NotA);
+
165 return *this;
+
166 }
+
+
167
+
+ +
169 selects.emplace_back(sel, Op::NotB);
+
170 return *this;
+
171 }
+
+
172
+
+
173 DataSpace apply(const DataSpace& space_) const {
+
174 auto space = space_.clone();
+
175 for (const auto& sel: selects) {
+
176 if (sel.op == Op::None) {
+
177 H5Sselect_none(space.getId());
+
178 } else {
+
179 auto error_code =
+
180 H5Sselect_hyperslab(space.getId(),
+
181 convert(sel.op),
+
182 sel.offset.empty() ? nullptr : sel.offset.data(),
+
183 sel.stride.empty() ? nullptr : sel.stride.data(),
+
184 sel.count.empty() ? nullptr : sel.count.data(),
+
185 sel.block.empty() ? nullptr : sel.block.data());
+
186
+
187 if (error_code < 0) {
+
188 HDF5ErrMapper::ToException<DataSpaceException>("Unable to select hyperslab");
+
189 }
+
190 }
+
191 }
+
192 return space;
+
193 }
+
+
194
+
195 private:
+
196 enum class Op {
+
197 Noop,
+
198 Set,
+
199 Or,
+
200 And,
+
201 Xor,
+
202 NotB,
+
203 NotA,
+
204 Append,
+
205 Prepend,
+
206 Invalid,
+
207 None,
+
208 };
+
209
+
210 H5S_seloper_t convert(Op op) const {
+
211 switch (op) {
+
212 case Op::Noop:
+
213 return H5S_SELECT_NOOP;
+
214 case Op::Set:
+
215 return H5S_SELECT_SET;
+
216 case Op::Or:
+
217 return H5S_SELECT_OR;
+
218 case Op::And:
+
219 return H5S_SELECT_AND;
+
220 case Op::Xor:
+
221 return H5S_SELECT_XOR;
+
222 case Op::NotB:
+
223 return H5S_SELECT_NOTB;
+
224 case Op::NotA:
+
225 return H5S_SELECT_NOTA;
+
226 case Op::Append:
+
227 return H5S_SELECT_APPEND;
+
228 case Op::Prepend:
+
229 return H5S_SELECT_PREPEND;
+
230 case Op::Invalid:
+
231 return H5S_SELECT_INVALID;
+
232 default:
+
233 throw DataSpaceException("Invalid HyperSlab operation.");
+
234 }
+
235 }
+
236
+
237 struct Select_: public RegularHyperSlab {
+
238 Select_(const RegularHyperSlab& sel, Op op_)
+
239 : RegularHyperSlab(sel)
+
240 , op(op_) {}
+
241
+
242 Op op;
+
243 };
+
244
+
245 std::vector<Select_> selects;
+
246};
+
+
247
+
248template <typename Derivate>
+
+ +
250 public:
+
259 Selection select(const HyperSlab& hyperslab) const;
+
260
+
268 Selection select(const HyperSlab& hyperslab, const DataSpace& memspace) const;
+
269
+
277 Selection select(const std::vector<size_t>& offset,
+
278 const std::vector<size_t>& count,
+
279 const std::vector<size_t>& stride = {},
+
280 const std::vector<size_t>& block = {}) const;
+
281
+
287 Selection select(const std::vector<size_t>& columns) const;
+
288
+
292 Selection select(const ElementSet& elements) const;
+
293
+
294 template <typename T>
+
295 T read(const DataTransferProps& xfer_props = DataTransferProps()) const;
+
296
+
306 template <typename T>
+
307 void read(T& array, const DataTransferProps& xfer_props = DataTransferProps()) const;
+
308
+
318 template <typename T>
+
319 void read(T* array,
+
320 const DataType& dtype,
+
321 const DataTransferProps& xfer_props = DataTransferProps()) const;
+
322
+
332 template <typename T>
+
333 void read(T* array, const DataTransferProps& xfer_props = DataTransferProps()) const;
+
334
+
342 template <typename T>
+
343 void write(const T& buffer, const DataTransferProps& xfer_props = DataTransferProps());
+
344
+
359 template <typename T>
+
360 void write_raw(const T* buffer,
+
361 const DataType& mem_datatype,
+
362 const DataTransferProps& xfer_props = DataTransferProps());
+
363
+
371 template <typename T>
+
372 void write_raw(const T* buffer, const DataTransferProps& xfer_props = DataTransferProps());
+
373};
+
+
374
+
375} // namespace HighFive
+ + +
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
DataSpace clone() const
Create a copy of the DataSpace which will have different id.
Definition H5Dataspace_misc.hpp:85
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
Definition H5Slice_traits.hpp:21
+
Definition H5Slice_traits.hpp:120
+
HyperSlab & notA(const RegularHyperSlab &sel)
Definition H5Slice_traits.hpp:163
+
HyperSlab & notB(const RegularHyperSlab &sel)
Definition H5Slice_traits.hpp:168
+
HyperSlab operator&(const RegularHyperSlab &sel) const
Definition H5Slice_traits.hpp:141
+
HyperSlab operator^(const RegularHyperSlab &sel) const
Definition H5Slice_traits.hpp:152
+
HyperSlab operator|(const RegularHyperSlab &sel) const
Definition H5Slice_traits.hpp:130
+
HyperSlab & operator&=(const RegularHyperSlab &sel)
Definition H5Slice_traits.hpp:147
+
HyperSlab()
Definition H5Slice_traits.hpp:122
+
HyperSlab & operator^=(const RegularHyperSlab &sel)
Definition H5Slice_traits.hpp:158
+
HyperSlab(const RegularHyperSlab &sel)
Definition H5Slice_traits.hpp:126
+
HyperSlab & operator|=(const RegularHyperSlab &sel)
Definition H5Slice_traits.hpp:136
+
DataSpace apply(const DataSpace &space_) const
Definition H5Slice_traits.hpp:173
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
Selection: represent a view on a slice/part of a dataset.
Definition H5Selection.hpp:27
+
Definition H5Slice_traits.hpp:249
+
T read(const DataTransferProps &xfer_props=DataTransferProps()) const
Definition H5Slice_traits_misc.hpp:162
+
void write(const T &buffer, const DataTransferProps &xfer_props=DataTransferProps())
Definition H5Slice_traits_misc.hpp:249
+
Selection select(const HyperSlab &hyperslab) const
Select an hyperslab in the current Slice/Dataset.
Definition H5Slice_traits_misc.hpp:82
+
void write_raw(const T *buffer, const DataType &mem_datatype, const DataTransferProps &xfer_props=DataTransferProps())
Definition H5Slice_traits_misc.hpp:278
+
PropertyList< PropertyType::DATASET_XFER > DataTransferProps
Definition H5PropertyList.hpp:191
+
Definition H5_definitions.hpp:15
+
std::vector< size_t > toSTLSizeVector(const std::vector< hsize_t > &from)
Definition H5Slice_traits.hpp:68
+
std::vector< hsize_t > toHDF5SizeVector(const std::vector< size_t > &from)
Definition H5Slice_traits.hpp:64
+ +
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
Definition H5Slice_traits.hpp:72
+
size_t rank() const
Definition H5Slice_traits.hpp:97
+
std::vector< hsize_t > offset
Definition H5Slice_traits.hpp:114
+
std::vector< hsize_t > block
Definition H5Slice_traits.hpp:117
+
std::vector< size_t > packedDims() const
Dimensions when all gaps are removed.
Definition H5Slice_traits.hpp:103
+
RegularHyperSlab(std::vector< size_t > offset_, std::vector< size_t > count_={}, std::vector< size_t > stride_={}, std::vector< size_t > block_={})
Definition H5Slice_traits.hpp:75
+ +
std::vector< hsize_t > count
Definition H5Slice_traits.hpp:115
+
static RegularHyperSlab fromHDF5Sizes(std::vector< hsize_t > offset_, std::vector< hsize_t > count_={}, std::vector< hsize_t > stride_={}, std::vector< hsize_t > block_={})
Definition H5Slice_traits.hpp:84
+
std::vector< hsize_t > stride
Definition H5Slice_traits.hpp:116
+
+
+ + + + diff --git a/_h5_slice__traits__misc_8hpp.html b/_h5_slice__traits__misc_8hpp.html new file mode 100644 index 000000000..ab7d796c8 --- /dev/null +++ b/_h5_slice__traits__misc_8hpp.html @@ -0,0 +1,318 @@ + + + + + + + +HighFive: highfive/bits/H5Slice_traits_misc.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Slice_traits_misc.hpp File Reference
+
+
+
#include <algorithm>
+#include <cassert>
+#include <functional>
+#include <numeric>
+#include <sstream>
+#include <string>
+#include <H5Dpublic.h>
+#include <H5Ppublic.h>
+#include "H5ReadWrite_misc.hpp"
+#include "H5Converter_misc.hpp"
+
+Include dependency graph for H5Slice_traits_misc.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_slice__traits__misc_8hpp__dep__incl.map b/_h5_slice__traits__misc_8hpp__dep__incl.map new file mode 100644 index 000000000..80022f9d3 --- /dev/null +++ b/_h5_slice__traits__misc_8hpp__dep__incl.map @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_slice__traits__misc_8hpp__dep__incl.md5 b/_h5_slice__traits__misc_8hpp__dep__incl.md5 new file mode 100644 index 000000000..d53c72f11 --- /dev/null +++ b/_h5_slice__traits__misc_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +38780fe211fc7370045b1c8311d202de \ No newline at end of file diff --git a/_h5_slice__traits__misc_8hpp__dep__incl.png b/_h5_slice__traits__misc_8hpp__dep__incl.png new file mode 100644 index 000000000..57b402ac5 Binary files /dev/null and b/_h5_slice__traits__misc_8hpp__dep__incl.png differ diff --git a/_h5_slice__traits__misc_8hpp__incl.map b/_h5_slice__traits__misc_8hpp__incl.map new file mode 100644 index 000000000..4122f88c6 --- /dev/null +++ b/_h5_slice__traits__misc_8hpp__incl.map @@ -0,0 +1,140 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_slice__traits__misc_8hpp__incl.md5 b/_h5_slice__traits__misc_8hpp__incl.md5 new file mode 100644 index 000000000..eb2521e48 --- /dev/null +++ b/_h5_slice__traits__misc_8hpp__incl.md5 @@ -0,0 +1 @@ +39e55c56174038dd0ea3d0b338d02f93 \ No newline at end of file diff --git a/_h5_slice__traits__misc_8hpp__incl.png b/_h5_slice__traits__misc_8hpp__incl.png new file mode 100644 index 000000000..0723829e1 Binary files /dev/null and b/_h5_slice__traits__misc_8hpp__incl.png differ diff --git a/_h5_slice__traits__misc_8hpp_source.html b/_h5_slice__traits__misc_8hpp_source.html new file mode 100644 index 000000000..35c6471ed --- /dev/null +++ b/_h5_slice__traits__misc_8hpp_source.html @@ -0,0 +1,482 @@ + + + + + + + +HighFive: highfive/bits/H5Slice_traits_misc.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Slice_traits_misc.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#include <algorithm>
+
12#include <cassert>
+
13#include <functional>
+
14#include <numeric>
+
15#include <sstream>
+
16#include <string>
+
17
+
18#include <H5Dpublic.h>
+
19#include <H5Ppublic.h>
+
20
+
21#include "H5ReadWrite_misc.hpp"
+
22#include "H5Converter_misc.hpp"
+
23
+
24namespace HighFive {
+
25
+
26namespace details {
+
27
+
28// map the correct reference to the dataset depending of the layout
+
29// dataset -> itself
+
30// subselection -> parent dataset
+
31inline const DataSet& get_dataset(const Selection& sel) {
+
32 return sel.getDataset();
+
33}
+
34
+
35inline const DataSet& get_dataset(const DataSet& ds) {
+
36 return ds;
+
37}
+
38
+
39// map the correct memspace identifier depending of the layout
+
40// dataset -> entire memspace
+
41// selection -> resolve space id
+
42inline hid_t get_memspace_id(const Selection& ptr) {
+
43 return ptr.getMemSpace().getId();
+
44}
+
45
+
46inline hid_t get_memspace_id(const DataSet&) {
+
47 return H5S_ALL;
+
48}
+
49} // namespace details
+
50
+
+
51inline ElementSet::ElementSet(std::initializer_list<std::size_t> list)
+
52 : _ids(list) {}
+
+
53
+
+
54inline ElementSet::ElementSet(std::initializer_list<std::vector<std::size_t>> list)
+
55 : ElementSet(std::vector<std::vector<std::size_t>>(list)) {}
+
+
56
+
+
57inline ElementSet::ElementSet(const std::vector<std::size_t>& element_ids)
+
58 : _ids(element_ids) {}
+
+
59
+
+
60inline ElementSet::ElementSet(const std::vector<std::vector<std::size_t>>& element_ids) {
+
61 for (const auto& vec: element_ids) {
+
62 std::copy(vec.begin(), vec.end(), std::back_inserter(_ids));
+
63 }
+
64}
+
+
65
+
66template <typename Derivate>
+
+ +
68 const DataSpace& memspace) const {
+
69 // Note: The current limitation are that memspace must describe a
+
70 // packed memspace.
+
71 //
+
72 // The reason for this is that we're unable to unpack general
+
73 // hyperslabs when the memory is not contiguous, e.g.
+
74 // `std::vector<std::vector<double>>`.
+
75 const auto& slice = static_cast<const Derivate&>(*this);
+
76 auto filespace = hyperslab.apply(slice.getSpace());
+
77
+
78 return detail::make_selection(memspace, filespace, details::get_dataset(slice));
+
79}
+
+
80
+
81template <typename Derivate>
+
+
82inline Selection SliceTraits<Derivate>::select(const HyperSlab& hyper_slab) const {
+
83 const auto& slice = static_cast<const Derivate&>(*this);
+
84 auto filespace = slice.getSpace();
+
85 filespace = hyper_slab.apply(filespace);
+
86
+
87 auto n_elements = H5Sget_select_npoints(filespace.getId());
+
88 auto memspace = DataSpace(std::array<size_t, 1>{size_t(n_elements)});
+
89
+
90 return detail::make_selection(memspace, filespace, details::get_dataset(slice));
+
91}
+
+
92
+
93
+
94template <typename Derivate>
+
+
95inline Selection SliceTraits<Derivate>::select(const std::vector<size_t>& offset,
+
96 const std::vector<size_t>& count,
+
97 const std::vector<size_t>& stride,
+
98 const std::vector<size_t>& block) const {
+
99 auto slab = HyperSlab(RegularHyperSlab(offset, count, stride, block));
+
100 auto memspace = DataSpace(count);
+
101 return select(slab, memspace);
+
102}
+
+
103
+
104template <typename Derivate>
+
+
105inline Selection SliceTraits<Derivate>::select(const std::vector<size_t>& columns) const {
+
106 const auto& slice = static_cast<const Derivate&>(*this);
+
107 const DataSpace& space = slice.getSpace();
+
108 std::vector<size_t> dims = space.getDimensions();
+
109
+
110 std::vector<size_t> counts = dims;
+
111 counts.back() = 1;
+
112
+
113 std::vector<size_t> offsets(dims.size(), 0);
+
114
+
115 HyperSlab slab;
+
116 for (const auto& column: columns) {
+
117 offsets.back() = column;
+
118 slab |= RegularHyperSlab(offsets, counts);
+
119 }
+
120
+
121 std::vector<size_t> memdims = dims;
+
122 memdims.back() = columns.size();
+
123
+
124 return select(slab, DataSpace(memdims));
+
125}
+
+
126
+
127template <typename Derivate>
+
+ +
129 const auto& slice = static_cast<const Derivate&>(*this);
+
130 const hsize_t* data = nullptr;
+
131 const DataSpace space = slice.getSpace().clone();
+
132 const std::size_t length = elements._ids.size();
+
133 if (length % space.getNumberDimensions() != 0) {
+
134 throw DataSpaceException(
+
135 "Number of coordinates in elements picking "
+
136 "should be a multiple of the dimensions.");
+
137 }
+
138 const std::size_t num_elements = length / space.getNumberDimensions();
+
139 std::vector<hsize_t> raw_elements;
+
140
+
141 // optimised at compile time
+
142 // switch for data conversion on 32bits platforms
+
143 if (std::is_same<std::size_t, hsize_t>::value) {
+
144 // `if constexpr` can't be used, thus a reinterpret_cast is needed.
+
145 data = reinterpret_cast<const hsize_t*>(&(elements._ids[0]));
+
146 } else {
+
147 raw_elements.resize(length);
+
148 std::copy(elements._ids.begin(), elements._ids.end(), raw_elements.begin());
+
149 data = raw_elements.data();
+
150 }
+
151
+
152 if (H5Sselect_elements(space.getId(), H5S_SELECT_SET, num_elements, data) < 0) {
+
153 HDF5ErrMapper::ToException<DataSpaceException>("Unable to select elements");
+
154 }
+
155
+
156 return detail::make_selection(DataSpace(num_elements), space, details::get_dataset(slice));
+
157}
+
+
158
+
159
+
160template <typename Derivate>
+
161template <typename T>
+
+
162inline T SliceTraits<Derivate>::read(const DataTransferProps& xfer_props) const {
+
163 T array;
+
164 read(array, xfer_props);
+
165 return array;
+
166}
+
+
167
+
168
+
169template <typename Derivate>
+
170template <typename T>
+
+
171inline void SliceTraits<Derivate>::read(T& array, const DataTransferProps& xfer_props) const {
+
172 const auto& slice = static_cast<const Derivate&>(*this);
+
173 const DataSpace& mem_space = slice.getMemSpace();
+
174
+
175 auto file_datatype = slice.getDataType();
+
176
+
177 const details::BufferInfo<T> buffer_info(
+
178 file_datatype,
+
179 [&slice]() -> std::string { return details::get_dataset(slice).getPath(); },
+
180 details::BufferInfo<T>::Operation::read);
+
181
+
182 if (!details::checkDimensions(mem_space, buffer_info.n_dimensions)) {
+
183 std::ostringstream ss;
+
184 ss << "Impossible to read DataSet of dimensions " << mem_space.getNumberDimensions()
+
185 << " into arrays of dimensions " << buffer_info.n_dimensions;
+
186 throw DataSpaceException(ss.str());
+
187 }
+
188 auto dims = mem_space.getDimensions();
+
189
+
190 if (mem_space.getElementCount() == 0) {
+
191 auto effective_dims = details::squeezeDimensions(dims,
+
192 details::inspector<T>::recursive_ndim);
+
193
+
194 details::inspector<T>::prepare(array, effective_dims);
+
195 return;
+
196 }
+
197
+
198 auto r = details::data_converter::get_reader<T>(dims, array, file_datatype);
+
199 read(r.getPointer(), buffer_info.data_type, xfer_props);
+
200 // re-arrange results
+
201 r.unserialize(array);
+
202
+
203 auto t = buffer_info.data_type;
+
204 auto c = t.getClass();
+
205 if (c == DataTypeClass::VarLen || t.isVariableStr()) {
+
206#if H5_VERSION_GE(1, 12, 0)
+
207 // This one have been created in 1.12.0
+
208 (void) H5Treclaim(t.getId(), mem_space.getId(), xfer_props.getId(), r.getPointer());
+
209#else
+
210 // This one is deprecated since 1.12.0
+
211 (void) H5Dvlen_reclaim(t.getId(), mem_space.getId(), xfer_props.getId(), r.getPointer());
+
212#endif
+
213 }
+
214}
+
+
215
+
216
+
217template <typename Derivate>
+
218template <typename T>
+
+
219inline void SliceTraits<Derivate>::read(T* array,
+
220 const DataType& mem_datatype,
+
221 const DataTransferProps& xfer_props) const {
+
222 static_assert(!std::is_const<T>::value,
+
223 "read() requires a non-const structure to read data into");
+
224
+
225 const auto& slice = static_cast<const Derivate&>(*this);
+
226
+
227 if (H5Dread(details::get_dataset(slice).getId(),
+
228 mem_datatype.getId(),
+
229 details::get_memspace_id(slice),
+
230 slice.getSpace().getId(),
+
231 xfer_props.getId(),
+
232 static_cast<void*>(array)) < 0) {
+
233 HDF5ErrMapper::ToException<DataSetException>("Error during HDF5 Read.");
+
234 }
+
235}
+
+
236
+
237template <typename Derivate>
+
238template <typename T>
+
+
239inline void SliceTraits<Derivate>::read(T* array, const DataTransferProps& xfer_props) const {
+
240 using element_type = typename details::inspector<T>::base_type;
+
241 const DataType& mem_datatype = create_and_check_datatype<element_type>();
+
242
+
243 read(array, mem_datatype, xfer_props);
+
244}
+
+
245
+
246
+
247template <typename Derivate>
+
248template <typename T>
+
+
249inline void SliceTraits<Derivate>::write(const T& buffer, const DataTransferProps& xfer_props) {
+
250 const auto& slice = static_cast<const Derivate&>(*this);
+
251 const DataSpace& mem_space = slice.getMemSpace();
+
252
+
253 if (mem_space.getElementCount() == 0) {
+
254 return;
+
255 }
+
256
+
257 auto file_datatype = slice.getDataType();
+
258
+
+
259 const details::BufferInfo<T> buffer_info(
+
260 file_datatype,
+
261 [&slice]() -> std::string { return details::get_dataset(slice).getPath(); },
+
262 details::BufferInfo<T>::Operation::write);
+
263
+
264 if (!details::checkDimensions(mem_space, buffer_info.n_dimensions)) {
+
265 std::ostringstream ss;
+
266 ss << "Impossible to write buffer of dimensions "
+
267 << details::format_vector(mem_space.getDimensions())
+
+
268 << " into dataset with n = " << buffer_info.n_dimensions << " dimensions.";
+
269 throw DataSpaceException(ss.str());
+
270 }
+
271 auto w = details::data_converter::serialize<T>(buffer, file_datatype);
+
272 write_raw(w.getPointer(), buffer_info.data_type, xfer_props);
+
273}
+
274
+
275
+
276template <typename Derivate>
+
+
277template <typename T>
+
+
278inline void SliceTraits<Derivate>::write_raw(const T* buffer,
+
279 const DataType& mem_datatype,
+
280 const DataTransferProps& xfer_props) {
+
281 const auto& slice = static_cast<const Derivate&>(*this);
+
282
+
283 if (H5Dwrite(details::get_dataset(slice).getId(),
+
284 mem_datatype.getId(),
+
285 details::get_memspace_id(slice),
+
286 slice.getSpace().getId(),
+
+
287 xfer_props.getId(),
+
288 static_cast<const void*>(buffer)) < 0) {
+
289 HDF5ErrMapper::ToException<DataSetException>("Error during HDF5 Write: ");
+
290 }
+
291}
+
+ +
293template <typename Derivate>
+
294template <typename T>
+
+
295inline void SliceTraits<Derivate>::write_raw(const T* buffer, const DataTransferProps& xfer_props) {
+
296 using element_type = typename details::inspector<T>::base_type;
+
297 const auto& mem_datatype = create_and_check_datatype<element_type>();
+
298
+
299 write_raw(buffer, mem_datatype, xfer_props);
+
300}
+
301
+
302
+
303} // namespace HighFive
+
+
+
+
+
+
+
+
+ + +
Exception specific to HighFive DataSpace interface.
Definition H5Exception.hpp:112
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
size_t getNumberDimensions() const
Returns the number of dimensions of a DataSpace.
Definition H5Dataspace_misc.hpp:93
+
size_t getElementCount() const
Return the number of elements in this DataSpace.
Definition H5Dataspace_misc.hpp:112
+
std::vector< size_t > getDimensions() const
Returns the size of the dataset in each dimension.
Definition H5Dataspace_misc.hpp:102
+
DataSpace clone() const
Create a copy of the DataSpace which will have different id.
Definition H5Dataspace_misc.hpp:85
+
HDF5 Data Type.
Definition H5DataType.hpp:58
+
Definition H5Slice_traits.hpp:21
+
ElementSet(std::initializer_list< std::size_t > list)
Create a list of points of N-dimension for selection.
Definition H5Slice_traits_misc.hpp:51
+
Definition H5Slice_traits.hpp:120
+
DataSpace apply(const DataSpace &space_) const
Definition H5Slice_traits.hpp:173
+
hid_t getId() const noexcept
getId
Definition H5Object_misc.hpp:65
+
HDF5 property Lists.
Definition H5PropertyList.hpp:160
+
Selection: represent a view on a slice/part of a dataset.
Definition H5Selection.hpp:27
+
DataSpace getSpace() const noexcept
getSpace
Definition H5Selection_misc.hpp:20
+
T read(const DataTransferProps &xfer_props=DataTransferProps()) const
Definition H5Slice_traits_misc.hpp:162
+
void write(const T &buffer, const DataTransferProps &xfer_props=DataTransferProps())
Definition H5Slice_traits_misc.hpp:249
+
Selection select(const HyperSlab &hyperslab) const
Select an hyperslab in the current Slice/Dataset.
Definition H5Slice_traits_misc.hpp:82
+
void write_raw(const T *buffer, const DataType &mem_datatype, const DataTransferProps &xfer_props=DataTransferProps())
Definition H5Slice_traits_misc.hpp:278
+
Definition H5_definitions.hpp:15
+ +
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
Definition H5Slice_traits.hpp:72
+
+
+ + + + diff --git a/_h5_utility_8hpp.html b/_h5_utility_8hpp.html new file mode 100644 index 000000000..d2c253eed --- /dev/null +++ b/_h5_utility_8hpp.html @@ -0,0 +1,599 @@ + + + + + + + +HighFive: highfive/H5Utility.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Utility.hpp File Reference
+
+
+
#include <H5Epublic.h>
+#include <functional>
+#include <string>
+#include <iostream>
+#include "bits/H5Friends.hpp"
+
+Include dependency graph for H5Utility.hpp:
+
+
+ + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

class  HighFive::SilenceHDF5
 Utility class to disable HDF5 stack printing inside a scope. More...
 
class  HighFive::Logger
 A logger with supporting basic functionality. More...
 
+ + + +

+Namespaces

namespace  HighFive
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Macros

#define HIGHFIVE_LOG_LEVEL_DEBUG   10
 
#define HIGHFIVE_LOG_LEVEL_INFO   20
 
#define HIGHFIVE_LOG_LEVEL_WARN   30
 
#define HIGHFIVE_LOG_LEVEL_ERROR   40
 
#define HIGHFIVE_LOG_LEVEL   HIGHFIVE_LOG_LEVEL_WARN
 
#define HIGHFIVE_LOG_DEBUG(message)    ::HighFive::detail::log(::HighFive::LogSeverity::Debug, (message), __FILE__, __LINE__);
 
#define HIGHFIVE_LOG_DEBUG_IF(cond, message)
 
#define HIGHFIVE_LOG_INFO(message)    ::HighFive::detail::log(::HighFive::LogSeverity::Info, (message), __FILE__, __LINE__);
 
#define HIGHFIVE_LOG_INFO_IF(cond, message)
 
#define HIGHFIVE_LOG_WARN(message)    ::HighFive::detail::log(::HighFive::LogSeverity::Warn, (message), __FILE__, __LINE__);
 
#define HIGHFIVE_LOG_WARN_IF(cond, message)
 
#define HIGHFIVE_LOG_ERROR(message)    ::HighFive::detail::log(::HighFive::LogSeverity::Error, (message), __FILE__, __LINE__);
 
#define HIGHFIVE_LOG_ERROR_IF(cond, message)
 
+ + + +

+Enumerations

enum class  HighFive::LogSeverity { HighFive::Debug = HIGHFIVE_LOG_LEVEL_DEBUG +, HighFive::Info = HIGHFIVE_LOG_LEVEL_INFO +, HighFive::Warn = HIGHFIVE_LOG_LEVEL_WARN +, HighFive::Error = HIGHFIVE_LOG_LEVEL_ERROR + }
 
+ + + + + + + + + + + +

+Functions

std::string HighFive::to_string (LogSeverity severity)
 
void HighFive::default_logging_callback (LogSeverity severity, const std::string &message, const std::string &file, int line)
 
LoggerHighFive::get_global_logger ()
 Obtain a reference to the logger used by HighFive.
 
void HighFive::register_logging_callback (Logger::callback_type cb)
 Sets the callback that's used by the logger.
 
+

Macro Definition Documentation

+ +

◆ HIGHFIVE_LOG_DEBUG

+ +
+
+ + + + + + + + +
#define HIGHFIVE_LOG_DEBUG( message)    ::HighFive::detail::log(::HighFive::LogSeverity::Debug, (message), __FILE__, __LINE__);
+
+ +
+
+ +

◆ HIGHFIVE_LOG_DEBUG_IF

+ +
+
+ + + + + + + + + + + + + + + + + + +
#define HIGHFIVE_LOG_DEBUG_IF( cond,
 message 
)
+
+Value:
if ((cond)) { \
+
HIGHFIVE_LOG_DEBUG((message)); \
+
}
+
+
+
+ +

◆ HIGHFIVE_LOG_ERROR

+ +
+
+ + + + + + + + +
#define HIGHFIVE_LOG_ERROR( message)    ::HighFive::detail::log(::HighFive::LogSeverity::Error, (message), __FILE__, __LINE__);
+
+ +
+
+ +

◆ HIGHFIVE_LOG_ERROR_IF

+ +
+
+ + + + + + + + + + + + + + + + + + +
#define HIGHFIVE_LOG_ERROR_IF( cond,
 message 
)
+
+Value:
if ((cond)) { \
+
HIGHFIVE_LOG_ERROR((message)); \
+
}
+
+
+
+ +

◆ HIGHFIVE_LOG_INFO

+ +
+
+ + + + + + + + +
#define HIGHFIVE_LOG_INFO( message)    ::HighFive::detail::log(::HighFive::LogSeverity::Info, (message), __FILE__, __LINE__);
+
+ +
+
+ +

◆ HIGHFIVE_LOG_INFO_IF

+ +
+
+ + + + + + + + + + + + + + + + + + +
#define HIGHFIVE_LOG_INFO_IF( cond,
 message 
)
+
+Value:
if ((cond)) { \
+
HIGHFIVE_LOG_INFO((message)); \
+
}
+
+
+
+ +

◆ HIGHFIVE_LOG_LEVEL

+ +
+
+ + + + +
#define HIGHFIVE_LOG_LEVEL   HIGHFIVE_LOG_LEVEL_WARN
+
+ +
+
+ +

◆ HIGHFIVE_LOG_LEVEL_DEBUG

+ +
+
+ + + + +
#define HIGHFIVE_LOG_LEVEL_DEBUG   10
+
+ +
+
+ +

◆ HIGHFIVE_LOG_LEVEL_ERROR

+ +
+
+ + + + +
#define HIGHFIVE_LOG_LEVEL_ERROR   40
+
+ +
+
+ +

◆ HIGHFIVE_LOG_LEVEL_INFO

+ +
+
+ + + + +
#define HIGHFIVE_LOG_LEVEL_INFO   20
+
+ +
+
+ +

◆ HIGHFIVE_LOG_LEVEL_WARN

+ +
+
+ + + + +
#define HIGHFIVE_LOG_LEVEL_WARN   30
+
+ +
+
+ +

◆ HIGHFIVE_LOG_WARN

+ +
+
+ + + + + + + + +
#define HIGHFIVE_LOG_WARN( message)    ::HighFive::detail::log(::HighFive::LogSeverity::Warn, (message), __FILE__, __LINE__);
+
+ +
+
+ +

◆ HIGHFIVE_LOG_WARN_IF

+ +
+
+ + + + + + + + + + + + + + + + + + +
#define HIGHFIVE_LOG_WARN_IF( cond,
 message 
)
+
+Value:
if ((cond)) { \
+
HIGHFIVE_LOG_WARN((message)); \
+
}
+
+
+
+
+
+ + + + diff --git a/_h5_utility_8hpp.js b/_h5_utility_8hpp.js new file mode 100644 index 000000000..9792c2179 --- /dev/null +++ b/_h5_utility_8hpp.js @@ -0,0 +1,28 @@ +var _h5_utility_8hpp = +[ + [ "HighFive::SilenceHDF5", "class_high_five_1_1_silence_h_d_f5.html", "class_high_five_1_1_silence_h_d_f5" ], + [ "HighFive::Logger", "class_high_five_1_1_logger.html", "class_high_five_1_1_logger" ], + [ "HIGHFIVE_LOG_DEBUG", "_h5_utility_8hpp.html#a45004ae7b6ee4d36ece02625b803dae1", null ], + [ "HIGHFIVE_LOG_DEBUG_IF", "_h5_utility_8hpp.html#acb450a6ca0ce4ede86eeb543dbb97fd5", null ], + [ "HIGHFIVE_LOG_ERROR", "_h5_utility_8hpp.html#ada09af07f5ee416f589dc4c6b7dfc28d", null ], + [ "HIGHFIVE_LOG_ERROR_IF", "_h5_utility_8hpp.html#aacdac9e7e0e29eb62f7d68b1bddb08b7", null ], + [ "HIGHFIVE_LOG_INFO", "_h5_utility_8hpp.html#aea7948282a427dd2d5a04b87c66d38a0", null ], + [ "HIGHFIVE_LOG_INFO_IF", "_h5_utility_8hpp.html#a15521059b105b67127f790239ab149e5", null ], + [ "HIGHFIVE_LOG_LEVEL", "_h5_utility_8hpp.html#a8e389ca826af6e2e77d72db9fe9a71ee", null ], + [ "HIGHFIVE_LOG_LEVEL_DEBUG", "_h5_utility_8hpp.html#a89e04aa74828b90f31d3d12cf53d3347", null ], + [ "HIGHFIVE_LOG_LEVEL_ERROR", "_h5_utility_8hpp.html#a35fe0e7a0a4ea952af9ecaa18594ef7e", null ], + [ "HIGHFIVE_LOG_LEVEL_INFO", "_h5_utility_8hpp.html#ab7ac8b069d562c15b358763734b4aa07", null ], + [ "HIGHFIVE_LOG_LEVEL_WARN", "_h5_utility_8hpp.html#a233481164afb1c4337fb2c4501dadcb7", null ], + [ "HIGHFIVE_LOG_WARN", "_h5_utility_8hpp.html#a6512d9a30b5c76e13ec5f2756144c91a", null ], + [ "HIGHFIVE_LOG_WARN_IF", "_h5_utility_8hpp.html#a018b242d83052245f9f602f5bac1067f", null ], + [ "LogSeverity", "_h5_utility_8hpp.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246", [ + [ "Debug", "_h5_utility_8hpp.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246aa603905470e2a5b8c13e96b579ef0dba", null ], + [ "Info", "_h5_utility_8hpp.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a4059b0251f66a18cb56f544728796875", null ], + [ "Warn", "_h5_utility_8hpp.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a56525ae64d370c0b448ac0d60710ef17", null ], + [ "Error", "_h5_utility_8hpp.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a902b0d55fddef6f8d651fe1035b7d4bd", null ] + ] ], + [ "default_logging_callback", "_h5_utility_8hpp.html#abf6fe5be71a00bfb4d6b5f65e6248132", null ], + [ "get_global_logger", "_h5_utility_8hpp.html#ad2f60aec2c40524b30248aac67f5eeb5", null ], + [ "register_logging_callback", "_h5_utility_8hpp.html#a4fc91cda37008aea40efbb20a39cf1c9", null ], + [ "to_string", "_h5_utility_8hpp.html#ace8358255410138c5e223747e2a06f36", null ] +]; \ No newline at end of file diff --git a/_h5_utility_8hpp__dep__incl.map b/_h5_utility_8hpp__dep__incl.map new file mode 100644 index 000000000..09f871f89 --- /dev/null +++ b/_h5_utility_8hpp__dep__incl.map @@ -0,0 +1,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_utility_8hpp__dep__incl.md5 b/_h5_utility_8hpp__dep__incl.md5 new file mode 100644 index 000000000..3749a25d1 --- /dev/null +++ b/_h5_utility_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +d0b5e85c9c9f0d8244d0bf152bb1061d \ No newline at end of file diff --git a/_h5_utility_8hpp__dep__incl.png b/_h5_utility_8hpp__dep__incl.png new file mode 100644 index 000000000..84826d10e Binary files /dev/null and b/_h5_utility_8hpp__dep__incl.png differ diff --git a/_h5_utility_8hpp__incl.map b/_h5_utility_8hpp__incl.map new file mode 100644 index 000000000..c137e9778 --- /dev/null +++ b/_h5_utility_8hpp__incl.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/_h5_utility_8hpp__incl.md5 b/_h5_utility_8hpp__incl.md5 new file mode 100644 index 000000000..fa721fa20 --- /dev/null +++ b/_h5_utility_8hpp__incl.md5 @@ -0,0 +1 @@ +cf7289de816d30911ccbefae7df3c82b \ No newline at end of file diff --git a/_h5_utility_8hpp__incl.png b/_h5_utility_8hpp__incl.png new file mode 100644 index 000000000..507faeaae Binary files /dev/null and b/_h5_utility_8hpp__incl.png differ diff --git a/_h5_utility_8hpp_source.html b/_h5_utility_8hpp_source.html new file mode 100644 index 000000000..c43c6127f --- /dev/null +++ b/_h5_utility_8hpp_source.html @@ -0,0 +1,369 @@ + + + + + + + +HighFive: highfive/H5Utility.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Utility.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Blue Brain Project - EPFL (CH)
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9
+
10#pragma once
+
11
+
12#include <H5Epublic.h>
+
13#include <functional>
+
14#include <string>
+
15#include <iostream>
+
16
+
17#include "bits/H5Friends.hpp"
+
18
+
19namespace HighFive {
+
20
+
+ +
25 public:
+
+
26 inline SilenceHDF5(bool enable = true)
+
27 : _client_data(nullptr) {
+
28 H5Eget_auto2(H5E_DEFAULT, &_func, &_client_data);
+
29 if (enable)
+
30 H5Eset_auto2(H5E_DEFAULT, NULL, NULL);
+
31 }
+
+
32
+
+
33 inline ~SilenceHDF5() {
+
34 H5Eset_auto2(H5E_DEFAULT, _func, _client_data);
+
35 }
+
+
36
+
37 private:
+
38 H5E_auto2_t _func;
+
39 void* _client_data;
+
40};
+
+
41
+
42#define HIGHFIVE_LOG_LEVEL_DEBUG 10
+
43#define HIGHFIVE_LOG_LEVEL_INFO 20
+
44#define HIGHFIVE_LOG_LEVEL_WARN 30
+
45#define HIGHFIVE_LOG_LEVEL_ERROR 40
+
46
+
47#ifndef HIGHFIVE_LOG_LEVEL
+
48#define HIGHFIVE_LOG_LEVEL HIGHFIVE_LOG_LEVEL_WARN
+
49#endif
+
50
+ +
57
+
+
58inline std::string to_string(LogSeverity severity) {
+
59 switch (severity) {
+ +
61 return "DEBUG";
+ +
63 return "INFO";
+ +
65 return "WARN";
+ +
67 return "ERROR";
+
68 default:
+
69 return "??";
+
70 }
+
71}
+
+
72
+
+
87class Logger {
+
88 public:
+ +
90 std::function<void(LogSeverity, const std::string&, const std::string&, int)>;
+
91
+
92 public:
+
93 Logger() = delete;
+
94 Logger(const Logger&) = delete;
+
95 Logger(Logger&&) = delete;
+
96
+
+
97 explicit Logger(callback_type cb)
+
98 : _cb(std::move(cb)) {}
+
+
99
+
100 Logger& operator=(const Logger&) = delete;
+
101 Logger& operator=(Logger&&) = delete;
+
102
+
+
103 inline void log(LogSeverity severity,
+
104 const std::string& message,
+
105 const std::string& file,
+
106 int line) {
+
107 _cb(severity, message, file, line);
+
108 }
+
+
109
+
+ +
111 _cb = std::move(cb);
+
112 }
+
+
113
+
114 private:
+
115 callback_type _cb;
+
116};
+
+
117
+
+ +
119 const std::string& message,
+
120 const std::string& file,
+
121 int line) {
+
122 std::clog << file << ": " << line << " :: " << to_string(severity) << message << std::endl;
+
123}
+
+
124
+
+ +
133 static Logger logger(&default_logging_callback);
+
134 return logger;
+
135}
+
+
136
+
+ +
139 auto& logger = get_global_logger();
+
140 logger.set_logging_callback(std::move(cb));
+
141}
+
+
142
+
143namespace detail {
+
145inline void log(LogSeverity severity,
+
146 const std::string& message,
+
147 const std::string& file,
+
148 int line) {
+
149 auto& logger = get_global_logger();
+
150 logger.log(severity, message, file, line);
+
151}
+
152} // namespace detail
+
153
+
154#if HIGHFIVE_LOG_LEVEL <= HIGHFIVE_LOG_LEVEL_DEBUG
+
+
155#define HIGHFIVE_LOG_DEBUG(message) \
+
156 ::HighFive::detail::log(::HighFive::LogSeverity::Debug, (message), __FILE__, __LINE__);
+
+
157
+
158// Useful, for the common pattern: if ...; then log something.
+
+
159#define HIGHFIVE_LOG_DEBUG_IF(cond, message) \
+
160 if ((cond)) { \
+
161 HIGHFIVE_LOG_DEBUG((message)); \
+
162 }
+
+
163
+
164#else
+
165#define HIGHFIVE_LOG_DEBUG(message) ;
+
166#define HIGHFIVE_LOG_DEBUG_IF(cond, message) ;
+
167#endif
+
168
+
169#if HIGHFIVE_LOG_LEVEL <= HIGHFIVE_LOG_LEVEL_INFO
+
+
170#define HIGHFIVE_LOG_INFO(message) \
+
171 ::HighFive::detail::log(::HighFive::LogSeverity::Info, (message), __FILE__, __LINE__);
+
+
172
+
173// Useful, for the common pattern: if ...; then log something.
+
+
174#define HIGHFIVE_LOG_INFO_IF(cond, message) \
+
175 if ((cond)) { \
+
176 HIGHFIVE_LOG_INFO((message)); \
+
177 }
+
+
178
+
179#else
+
180#define HIGHFIVE_LOG_INFO(message) ;
+
181#define HIGHFIVE_LOG_INFO_IF(cond, message) ;
+
182#endif
+
183
+
184
+
185#if HIGHFIVE_LOG_LEVEL <= HIGHFIVE_LOG_LEVEL_WARN
+
+
186#define HIGHFIVE_LOG_WARN(message) \
+
187 ::HighFive::detail::log(::HighFive::LogSeverity::Warn, (message), __FILE__, __LINE__);
+
+
188
+
189// Useful, for the common pattern: if ...; then log something.
+
+
190#define HIGHFIVE_LOG_WARN_IF(cond, message) \
+
191 if ((cond)) { \
+
192 HIGHFIVE_LOG_WARN((message)); \
+
193 }
+
+
194
+
195#else
+
196#define HIGHFIVE_LOG_WARN(message) ;
+
197#define HIGHFIVE_LOG_WARN_IF(cond, message) ;
+
198#endif
+
199
+
200#if HIGHFIVE_LOG_LEVEL <= HIGHFIVE_LOG_LEVEL_ERROR
+
+
201#define HIGHFIVE_LOG_ERROR(message) \
+
202 ::HighFive::detail::log(::HighFive::LogSeverity::Error, (message), __FILE__, __LINE__);
+
+
203
+
204// Useful, for the common pattern: if ...; then log something.
+
+
205#define HIGHFIVE_LOG_ERROR_IF(cond, message) \
+
206 if ((cond)) { \
+
207 HIGHFIVE_LOG_ERROR((message)); \
+
208 }
+
+
209
+
210#else
+
211#define HIGHFIVE_LOG_ERROR(message) ;
+
212#define HIGHFIVE_LOG_ERROR_IF(cond, message) ;
+
213#endif
+
214
+
215} // namespace HighFive
+ +
#define HIGHFIVE_LOG_LEVEL_WARN
Definition H5Utility.hpp:44
+
#define HIGHFIVE_LOG_LEVEL_ERROR
Definition H5Utility.hpp:45
+
#define HIGHFIVE_LOG_LEVEL_DEBUG
Definition H5Utility.hpp:42
+
#define HIGHFIVE_LOG_LEVEL_INFO
Definition H5Utility.hpp:43
+
A logger with supporting basic functionality.
Definition H5Utility.hpp:87
+
Logger(const Logger &)=delete
+
Logger & operator=(const Logger &)=delete
+
std::function< void(LogSeverity, const std::string &, const std::string &, int)> callback_type
Definition H5Utility.hpp:90
+
void set_logging_callback(callback_type cb)
Definition H5Utility.hpp:110
+
Logger(Logger &&)=delete
+
Logger(callback_type cb)
Definition H5Utility.hpp:97
+ +
Logger & operator=(Logger &&)=delete
+
void log(LogSeverity severity, const std::string &message, const std::string &file, int line)
Definition H5Utility.hpp:103
+
Utility class to disable HDF5 stack printing inside a scope.
Definition H5Utility.hpp:24
+
~SilenceHDF5()
Definition H5Utility.hpp:33
+
SilenceHDF5(bool enable=true)
Definition H5Utility.hpp:26
+
Definition H5_definitions.hpp:15
+
void register_logging_callback(Logger::callback_type cb)
Sets the callback that's used by the logger.
Definition H5Utility.hpp:138
+
LogSeverity
Definition H5Utility.hpp:51
+ + + + +
void default_logging_callback(LogSeverity severity, const std::string &message, const std::string &file, int line)
Definition H5Utility.hpp:118
+
std::string to_string(LogSeverity severity)
Definition H5Utility.hpp:58
+
Logger & get_global_logger()
Obtain a reference to the logger used by HighFive.
Definition H5Utility.hpp:132
+
+
+ + + + diff --git a/_h5_utils_8hpp.html b/_h5_utils_8hpp.html new file mode 100644 index 000000000..5b9fea617 --- /dev/null +++ b/_h5_utils_8hpp.html @@ -0,0 +1,291 @@ + + + + + + + +HighFive: highfive/bits/H5Utils.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Utils.hpp File Reference
+
+
+
#include <algorithm>
+#include <array>
+#include <cstddef>
+#include <exception>
+#include <string>
+#include <type_traits>
+#include <vector>
+#include <sstream>
+#include <H5public.h>
+#include "../H5Exception.hpp"
+#include "H5Friends.hpp"
+
+Include dependency graph for H5Utils.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

namespace  HighFive
 
+
+
+ + + + diff --git a/_h5_utils_8hpp__dep__incl.map b/_h5_utils_8hpp__dep__incl.map new file mode 100644 index 000000000..29e0894c9 --- /dev/null +++ b/_h5_utils_8hpp__dep__incl.map @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_utils_8hpp__dep__incl.md5 b/_h5_utils_8hpp__dep__incl.md5 new file mode 100644 index 000000000..bdee82ea4 --- /dev/null +++ b/_h5_utils_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +7821d42d868ffccb51ffb8d71dfe3ba4 \ No newline at end of file diff --git a/_h5_utils_8hpp__dep__incl.png b/_h5_utils_8hpp__dep__incl.png new file mode 100644 index 000000000..a7e3240e5 Binary files /dev/null and b/_h5_utils_8hpp__dep__incl.png differ diff --git a/_h5_utils_8hpp__incl.map b/_h5_utils_8hpp__incl.map new file mode 100644 index 000000000..e6f7e32e6 --- /dev/null +++ b/_h5_utils_8hpp__incl.map @@ -0,0 +1,39 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/_h5_utils_8hpp__incl.md5 b/_h5_utils_8hpp__incl.md5 new file mode 100644 index 000000000..6340ad8e7 --- /dev/null +++ b/_h5_utils_8hpp__incl.md5 @@ -0,0 +1 @@ +f2a753686819964ec02de668d3662da8 \ No newline at end of file diff --git a/_h5_utils_8hpp__incl.png b/_h5_utils_8hpp__incl.png new file mode 100644 index 000000000..e519e82bf Binary files /dev/null and b/_h5_utils_8hpp__incl.png differ diff --git a/_h5_utils_8hpp_source.html b/_h5_utils_8hpp_source.html new file mode 100644 index 000000000..e3cefffdc --- /dev/null +++ b/_h5_utils_8hpp_source.html @@ -0,0 +1,197 @@ + + + + + + + +HighFive: highfive/bits/H5Utils.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Utils.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2017, Adrien Devresse <adrien.devresse@epfl.ch>
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11// internal utilities functions
+
12#include <algorithm>
+
13#include <array>
+
14#include <cstddef> // __GLIBCXX__
+
15#include <exception>
+
16#include <string>
+
17#include <type_traits>
+
18#include <vector>
+
19#include <sstream>
+
20
+
21#include <H5public.h>
+
22
+
23#include "../H5Exception.hpp"
+
24#include "H5Friends.hpp"
+
25
+
26namespace HighFive {
+
27
+
28// If ever used, recognize dimensions of FixedLenStringArray
+
29template <std::size_t N>
+
30class FixedLenStringArray;
+
31
+
32namespace details {
+
33// converter function for hsize_t -> size_t when hsize_t != size_t
+
34template <typename Size>
+
35inline std::vector<std::size_t> to_vector_size_t(const std::vector<Size>& vec) {
+
36 static_assert(std::is_same<Size, std::size_t>::value == false,
+
37 " hsize_t != size_t mandatory here");
+
38 std::vector<size_t> res(vec.size());
+
39 std::transform(vec.cbegin(), vec.cend(), res.begin(), [](Size e) {
+
40 return static_cast<size_t>(e);
+
41 });
+
42 return res;
+
43}
+
44
+
45// converter function for hsize_t -> size_t when size_t == hsize_t
+
46inline std::vector<std::size_t> to_vector_size_t(const std::vector<std::size_t>& vec) {
+
47 return vec;
+
48}
+
49
+
50// read name from a H5 object using the specified function
+
51template <typename T>
+
52inline std::string get_name(T fct) {
+
53 const size_t maxLength = 255;
+
54 char buffer[maxLength + 1];
+
55 ssize_t retcode = fct(buffer, static_cast<hsize_t>(maxLength) + 1);
+
56 if (retcode < 0) {
+
57 HDF5ErrMapper::ToException<GroupException>("Error accessing object name");
+
58 }
+
59 const size_t length = static_cast<std::size_t>(retcode);
+
60 if (length <= maxLength) {
+
61 return std::string(buffer, length);
+
62 }
+
63 std::vector<char> bigBuffer(length + 1, 0);
+
64 fct(bigBuffer.data(), length + 1);
+
65 return std::string(bigBuffer.data(), length);
+
66}
+
67
+
68template <class Container>
+
69inline std::string format_vector(const Container& container) {
+
70 auto sout = std::stringstream{};
+
71
+
72 sout << "[ ";
+
73 for (size_t i = 0; i < container.size(); ++i) {
+
74 sout << container[i] << (i == container.size() - 1 ? "" : ", ");
+
75 }
+
76 sout << "]";
+
77
+
78 return sout.str();
+
79}
+
80
+
81} // namespace details
+
82} // namespace HighFive
+ +
Definition H5_definitions.hpp:15
+
static void ToException(const std::string &prefix_msg)
Definition H5Exception_misc.hpp:42
+
+
+ + + + diff --git a/_h5_version_8hpp.html b/_h5_version_8hpp.html new file mode 100644 index 000000000..226fae6ec --- /dev/null +++ b/_h5_version_8hpp.html @@ -0,0 +1,219 @@ + + + + + + + +HighFive: highfive/H5Version.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Version.hpp File Reference
+
+
+
+This graph shows which files directly or indirectly include this file:
+
+
+ + + + + +
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Macros

#define HIGHFIVE_VERSION_MAJOR   2
 
#define HIGHFIVE_VERSION_MINOR   8
 
#define HIGHFIVE_VERSION_PATCH   0
 
#define HIGHFIVE_VERSION   2.8.0
 Concatenated representation of the HighFive version.
 
#define HIGHFIVE_VERSION_STRING   "2.8.0"
 String representation of the HighFive version.
 
+

Macro Definition Documentation

+ +

◆ HIGHFIVE_VERSION

+ +
+
+ + + + +
#define HIGHFIVE_VERSION   2.8.0
+
+ +

Concatenated representation of the HighFive version.

+
Warning
The macro HIGHFIVE_VERSION by itself isn't valid C/C++.
+

However, it can be stringified with two layers of macros, e.g.,

#define STRINGIFY_VALUE(s) STRINGIFY_NAME(s)
+
#define STRINGIFY_NAME(s) #s
+
+
std::cout << STRINGIFY_VALUE(HIGHFIVE_VERSION) << "\n";
+
#define HIGHFIVE_VERSION
Concatenated representation of the HighFive version.
Definition H5Version.hpp:27
+
+
+
+ +

◆ HIGHFIVE_VERSION_MAJOR

+ +
+
+ + + + +
#define HIGHFIVE_VERSION_MAJOR   2
+
+ +
+
+ +

◆ HIGHFIVE_VERSION_MINOR

+ +
+
+ + + + +
#define HIGHFIVE_VERSION_MINOR   8
+
+ +
+
+ +

◆ HIGHFIVE_VERSION_PATCH

+ +
+
+ + + + +
#define HIGHFIVE_VERSION_PATCH   0
+
+ +
+
+ +

◆ HIGHFIVE_VERSION_STRING

+ +
+
+ + + + +
#define HIGHFIVE_VERSION_STRING   "2.8.0"
+
+ +

String representation of the HighFive version.

+
Warning
This macro only exists from 2.7.1 onwards.
+ +
+
+
+
+ + + + diff --git a/_h5_version_8hpp.js b/_h5_version_8hpp.js new file mode 100644 index 000000000..487e63c03 --- /dev/null +++ b/_h5_version_8hpp.js @@ -0,0 +1,8 @@ +var _h5_version_8hpp = +[ + [ "HIGHFIVE_VERSION", "_h5_version_8hpp.html#a34c5e47396e70779257b4db31ac7b842", null ], + [ "HIGHFIVE_VERSION_MAJOR", "_h5_version_8hpp.html#acbea9a5d26e85ae32c220007e9a8f4b2", null ], + [ "HIGHFIVE_VERSION_MINOR", "_h5_version_8hpp.html#ad6bd311c44f04b43f52c0e74cefc6e7a", null ], + [ "HIGHFIVE_VERSION_PATCH", "_h5_version_8hpp.html#ab47cd23c1c1cf25b17b14eacc9866d89", null ], + [ "HIGHFIVE_VERSION_STRING", "_h5_version_8hpp.html#aaa84ff2fb9a733a1dd79e654e0839702", null ] +]; \ No newline at end of file diff --git a/_h5_version_8hpp__dep__incl.map b/_h5_version_8hpp__dep__incl.map new file mode 100644 index 000000000..13124db84 --- /dev/null +++ b/_h5_version_8hpp__dep__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/_h5_version_8hpp__dep__incl.md5 b/_h5_version_8hpp__dep__incl.md5 new file mode 100644 index 000000000..1dd6306cb --- /dev/null +++ b/_h5_version_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +670b3c957d406b2b7a83b4ff5291cca4 \ No newline at end of file diff --git a/_h5_version_8hpp__dep__incl.png b/_h5_version_8hpp__dep__incl.png new file mode 100644 index 000000000..bc787f3f4 Binary files /dev/null and b/_h5_version_8hpp__dep__incl.png differ diff --git a/_h5_version_8hpp_source.html b/_h5_version_8hpp_source.html new file mode 100644 index 000000000..00df9bd37 --- /dev/null +++ b/_h5_version_8hpp_source.html @@ -0,0 +1,129 @@ + + + + + + + +HighFive: highfive/H5Version.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Version.hpp
+
+
+Go to the documentation of this file.
1/*
+
2 * Copyright (c), 2020
+
3 *
+
4 * Distributed under the Boost Software License, Version 1.0.
+
5 * (See accompanying file LICENSE_1_0.txt or copy at
+
6 * http://www.boost.org/LICENSE_1_0.txt)
+
7 *
+
8 */
+
9#pragma once
+
10
+
11#define HIGHFIVE_VERSION_MAJOR 2
+
12#define HIGHFIVE_VERSION_MINOR 8
+
13#define HIGHFIVE_VERSION_PATCH 0
+
14
+
27#define HIGHFIVE_VERSION 2.8.0
+
28
+
33#define HIGHFIVE_VERSION_STRING "2.8.0"
+
+
+ + + + diff --git a/_r_e_a_d_m_e_8md.html b/_r_e_a_d_m_e_8md.html new file mode 100644 index 000000000..33c765410 --- /dev/null +++ b/_r_e_a_d_m_e_8md.html @@ -0,0 +1,107 @@ + + + + + + + +HighFive: /home/runner/work/HighFive/HighFive/README.md File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
/home/runner/work/HighFive/HighFive/README.md File Reference
+
+
+
+
+ + + + diff --git a/annotated.html b/annotated.html new file mode 100644 index 000000000..fe1947607 --- /dev/null +++ b/annotated.html @@ -0,0 +1,181 @@ + + + + + + + +HighFive: Class List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Class List
+
+
+
Here are the classes, structs, unions and interfaces with brief descriptions:
+
[detail level 123]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 NH5EasyRead/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:
 CCompressionSignal to set compression level for written DataSets
 CDumpOptionsDefine options for dumping data
 NHighFive
 CAllocationTimeWhen are datasets allocated?
 CAnnotateTraits
 CAtomicTypeCreate an HDF5 DataType from a C++ type
 CAtomicType< char[StrLen]>
 CAtomicType< FixedLenStringArray< StrLen > >
 CAtomicType< std::complex< T > >
 CAttributeClass representing an Attribute of a DataSet or Group
 CAttributeExceptionException specific to HighFive Attribute interface
 CAttributePhaseChangeSet threshold for attribute storage
 CCaching
 CChunking
 CCompoundTypeCreate a compound HDF5 datatype
 Cmember_defUse for defining a sub-type of compound type
 CCreateIntermediateGroup
 CCreationOrder
 CDataSetClass representing a dataset
 CDataSetExceptionException specific to HighFive DataSet interface
 CDataSpaceClass representing the space (dimensions) of a DataSet
 CDataSpaceExceptionException specific to HighFive DataSpace interface
 CDataTypeHDF5 Data Type
 CDataTypeExceptionException specific to HighFive DataType interface
 CDeflate
 CElementSet
 CEnumTypeCreate a enum HDF5 datatype
 Cmember_defUse for defining a member of enum type
 CEstimatedLinkInfoSet hints as to how many links to expect and their average length
 CExceptionBasic HighFive Exception class
 CFileFile class
 CFileDriverFile driver base concept
 CFileExceptionException specific to HighFive File interface
 CFileVersionBoundsConfigure the version bounds for the file
 CFixedLengthStringType
 CFixedLenStringArrayA structure representing a set of fixed-length strings
 CGroupRepresents an hdf5 group
 CGroupExceptionException specific to HighFive Group interface
 CHDF5ErrMapper
 CHyperSlab
 CLinkCreationOrderTrack and index creation order time
 CLoggerA logger with supporting basic functionality
 CMetadataBlockSizeConfigure the metadata block size to use writing to files
 CMPIOCollectiveMetadataUse collective MPI-IO for metadata read and write
 CMPIOCollectiveMetadataReadUse collective MPI-IO for metadata read?
 CMPIOCollectiveMetadataWriteUse collective MPI-IO for metadata write?
 CMPIOFileAccessConfigure MPI access for the file
 CMPIOFileDriverMPIIO Driver for Parallel HDF5
 CMpioNoCollectiveCauseThe cause for non-collective I/O
 CNodeTraitsNodeTraits: Base class for Group and File
 CObject
 CObjectExceptionException specific to HighFive Object interface
 CObjectInfoA class for accessing hdf5 objects info
 CPathTraits
 CPropertyExceptionException specific to HighFive Property interface
 CPropertyListHDF5 property Lists
 CPropertyListBaseBase Class for Property lists, providing global default
 CRawPropertyList
 CReferenceAn HDF5 (object) reference type
 CReferenceExceptionException specific to HighFive Reference interface
 CRegularHyperSlab
 CSelectionSelection: represent a view on a slice/part of a dataset
 CShuffle
 CSilenceHDF5Utility class to disable HDF5 stack printing inside a scope
 CSliceTraits
 CStringType
 CSzip
 CUseCollectiveIO
 CVariableLengthStringType
 CPropertyInterfaceHDF5 file property object
+
+
+
+ + + + diff --git a/annotated_dup.js b/annotated_dup.js new file mode 100644 index 000000000..e53520bf5 --- /dev/null +++ b/annotated_dup.js @@ -0,0 +1,74 @@ +var annotated_dup = +[ + [ "H5Easy", "namespace_h5_easy.html", [ + [ "Compression", "class_h5_easy_1_1_compression.html", "class_h5_easy_1_1_compression" ], + [ "DumpOptions", "class_h5_easy_1_1_dump_options.html", "class_h5_easy_1_1_dump_options" ] + ] ], + [ "HighFive", "namespace_high_five.html", [ + [ "AllocationTime", "class_high_five_1_1_allocation_time.html", "class_high_five_1_1_allocation_time" ], + [ "AnnotateTraits", "class_high_five_1_1_annotate_traits.html", "class_high_five_1_1_annotate_traits" ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html", "class_high_five_1_1_atomic_type" ], + [ "AtomicType< char[StrLen]>", "class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html", "class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4" ], + [ "AtomicType< FixedLenStringArray< StrLen > >", "class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html", "class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4" ], + [ "AtomicType< std::complex< T > >", "class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html", "class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4" ], + [ "Attribute", "class_high_five_1_1_attribute.html", "class_high_five_1_1_attribute" ], + [ "AttributeException", "class_high_five_1_1_attribute_exception.html", "class_high_five_1_1_attribute_exception" ], + [ "AttributePhaseChange", "class_high_five_1_1_attribute_phase_change.html", "class_high_five_1_1_attribute_phase_change" ], + [ "Caching", "class_high_five_1_1_caching.html", "class_high_five_1_1_caching" ], + [ "Chunking", "class_high_five_1_1_chunking.html", "class_high_five_1_1_chunking" ], + [ "CompoundType", "class_high_five_1_1_compound_type.html", "class_high_five_1_1_compound_type" ], + [ "CreateIntermediateGroup", "class_high_five_1_1_create_intermediate_group.html", "class_high_five_1_1_create_intermediate_group" ], + [ "CreationOrder", "struct_high_five_1_1_creation_order.html", "struct_high_five_1_1_creation_order" ], + [ "DataSet", "class_high_five_1_1_data_set.html", "class_high_five_1_1_data_set" ], + [ "DataSetException", "class_high_five_1_1_data_set_exception.html", "class_high_five_1_1_data_set_exception" ], + [ "DataSpace", "class_high_five_1_1_data_space.html", "class_high_five_1_1_data_space" ], + [ "DataSpaceException", "class_high_five_1_1_data_space_exception.html", "class_high_five_1_1_data_space_exception" ], + [ "DataType", "class_high_five_1_1_data_type.html", "class_high_five_1_1_data_type" ], + [ "DataTypeException", "class_high_five_1_1_data_type_exception.html", "class_high_five_1_1_data_type_exception" ], + [ "Deflate", "class_high_five_1_1_deflate.html", "class_high_five_1_1_deflate" ], + [ "ElementSet", "class_high_five_1_1_element_set.html", "class_high_five_1_1_element_set" ], + [ "EnumType", "class_high_five_1_1_enum_type.html", "class_high_five_1_1_enum_type" ], + [ "EstimatedLinkInfo", "class_high_five_1_1_estimated_link_info.html", "class_high_five_1_1_estimated_link_info" ], + [ "Exception", "class_high_five_1_1_exception.html", "class_high_five_1_1_exception" ], + [ "File", "class_high_five_1_1_file.html", "class_high_five_1_1_file" ], + [ "FileDriver", "class_high_five_1_1_file_driver.html", null ], + [ "FileException", "class_high_five_1_1_file_exception.html", "class_high_five_1_1_file_exception" ], + [ "FileVersionBounds", "class_high_five_1_1_file_version_bounds.html", "class_high_five_1_1_file_version_bounds" ], + [ "FixedLengthStringType", "class_high_five_1_1_fixed_length_string_type.html", "class_high_five_1_1_fixed_length_string_type" ], + [ "FixedLenStringArray", "class_high_five_1_1_fixed_len_string_array.html", "class_high_five_1_1_fixed_len_string_array" ], + [ "Group", "class_high_five_1_1_group.html", "class_high_five_1_1_group" ], + [ "GroupException", "class_high_five_1_1_group_exception.html", "class_high_five_1_1_group_exception" ], + [ "HDF5ErrMapper", "struct_high_five_1_1_h_d_f5_err_mapper.html", null ], + [ "HyperSlab", "class_high_five_1_1_hyper_slab.html", "class_high_five_1_1_hyper_slab" ], + [ "LinkCreationOrder", "class_high_five_1_1_link_creation_order.html", "class_high_five_1_1_link_creation_order" ], + [ "Logger", "class_high_five_1_1_logger.html", "class_high_five_1_1_logger" ], + [ "MetadataBlockSize", "class_high_five_1_1_metadata_block_size.html", "class_high_five_1_1_metadata_block_size" ], + [ "MPIOCollectiveMetadata", "class_high_five_1_1_m_p_i_o_collective_metadata.html", "class_high_five_1_1_m_p_i_o_collective_metadata" ], + [ "MPIOCollectiveMetadataRead", "class_high_five_1_1_m_p_i_o_collective_metadata_read.html", "class_high_five_1_1_m_p_i_o_collective_metadata_read" ], + [ "MPIOCollectiveMetadataWrite", "class_high_five_1_1_m_p_i_o_collective_metadata_write.html", "class_high_five_1_1_m_p_i_o_collective_metadata_write" ], + [ "MPIOFileAccess", "class_high_five_1_1_m_p_i_o_file_access.html", "class_high_five_1_1_m_p_i_o_file_access" ], + [ "MPIOFileDriver", "class_high_five_1_1_m_p_i_o_file_driver.html", "class_high_five_1_1_m_p_i_o_file_driver" ], + [ "MpioNoCollectiveCause", "class_high_five_1_1_mpio_no_collective_cause.html", "class_high_five_1_1_mpio_no_collective_cause" ], + [ "NodeTraits", "class_high_five_1_1_node_traits.html", "class_high_five_1_1_node_traits" ], + [ "Object", "class_high_five_1_1_object.html", "class_high_five_1_1_object" ], + [ "ObjectException", "class_high_five_1_1_object_exception.html", "class_high_five_1_1_object_exception" ], + [ "ObjectInfo", "class_high_five_1_1_object_info.html", "class_high_five_1_1_object_info" ], + [ "PathTraits", "class_high_five_1_1_path_traits.html", "class_high_five_1_1_path_traits" ], + [ "PropertyException", "class_high_five_1_1_property_exception.html", "class_high_five_1_1_property_exception" ], + [ "PropertyList", "class_high_five_1_1_property_list.html", "class_high_five_1_1_property_list" ], + [ "PropertyListBase", "class_high_five_1_1_property_list_base.html", "class_high_five_1_1_property_list_base" ], + [ "RawPropertyList", "class_high_five_1_1_raw_property_list.html", "class_high_five_1_1_raw_property_list" ], + [ "Reference", "class_high_five_1_1_reference.html", "class_high_five_1_1_reference" ], + [ "ReferenceException", "class_high_five_1_1_reference_exception.html", "class_high_five_1_1_reference_exception" ], + [ "RegularHyperSlab", "struct_high_five_1_1_regular_hyper_slab.html", "struct_high_five_1_1_regular_hyper_slab" ], + [ "Selection", "class_high_five_1_1_selection.html", "class_high_five_1_1_selection" ], + [ "Shuffle", "class_high_five_1_1_shuffle.html", "class_high_five_1_1_shuffle" ], + [ "SilenceHDF5", "class_high_five_1_1_silence_h_d_f5.html", "class_high_five_1_1_silence_h_d_f5" ], + [ "SliceTraits", "class_high_five_1_1_slice_traits.html", "class_high_five_1_1_slice_traits" ], + [ "StringType", "class_high_five_1_1_string_type.html", "class_high_five_1_1_string_type" ], + [ "Szip", "class_high_five_1_1_szip.html", "class_high_five_1_1_szip" ], + [ "UseCollectiveIO", "class_high_five_1_1_use_collective_i_o.html", "class_high_five_1_1_use_collective_i_o" ], + [ "VariableLengthStringType", "class_high_five_1_1_variable_length_string_type.html", "class_high_five_1_1_variable_length_string_type" ] + ] ], + [ "PropertyInterface", "interface_property_interface.html", null ] +]; \ No newline at end of file diff --git a/bc_s.png b/bc_s.png new file mode 100644 index 000000000..224b29aa9 Binary files /dev/null and b/bc_s.png differ diff --git a/bc_sd.png b/bc_sd.png new file mode 100644 index 000000000..31ca888dc Binary files /dev/null and b/bc_sd.png differ diff --git a/class_h5_easy_1_1_compression-members.html b/class_h5_easy_1_1_compression-members.html new file mode 100644 index 000000000..c31f28a05 --- /dev/null +++ b/class_h5_easy_1_1_compression-members.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Easy::Compression Member List
+
+
+ +

This is the complete list of members for H5Easy::Compression, including all inherited members.

+ + + + +
Compression(bool enable=true)H5Easy::Compressioninlineexplicit
Compression(T level)H5Easy::Compressioninline
get() constH5Easy::Compressioninline
+
+ + + + diff --git a/class_h5_easy_1_1_compression.html b/class_h5_easy_1_1_compression.html new file mode 100644 index 000000000..6401f4a34 --- /dev/null +++ b/class_h5_easy_1_1_compression.html @@ -0,0 +1,234 @@ + + + + + + + +HighFive: H5Easy::Compression Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Easy::Compression Class Reference
+
+
+ +

Signal to set compression level for written DataSets. + More...

+ +

#include <H5Easy.hpp>

+ + + + + + + + + + + + +

+Public Member Functions

 Compression (bool enable=true)
 Enable compression with the highest compression level (9). or disable compression (set compression level to 0).
 
template<class T >
 Compression (T level)
 Set compression level.
 
unsigned get () const
 Return compression level.
 
+

Detailed Description

+

Signal to set compression level for written DataSets.

+

Constructor & Destructor Documentation

+ +

◆ Compression() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + +
H5Easy::Compression::Compression (bool enable = true)
+
+inlineexplicit
+
+ +

Enable compression with the highest compression level (9). or disable compression (set compression level to 0).

+
Parameters
+ + +
enabletrue to enable with highest compression level
+
+
+ +
+
+ +

◆ Compression() [2/2]

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
H5Easy::Compression::Compression (level)
+
+inline
+
+ +

Set compression level.

+
Parameters
+ + +
levelthe compression level
+
+
+ +
+
+

Member Function Documentation

+ +

◆ get()

+ +
+
+ + + + + +
+ + + + + + + +
unsigned H5Easy::Compression::get () const
+
+inline
+
+ +

Return compression level.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_h5_easy_1_1_compression.js b/class_h5_easy_1_1_compression.js new file mode 100644 index 000000000..8d1e41945 --- /dev/null +++ b/class_h5_easy_1_1_compression.js @@ -0,0 +1,6 @@ +var class_h5_easy_1_1_compression = +[ + [ "Compression", "class_h5_easy_1_1_compression.html#af85134056dad9c8b46bb51835cba11d7", null ], + [ "Compression", "class_h5_easy_1_1_compression.html#aae59d202e4dfe95c53ee626d3439f6e4", null ], + [ "get", "class_h5_easy_1_1_compression.html#a925d2e96ddbc9fc459b81ecf31fc121e", null ] +]; \ No newline at end of file diff --git a/class_h5_easy_1_1_dump_options-members.html b/class_h5_easy_1_1_dump_options-members.html new file mode 100644 index 000000000..fc0d40a84 --- /dev/null +++ b/class_h5_easy_1_1_dump_options-members.html @@ -0,0 +1,123 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
H5Easy::DumpOptions Member List
+
+
+ +

This is the complete list of members for H5Easy::DumpOptions, including all inherited members.

+ + + + + + + + + + + + + + + +
compress() constH5Easy::DumpOptionsinline
DumpOptions()=defaultH5Easy::DumpOptions
DumpOptions(Args... args)H5Easy::DumpOptionsinline
flush() constH5Easy::DumpOptionsinline
getChunkSize() constH5Easy::DumpOptionsinline
getCompressionLevel() constH5Easy::DumpOptionsinline
isChunked() constH5Easy::DumpOptionsinline
overwrite() constH5Easy::DumpOptionsinline
set(DumpMode mode)H5Easy::DumpOptionsinline
set(Flush mode)H5Easy::DumpOptionsinline
set(const Compression &level)H5Easy::DumpOptionsinline
set(T arg, Args... args)H5Easy::DumpOptionsinline
setChunkSize(const std::vector< T > &shape)H5Easy::DumpOptionsinline
setChunkSize(std::initializer_list< size_t > shape)H5Easy::DumpOptionsinline
+
+ + + + diff --git a/class_h5_easy_1_1_dump_options.html b/class_h5_easy_1_1_dump_options.html new file mode 100644 index 000000000..0b70e8886 --- /dev/null +++ b/class_h5_easy_1_1_dump_options.html @@ -0,0 +1,627 @@ + + + + + + + +HighFive: H5Easy::DumpOptions Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
H5Easy::DumpOptions Class Reference
+
+
+ +

Define options for dumping data. + More...

+ +

#include <H5Easy.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 DumpOptions ()=default
 Constructor: accept all default settings.
 
template<class... Args>
 DumpOptions (Args... args)
 Constructor: overwrite (some of the) defaults.
 
void set (DumpMode mode)
 Overwrite H5Easy::DumpMode setting.
 
void set (Flush mode)
 Overwrite H5Easy::Flush setting.
 
void set (const Compression &level)
 Overwrite H5Easy::Compression setting.
 
template<class T , class... Args>
void set (T arg, Args... args)
 Overwrite any setting(s).
 
template<class T >
void setChunkSize (const std::vector< T > &shape)
 Set chunk-size. If the input is rank (size) zero, automatic chunking is enabled.
 
void setChunkSize (std::initializer_list< size_t > shape)
 Set chunk-size. If the input is rank (size) zero, automatic chunking is enabled.
 
bool overwrite () const
 Get overwrite-mode.
 
bool flush () const
 Get flush-mode.
 
bool compress () const
 Get compress-mode.
 
unsigned getCompressionLevel () const
 Get compression level.
 
bool isChunked () const
 Get chunking mode: true is manually set, false if chunk-size should be computed automatically.
 
std::vector< hsize_t > getChunkSize () const
 Get chunk size. Use DumpOptions::getChunkSize to check if chunk-size should be automatically computed.
 
+

Detailed Description

+

Define options for dumping data.

+

By default:

+

Constructor & Destructor Documentation

+ +

◆ DumpOptions() [1/2]

+ +
+
+ + + + + +
+ + + + + + + +
H5Easy::DumpOptions::DumpOptions ()
+
+default
+
+ +

Constructor: accept all default settings.

+ +
+
+ +

◆ DumpOptions() [2/2]

+ +
+
+
+template<class... Args>
+ + + + + +
+ + + + + + + + +
H5Easy::DumpOptions::DumpOptions (Args... args)
+
+inline
+
+ +

Constructor: overwrite (some of the) defaults.

+
Parameters
+ + +
argsany of DumpMode(), Flush(), Compression() in arbitrary number and order.
+
+
+ +
+
+

Member Function Documentation

+ +

◆ compress()

+ +
+
+ + + + + +
+ + + + + + + +
bool H5Easy::DumpOptions::compress () const
+
+inline
+
+ +

Get compress-mode.

+
Returns
bool
+ +
+
+ +

◆ flush()

+ +
+
+ + + + + +
+ + + + + + + +
bool H5Easy::DumpOptions::flush () const
+
+inline
+
+ +

Get flush-mode.

+
Returns
bool
+ +
+
+ +

◆ getChunkSize()

+ +
+
+ + + + + +
+ + + + + + + +
std::vector< hsize_t > H5Easy::DumpOptions::getChunkSize () const
+
+inline
+
+ +

Get chunk size. Use DumpOptions::getChunkSize to check if chunk-size should be automatically computed.

+ +
+
+ +

◆ getCompressionLevel()

+ +
+
+ + + + + +
+ + + + + + + +
unsigned H5Easy::DumpOptions::getCompressionLevel () const
+
+inline
+
+ +

Get compression level.

+
Returns
[0..9]
+ +
+
+ +

◆ isChunked()

+ +
+
+ + + + + +
+ + + + + + + +
bool H5Easy::DumpOptions::isChunked () const
+
+inline
+
+ +

Get chunking mode: true is manually set, false if chunk-size should be computed automatically.

+
Returns
bool
+ +
+
+ +

◆ overwrite()

+ +
+
+ + + + + +
+ + + + + + + +
bool H5Easy::DumpOptions::overwrite () const
+
+inline
+
+ +

Get overwrite-mode.

+
Returns
bool
+ +
+
+ +

◆ set() [1/4]

+ +
+
+ + + + + +
+ + + + + + + + +
void H5Easy::DumpOptions::set (const Compressionlevel)
+
+inline
+
+ +

Overwrite H5Easy::Compression setting.

+
Parameters
+ + +
levelCompression.
+
+
+ +
+
+ +

◆ set() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + +
void H5Easy::DumpOptions::set (DumpMode mode)
+
+inline
+
+ +

Overwrite H5Easy::DumpMode setting.

+
Parameters
+ + +
modeDumpMode.
+
+
+ +
+
+ +

◆ set() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + +
void H5Easy::DumpOptions::set (Flush mode)
+
+inline
+
+ +

Overwrite H5Easy::Flush setting.

+
Parameters
+ + +
modeFlush.
+
+
+ +
+
+ +

◆ set() [4/4]

+ +
+
+
+template<class T , class... Args>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void H5Easy::DumpOptions::set (arg,
Args... args 
)
+
+inline
+
+ +

Overwrite any setting(s).

+
Parameters
+ + + +
argany of DumpMode(), Flush(), Compression in arbitrary number and order.
argsany of DumpMode(), Flush(), Compression in arbitrary number and order.
+
+
+ +
+
+ +

◆ setChunkSize() [1/2]

+ +
+
+
+template<class T >
+ + + + + +
+ + + + + + + + +
void H5Easy::DumpOptions::setChunkSize (const std::vector< T > & shape)
+
+inline
+
+ +

Set chunk-size. If the input is rank (size) zero, automatic chunking is enabled.

+
Parameters
+ + +
shapeChunk size along each dimension.
+
+
+ +
+
+ +

◆ setChunkSize() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
void H5Easy::DumpOptions::setChunkSize (std::initializer_list< size_t > shape)
+
+inline
+
+ +

Set chunk-size. If the input is rank (size) zero, automatic chunking is enabled.

+
Parameters
+ + +
shapeChunk size along each dimension.
+
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_h5_easy_1_1_dump_options.js b/class_h5_easy_1_1_dump_options.js new file mode 100644 index 000000000..ff24466f0 --- /dev/null +++ b/class_h5_easy_1_1_dump_options.js @@ -0,0 +1,17 @@ +var class_h5_easy_1_1_dump_options = +[ + [ "DumpOptions", "class_h5_easy_1_1_dump_options.html#a692690dae0de400b885791b9ce1434b7", null ], + [ "DumpOptions", "class_h5_easy_1_1_dump_options.html#af2a89678a725e2cb33b4f4a824d102d3", null ], + [ "compress", "class_h5_easy_1_1_dump_options.html#aef7625dc82a01d05a1e2047f0325dcd1", null ], + [ "flush", "class_h5_easy_1_1_dump_options.html#a2ed02e1afc1926b7a58346b9bf2017f9", null ], + [ "getChunkSize", "class_h5_easy_1_1_dump_options.html#a68181f4e69da1dc455606d006864e088", null ], + [ "getCompressionLevel", "class_h5_easy_1_1_dump_options.html#a8c58af708cddcbaebb03fcfff6b6356c", null ], + [ "isChunked", "class_h5_easy_1_1_dump_options.html#a4329501c533ec014d987a202e09413c8", null ], + [ "overwrite", "class_h5_easy_1_1_dump_options.html#ab573397c2a0abb1dc1b9a17db6c34eb1", null ], + [ "set", "class_h5_easy_1_1_dump_options.html#ae1db6010b692e7a0c260ce86e80f5e28", null ], + [ "set", "class_h5_easy_1_1_dump_options.html#aca2b65d5fe5b5fa9bc74f62bb8c52871", null ], + [ "set", "class_h5_easy_1_1_dump_options.html#a026e6c7714cae7e1b9a93b0e39ca71d0", null ], + [ "set", "class_h5_easy_1_1_dump_options.html#aa242b2d0698060317ba538349b193656", null ], + [ "setChunkSize", "class_h5_easy_1_1_dump_options.html#af8cb0dc019344b41643cbcebb4c88f01", null ], + [ "setChunkSize", "class_h5_easy_1_1_dump_options.html#ac5fa831c573ee5a7f03aea5967cf3301", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_allocation_time-members.html b/class_high_five_1_1_allocation_time-members.html new file mode 100644 index 000000000..00bae5387 --- /dev/null +++ b/class_high_five_1_1_allocation_time-members.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::AllocationTime Member List
+
+
+ +

This is the complete list of members for HighFive::AllocationTime, including all inherited members.

+ + + + +
AllocationTime(H5D_alloc_time_t alloc_time)HighFive::AllocationTimeinlineexplicit
AllocationTime(const DataSetCreateProps &dcpl)HighFive::AllocationTimeinlineexplicit
getAllocationTime()HighFive::AllocationTimeinline
+
+ + + + diff --git a/class_high_five_1_1_allocation_time.html b/class_high_five_1_1_allocation_time.html new file mode 100644 index 000000000..93ba0b615 --- /dev/null +++ b/class_high_five_1_1_allocation_time.html @@ -0,0 +1,231 @@ + + + + + + + +HighFive: HighFive::AllocationTime Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::AllocationTime Class Reference
+
+
+ +

When are datasets allocated? + More...

+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::AllocationTime:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::AllocationTime:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + +

+Public Member Functions

 AllocationTime (H5D_alloc_time_t alloc_time)
 
 AllocationTime (const DataSetCreateProps &dcpl)
 
H5D_alloc_time_t getAllocationTime ()
 
+

Detailed Description

+

When are datasets allocated?

+

The precise time of when HDF5 requests space to store the dataset can be configured. Please, consider the upstream documentation for H5Pset_alloc_time.

+

Constructor & Destructor Documentation

+ +

◆ AllocationTime() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::AllocationTime::AllocationTime (H5D_alloc_time_t alloc_time)
+
+inlineexplicit
+
+ +
+
+ +

◆ AllocationTime() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::AllocationTime::AllocationTime (const DataSetCreatePropsdcpl)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ getAllocationTime()

+ +
+
+ + + + + +
+ + + + + + + +
H5D_alloc_time_t HighFive::AllocationTime::getAllocationTime ()
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_allocation_time.js b/class_high_five_1_1_allocation_time.js new file mode 100644 index 000000000..696ed56f4 --- /dev/null +++ b/class_high_five_1_1_allocation_time.js @@ -0,0 +1,6 @@ +var class_high_five_1_1_allocation_time = +[ + [ "AllocationTime", "class_high_five_1_1_allocation_time.html#aa9b8f91669815c7579e952f1ab5d7c64", null ], + [ "AllocationTime", "class_high_five_1_1_allocation_time.html#a6855f0c3f6c66d4c1ec41d95aebb2ad3", null ], + [ "getAllocationTime", "class_high_five_1_1_allocation_time.html#a0fee45a52a542fedaa06300e177f7f01", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_allocation_time__coll__graph.map b/class_high_five_1_1_allocation_time__coll__graph.map new file mode 100644 index 000000000..57c7bd175 --- /dev/null +++ b/class_high_five_1_1_allocation_time__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_allocation_time__coll__graph.md5 b/class_high_five_1_1_allocation_time__coll__graph.md5 new file mode 100644 index 000000000..f598da719 --- /dev/null +++ b/class_high_five_1_1_allocation_time__coll__graph.md5 @@ -0,0 +1 @@ +ab2e83a5da2561194bb61326d8b2b3bf \ No newline at end of file diff --git a/class_high_five_1_1_allocation_time__coll__graph.png b/class_high_five_1_1_allocation_time__coll__graph.png new file mode 100644 index 000000000..7bdba9691 Binary files /dev/null and b/class_high_five_1_1_allocation_time__coll__graph.png differ diff --git a/class_high_five_1_1_allocation_time__inherit__graph.map b/class_high_five_1_1_allocation_time__inherit__graph.map new file mode 100644 index 000000000..57c7bd175 --- /dev/null +++ b/class_high_five_1_1_allocation_time__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_allocation_time__inherit__graph.md5 b/class_high_five_1_1_allocation_time__inherit__graph.md5 new file mode 100644 index 000000000..f598da719 --- /dev/null +++ b/class_high_five_1_1_allocation_time__inherit__graph.md5 @@ -0,0 +1 @@ +ab2e83a5da2561194bb61326d8b2b3bf \ No newline at end of file diff --git a/class_high_five_1_1_allocation_time__inherit__graph.png b/class_high_five_1_1_allocation_time__inherit__graph.png new file mode 100644 index 000000000..7bdba9691 Binary files /dev/null and b/class_high_five_1_1_allocation_time__inherit__graph.png differ diff --git a/class_high_five_1_1_annotate_traits-members.html b/class_high_five_1_1_annotate_traits-members.html new file mode 100644 index 000000000..1a277c931 --- /dev/null +++ b/class_high_five_1_1_annotate_traits-members.html @@ -0,0 +1,117 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::AnnotateTraits< Derivate > Member List
+
+
+ +

This is the complete list of members for HighFive::AnnotateTraits< Derivate >, including all inherited members.

+ + + + + + + + + +
createAttribute(const std::string &attribute_name, const DataSpace &space, const DataType &type)HighFive::AnnotateTraits< Derivate >inline
createAttribute(const std::string &attribute_name, const DataSpace &space)HighFive::AnnotateTraits< Derivate >inline
createAttribute(const std::string &attribute_name, const T &data)HighFive::AnnotateTraits< Derivate >inline
deleteAttribute(const std::string &attribute_name)HighFive::AnnotateTraits< Derivate >inline
getAttribute(const std::string &attribute_name) constHighFive::AnnotateTraits< Derivate >inline
getNumberAttributes() constHighFive::AnnotateTraits< Derivate >inline
hasAttribute(const std::string &attr_name) constHighFive::AnnotateTraits< Derivate >inline
listAttributeNames() constHighFive::AnnotateTraits< Derivate >inline
+
+ + + + diff --git a/class_high_five_1_1_annotate_traits.html b/class_high_five_1_1_annotate_traits.html new file mode 100644 index 000000000..3d567a860 --- /dev/null +++ b/class_high_five_1_1_annotate_traits.html @@ -0,0 +1,467 @@ + + + + + + + +HighFive: HighFive::AnnotateTraits< Derivate > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::AnnotateTraits< Derivate > Class Template Reference
+
+
+ +

#include <H5Annotate_traits.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

Attribute createAttribute (const std::string &attribute_name, const DataSpace &space, const DataType &type)
 create a new attribute with the name attribute_name
 
template<typename Type >
Attribute createAttribute (const std::string &attribute_name, const DataSpace &space)
 createAttribute create a new attribute on the current dataset with size specified by space
 
template<typename T >
Attribute createAttribute (const std::string &attribute_name, const T &data)
 createAttribute create a new attribute on the current dataset and write to it, inferring the DataSpace from data.
 
void deleteAttribute (const std::string &attribute_name)
 deleteAttribute let you delete an attribute by its name.
 
Attribute getAttribute (const std::string &attribute_name) const
 open an existing attribute with the name attribute_name
 
size_t getNumberAttributes () const
 return the number of attributes of the node / group
 
std::vector< std::string > listAttributeNames () const
 list all attribute name of the node / group
 
bool hasAttribute (const std::string &attr_name) const
 checks an attribute exists
 
+

Member Function Documentation

+ +

◆ createAttribute() [1/3]

+ +
+
+
+template<typename Derivate >
+
+template<typename Type >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Attribute HighFive::AnnotateTraits< Derivate >::createAttribute (const std::string & attribute_name,
const DataSpacespace 
)
+
+inline
+
+ +

createAttribute create a new attribute on the current dataset with size specified by space

+
Parameters
+ + + +
attribute_nameidentifier of the attribute
spaceAssociated DataSpace informations
+
+
+
Returns
Attribute Object
+ +
+
+ +

◆ createAttribute() [2/3]

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Attribute HighFive::AnnotateTraits< Derivate >::createAttribute (const std::string & attribute_name,
const DataSpacespace,
const DataTypetype 
)
+
+inline
+
+ +

create a new attribute with the name attribute_name

+
Parameters
+ + + + +
attribute_nameidentifier of the attribute
spaceAssociated DataSpace
type
+
+
+
Returns
the attribute object
+ +
+
+ +

◆ createAttribute() [3/3]

+ +
+
+
+template<typename Derivate >
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Attribute HighFive::AnnotateTraits< Derivate >::createAttribute (const std::string & attribute_name,
const T & data 
)
+
+inline
+
+ +

createAttribute create a new attribute on the current dataset and write to it, inferring the DataSpace from data.

+
Parameters
+ + + +
attribute_nameidentifier of the attribute
dataAssociated data to write, must support DataSpace::From, see DataSpace for more information
+
+
+
Returns
Attribute Object
+ +
+
+ +

◆ deleteAttribute()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
void HighFive::AnnotateTraits< Derivate >::deleteAttribute (const std::string & attribute_name)
+
+inline
+
+ +

deleteAttribute let you delete an attribute by its name.

+
Parameters
+ + +
attribute_nameidentifier of the attribute
+
+
+ +
+
+ +

◆ getAttribute()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
Attribute HighFive::AnnotateTraits< Derivate >::getAttribute (const std::string & attribute_name) const
+
+inline
+
+ +

open an existing attribute with the name attribute_name

+
Parameters
+ + +
attribute_nameidentifier of the attribute
+
+
+
Returns
the attribute object
+ +
+
+ +

◆ getNumberAttributes()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + +
size_t HighFive::AnnotateTraits< Derivate >::getNumberAttributes () const
+
+inline
+
+ +

return the number of attributes of the node / group

+
Returns
number of attributes
+ +
+
+ +

◆ hasAttribute()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
bool HighFive::AnnotateTraits< Derivate >::hasAttribute (const std::string & attr_name) const
+
+inline
+
+ +

checks an attribute exists

+
Returns
number of attributes
+ +
+
+ +

◆ listAttributeNames()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + +
std::vector< std::string > HighFive::AnnotateTraits< Derivate >::listAttributeNames () const
+
+inline
+
+ +

list all attribute name of the node / group

+
Returns
number of attributes
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_annotate_traits.js b/class_high_five_1_1_annotate_traits.js new file mode 100644 index 000000000..5b01f07ea --- /dev/null +++ b/class_high_five_1_1_annotate_traits.js @@ -0,0 +1,11 @@ +var class_high_five_1_1_annotate_traits = +[ + [ "createAttribute", "class_high_five_1_1_annotate_traits.html#a7218895780698f2bbab4d029fdab0284", null ], + [ "createAttribute", "class_high_five_1_1_annotate_traits.html#a43db973fb33b6abbd8cc8cd7a6dc4bec", null ], + [ "createAttribute", "class_high_five_1_1_annotate_traits.html#ae4e2ba30f074187856b98bdc61bbd646", null ], + [ "deleteAttribute", "class_high_five_1_1_annotate_traits.html#a6aa353a99c57bc526da0b2f1a06318b3", null ], + [ "getAttribute", "class_high_five_1_1_annotate_traits.html#ad82448659b7a92cac2e7eeb5d8b974d6", null ], + [ "getNumberAttributes", "class_high_five_1_1_annotate_traits.html#ae35a70acace4c47935400398d4671d69", null ], + [ "hasAttribute", "class_high_five_1_1_annotate_traits.html#add90f8bddb79edc973aa70f967c92724", null ], + [ "listAttributeNames", "class_high_five_1_1_annotate_traits.html#a4f19dffbf3bb1be6ba8279fb49917f22", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type-members.html b/class_high_five_1_1_atomic_type-members.html new file mode 100644 index 000000000..73f01c884 --- /dev/null +++ b/class_high_five_1_1_atomic_type-members.html @@ -0,0 +1,151 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::AtomicType< T > Member List
+
+
+ +

This is the complete list of members for HighFive::AtomicType< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
asStringType() constHighFive::DataTypeinline
AtomicType()HighFive::AtomicType< T >
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
AtomicType()HighFive::AtomicType< T >inline
basic_type typedefHighFive::AtomicType< T >
empty() const noexceptHighFive::DataTypeinline
getClass() constHighFive::DataTypeinline
getCreatePropertyList() constHighFive::DataTypeinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getSize() constHighFive::DataTypeinline
getType() constHighFive::Objectinline
isFixedLenStr() constHighFive::DataTypeinline
isReference() constHighFive::DataTypeinline
isValid() const noexceptHighFive::Objectinline
isVariableStr() constHighFive::DataTypeinline
Object(Object &&other) noexceptHighFive::DataTypeinlineprotected
Object()HighFive::DataTypeinlineprotected
Object(const Object &other)HighFive::DataTypeinlineprotected
Object(hid_t)HighFive::DataTypeinlineexplicitprotected
operator!=(const DataType &other) constHighFive::DataTypeinline
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const DataType &other) constHighFive::DataTypeinline
HighFive::Object::operator==(const Object &other) const noexceptHighFive::Objectinline
string() constHighFive::DataTypeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_atomic_type.html b/class_high_five_1_1_atomic_type.html new file mode 100644 index 000000000..96d1f11a8 --- /dev/null +++ b/class_high_five_1_1_atomic_type.html @@ -0,0 +1,731 @@ + + + + + + + +HighFive: HighFive::AtomicType< T > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::AtomicType< T > Class Template Reference
+
+
+ +

create an HDF5 DataType from a C++ type + More...

+ +

#include <H5DataType.hpp>

+
+Inheritance diagram for HighFive::AtomicType< T >:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::AtomicType< T >:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + +

+Public Types

using basic_type = T
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
 AtomicType ()
 
- Public Member Functions inherited from HighFive::DataType
bool operator== (const DataType &other) const
 
bool operator!= (const DataType &other) const
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
StringType asStringType () const
 Returns this datatype as a StringType.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
DataTypeCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this DataType.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from HighFive::DataType
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+
template<typename T>
+class HighFive::AtomicType< T >

create an HDF5 DataType from a C++ type

+

Support only basic data type

+

Member Typedef Documentation

+ +

◆ basic_type

+ +
+
+
+template<typename T >
+ + + + +
using HighFive::AtomicType< T >::basic_type = T
+
+ +
+
+

Constructor & Destructor Documentation

+ +

◆ AtomicType() [1/18]

+ +
+
+
+template<typename T >
+ + + + + + + +
HighFive::AtomicType< T >::AtomicType ()
+
+ +
+
+ +

◆ AtomicType() [2/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< char >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [3/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< signedchar >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [4/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< unsignedchar >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [5/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< short >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [6/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< unsignedshort >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [7/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< int >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [8/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< unsigned >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [9/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< long >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [10/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< unsignedlong >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [11/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< longlong >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [12/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< unsignedlonglong >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [13/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< float16_t >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [14/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< float >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [15/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< double >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [16/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< longdouble >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [17/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< std::string >::AtomicType ()
+
+inline
+
+ +
+
+ +

◆ AtomicType() [18/18]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< Reference >::AtomicType ()
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_atomic_type.js b/class_high_five_1_1_atomic_type.js new file mode 100644 index 000000000..789339ba2 --- /dev/null +++ b/class_high_five_1_1_atomic_type.js @@ -0,0 +1,22 @@ +var class_high_five_1_1_atomic_type = +[ + [ "basic_type", "class_high_five_1_1_atomic_type.html#aec235e205643310cbfeb2438b17fdc4d", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#ace690f26cabac4bd472f47e6629fe7ae", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#af8b6e9ffdb076ecd7b9ea8e825b1d7c9", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a7e51e6773bb9934eb8d7fe9881fe4fe9", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a06c87a3e42844220d3f1acf7e220588f", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a7e64d2707996b3b03657c0be2172cbdb", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#ae8cebf936468a862589b073db0d28d44", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a68a295d57afe890a26c49523ca06eceb", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a0b4d0f1d9c5b18020a460ac1591b0665", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a43016c14b0c4731802ff4468486a3f83", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#aa6082308b8707466a329e02a59a92e0f", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#ad7288e7c84ac324b4dea8169f071e4ee", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a82b6070cd38dd7456d29018765539d0f", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a9b68b644e1e8b20e36ab5098561590fd", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a0edf612da138154aa497d6a2706876ba", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a45b7187829cdc797fba98c530253b7fa", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#ab17d941585baab34c224e0e448b824a6", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#abaf0327b4db9b70f0aa922f92edaa76e", null ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html#a8291e490374e7584d5309b24a86f1615", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4-members.html b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4-members.html new file mode 100644 index 000000000..7fa9f2ccd --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4-members.html @@ -0,0 +1,133 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::AtomicType< FixedLenStringArray< StrLen > > Member List
+
+
+ +

This is the complete list of members for HighFive::AtomicType< FixedLenStringArray< StrLen > >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
asStringType() constHighFive::DataTypeinline
AtomicType()HighFive::AtomicType< FixedLenStringArray< StrLen > >inline
empty() const noexceptHighFive::DataTypeinline
getClass() constHighFive::DataTypeinline
getCreatePropertyList() constHighFive::DataTypeinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getSize() constHighFive::DataTypeinline
getType() constHighFive::Objectinline
isFixedLenStr() constHighFive::DataTypeinline
isReference() constHighFive::DataTypeinline
isValid() const noexceptHighFive::Objectinline
isVariableStr() constHighFive::DataTypeinline
Object(Object &&other) noexceptHighFive::DataTypeinlineprotected
Object()HighFive::DataTypeinlineprotected
Object(const Object &other)HighFive::DataTypeinlineprotected
Object(hid_t)HighFive::DataTypeinlineexplicitprotected
operator!=(const DataType &other) constHighFive::DataTypeinline
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const DataType &other) constHighFive::DataTypeinline
HighFive::Object::operator==(const Object &other) const noexceptHighFive::Objectinline
string() constHighFive::DataTypeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html new file mode 100644 index 000000000..1f5e4bed0 --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html @@ -0,0 +1,248 @@ + + + + + + + +HighFive: HighFive::AtomicType< FixedLenStringArray< StrLen > > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::AtomicType< FixedLenStringArray< StrLen > > Class Template Reference
+
+
+ +

#include <H5DataType_misc.hpp>

+
+Inheritance diagram for HighFive::AtomicType< FixedLenStringArray< StrLen > >:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::AtomicType< FixedLenStringArray< StrLen > >:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 AtomicType ()
 
- Public Member Functions inherited from HighFive::DataType
bool operator== (const DataType &other) const
 
bool operator!= (const DataType &other) const
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
StringType asStringType () const
 Returns this datatype as a StringType.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
DataTypeCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this DataType.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from HighFive::DataType
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Constructor & Destructor Documentation

+ +

◆ AtomicType()

+ +
+
+
+template<size_t StrLen>
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< FixedLenStringArray< StrLen > >::AtomicType ()
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.js b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.js new file mode 100644 index 000000000..4dcdff0fc --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4 = +[ + [ "AtomicType", "class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html#ae837edf90c28aaf2229c7a7de899e133", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__coll__graph.map b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__coll__graph.map new file mode 100644 index 000000000..ec26dc95a --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__coll__graph.md5 b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__coll__graph.md5 new file mode 100644 index 000000000..463299fa8 --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__coll__graph.md5 @@ -0,0 +1 @@ +f2754c9bf2c84c1c1010fe0fd4a01801 \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__coll__graph.png b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__coll__graph.png new file mode 100644 index 000000000..92a64ac7d Binary files /dev/null and b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__coll__graph.png differ diff --git a/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__inherit__graph.map b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__inherit__graph.map new file mode 100644 index 000000000..ec26dc95a --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__inherit__graph.md5 b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__inherit__graph.md5 new file mode 100644 index 000000000..463299fa8 --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__inherit__graph.md5 @@ -0,0 +1 @@ +f2754c9bf2c84c1c1010fe0fd4a01801 \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__inherit__graph.png b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__inherit__graph.png new file mode 100644 index 000000000..92a64ac7d Binary files /dev/null and b/class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4__inherit__graph.png differ diff --git a/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4-members.html b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4-members.html new file mode 100644 index 000000000..f0e8cd607 --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4-members.html @@ -0,0 +1,133 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::AtomicType< char[StrLen]> Member List
+
+
+ +

This is the complete list of members for HighFive::AtomicType< char[StrLen]>, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
asStringType() constHighFive::DataTypeinline
AtomicType()HighFive::AtomicType< char[StrLen]>inline
empty() const noexceptHighFive::DataTypeinline
getClass() constHighFive::DataTypeinline
getCreatePropertyList() constHighFive::DataTypeinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getSize() constHighFive::DataTypeinline
getType() constHighFive::Objectinline
isFixedLenStr() constHighFive::DataTypeinline
isReference() constHighFive::DataTypeinline
isValid() const noexceptHighFive::Objectinline
isVariableStr() constHighFive::DataTypeinline
Object(Object &&other) noexceptHighFive::DataTypeinlineprotected
Object()HighFive::DataTypeinlineprotected
Object(const Object &other)HighFive::DataTypeinlineprotected
Object(hid_t)HighFive::DataTypeinlineexplicitprotected
operator!=(const DataType &other) constHighFive::DataTypeinline
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const DataType &other) constHighFive::DataTypeinline
HighFive::Object::operator==(const Object &other) const noexceptHighFive::Objectinline
string() constHighFive::DataTypeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html new file mode 100644 index 000000000..d224fe8ec --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html @@ -0,0 +1,248 @@ + + + + + + + +HighFive: HighFive::AtomicType< char[StrLen]> Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::AtomicType< char[StrLen]> Class Template Reference
+
+
+ +

#include <H5DataType_misc.hpp>

+
+Inheritance diagram for HighFive::AtomicType< char[StrLen]>:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::AtomicType< char[StrLen]>:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 AtomicType ()
 
- Public Member Functions inherited from HighFive::DataType
bool operator== (const DataType &other) const
 
bool operator!= (const DataType &other) const
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
StringType asStringType () const
 Returns this datatype as a StringType.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
DataTypeCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this DataType.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from HighFive::DataType
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Constructor & Destructor Documentation

+ +

◆ AtomicType()

+ +
+
+
+template<size_t StrLen>
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< char[StrLen]>::AtomicType ()
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.js b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.js new file mode 100644 index 000000000..14e76197c --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4 = +[ + [ "AtomicType", "class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html#a4ae18629788947cdb9c5f6893017376b", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__coll__graph.map b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__coll__graph.map new file mode 100644 index 000000000..a61e171fe --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__coll__graph.md5 b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__coll__graph.md5 new file mode 100644 index 000000000..c89a9b5e2 --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__coll__graph.md5 @@ -0,0 +1 @@ +f12ac2c5e937f675312347f49b78cf3d \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__coll__graph.png b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__coll__graph.png new file mode 100644 index 000000000..4c4117dea Binary files /dev/null and b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__coll__graph.png differ diff --git a/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__inherit__graph.map b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__inherit__graph.map new file mode 100644 index 000000000..a61e171fe --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__inherit__graph.md5 b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__inherit__graph.md5 new file mode 100644 index 000000000..c89a9b5e2 --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__inherit__graph.md5 @@ -0,0 +1 @@ +f12ac2c5e937f675312347f49b78cf3d \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__inherit__graph.png b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__inherit__graph.png new file mode 100644 index 000000000..4c4117dea Binary files /dev/null and b/class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4__inherit__graph.png differ diff --git a/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4-members.html b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4-members.html new file mode 100644 index 000000000..8de10a45f --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4-members.html @@ -0,0 +1,133 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::AtomicType< std::complex< T > > Member List
+
+
+ +

This is the complete list of members for HighFive::AtomicType< std::complex< T > >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
asStringType() constHighFive::DataTypeinline
AtomicType()HighFive::AtomicType< std::complex< T > >inline
empty() const noexceptHighFive::DataTypeinline
getClass() constHighFive::DataTypeinline
getCreatePropertyList() constHighFive::DataTypeinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getSize() constHighFive::DataTypeinline
getType() constHighFive::Objectinline
isFixedLenStr() constHighFive::DataTypeinline
isReference() constHighFive::DataTypeinline
isValid() const noexceptHighFive::Objectinline
isVariableStr() constHighFive::DataTypeinline
Object(Object &&other) noexceptHighFive::DataTypeinlineprotected
Object()HighFive::DataTypeinlineprotected
Object(const Object &other)HighFive::DataTypeinlineprotected
Object(hid_t)HighFive::DataTypeinlineexplicitprotected
operator!=(const DataType &other) constHighFive::DataTypeinline
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const DataType &other) constHighFive::DataTypeinline
HighFive::Object::operator==(const Object &other) const noexceptHighFive::Objectinline
string() constHighFive::DataTypeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html new file mode 100644 index 000000000..a42bf69d4 --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html @@ -0,0 +1,248 @@ + + + + + + + +HighFive: HighFive::AtomicType< std::complex< T > > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::AtomicType< std::complex< T > > Class Template Reference
+
+
+ +

#include <H5DataType_misc.hpp>

+
+Inheritance diagram for HighFive::AtomicType< std::complex< T > >:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::AtomicType< std::complex< T > >:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 AtomicType ()
 
- Public Member Functions inherited from HighFive::DataType
bool operator== (const DataType &other) const
 
bool operator!= (const DataType &other) const
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
StringType asStringType () const
 Returns this datatype as a StringType.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
DataTypeCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this DataType.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from HighFive::DataType
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Constructor & Destructor Documentation

+ +

◆ AtomicType()

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
HighFive::AtomicType< std::complex< T > >::AtomicType ()
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.js b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.js new file mode 100644 index 000000000..89de99b93 --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4 = +[ + [ "AtomicType", "class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html#afce941c6b3480ed7cfcf5a787396c500", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__coll__graph.map b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__coll__graph.map new file mode 100644 index 000000000..b4871174a --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__coll__graph.md5 b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__coll__graph.md5 new file mode 100644 index 000000000..0ab25fcc2 --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__coll__graph.md5 @@ -0,0 +1 @@ +06c463fc980b001a36cf483e841df289 \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__coll__graph.png b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__coll__graph.png new file mode 100644 index 000000000..3f90b774b Binary files /dev/null and b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__coll__graph.png differ diff --git a/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__inherit__graph.map b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__inherit__graph.map new file mode 100644 index 000000000..b4871174a --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__inherit__graph.md5 b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__inherit__graph.md5 new file mode 100644 index 000000000..0ab25fcc2 --- /dev/null +++ b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__inherit__graph.md5 @@ -0,0 +1 @@ +06c463fc980b001a36cf483e841df289 \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__inherit__graph.png b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__inherit__graph.png new file mode 100644 index 000000000..3f90b774b Binary files /dev/null and b/class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4__inherit__graph.png differ diff --git a/class_high_five_1_1_atomic_type__coll__graph.map b/class_high_five_1_1_atomic_type__coll__graph.map new file mode 100644 index 000000000..0e4a0fbe9 --- /dev/null +++ b/class_high_five_1_1_atomic_type__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_atomic_type__coll__graph.md5 b/class_high_five_1_1_atomic_type__coll__graph.md5 new file mode 100644 index 000000000..70c1dc180 --- /dev/null +++ b/class_high_five_1_1_atomic_type__coll__graph.md5 @@ -0,0 +1 @@ +348c95b7550488d0c98342f3b84de656 \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type__coll__graph.png b/class_high_five_1_1_atomic_type__coll__graph.png new file mode 100644 index 000000000..72c3a8537 Binary files /dev/null and b/class_high_five_1_1_atomic_type__coll__graph.png differ diff --git a/class_high_five_1_1_atomic_type__inherit__graph.map b/class_high_five_1_1_atomic_type__inherit__graph.map new file mode 100644 index 000000000..0e4a0fbe9 --- /dev/null +++ b/class_high_five_1_1_atomic_type__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_atomic_type__inherit__graph.md5 b/class_high_five_1_1_atomic_type__inherit__graph.md5 new file mode 100644 index 000000000..70c1dc180 --- /dev/null +++ b/class_high_five_1_1_atomic_type__inherit__graph.md5 @@ -0,0 +1 @@ +348c95b7550488d0c98342f3b84de656 \ No newline at end of file diff --git a/class_high_five_1_1_atomic_type__inherit__graph.png b/class_high_five_1_1_atomic_type__inherit__graph.png new file mode 100644 index 000000000..72c3a8537 Binary files /dev/null and b/class_high_five_1_1_atomic_type__inherit__graph.png differ diff --git a/class_high_five_1_1_attribute-members.html b/class_high_five_1_1_attribute-members.html new file mode 100644 index 000000000..1aff64570 --- /dev/null +++ b/class_high_five_1_1_attribute-members.html @@ -0,0 +1,140 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Attribute Member List
+
+
+ +

This is the complete list of members for HighFive::Attribute, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_file_objHighFive::PathTraits< Attribute >protected
_hidHighFive::Objectprotected
Attribute()=deleteHighFive::Attribute
getCreatePropertyList() constHighFive::Attributeinline
getDataType() constHighFive::Attributeinline
getFile() const noexceptHighFive::PathTraits< Attribute >inline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getMemSpace() constHighFive::Attributeinline
getName() constHighFive::Attributeinline
getPath() constHighFive::PathTraits< Attribute >inline
getSpace() constHighFive::Attributeinline
getStorageSize() constHighFive::Attributeinline
getType() constHighFive::Objectinline
isValid() const noexceptHighFive::Objectinline
Object(Object &&other) noexceptHighFive::Attributeinlineprotected
Object()HighFive::Attributeinlineprotected
Object(const Object &other)HighFive::Attributeinlineprotected
Object(hid_t)HighFive::Attributeinlineexplicitprotected
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
PathTraits()HighFive::PathTraits< Attribute >inline
read() constHighFive::Attributeinline
read(T &array) constHighFive::Attributeinline
read(T *array, const DataType &mem_datatype) constHighFive::Attributeinline
read(T *array) constHighFive::Attributeinline
typeHighFive::Attributestatic
write(const T &value)HighFive::Attributeinline
write_raw(const T *buffer, const DataType &mem_datatype)HighFive::Attributeinline
write_raw(const T *buffer)HighFive::Attributeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_attribute.html b/class_high_five_1_1_attribute.html new file mode 100644 index 000000000..83b317daa --- /dev/null +++ b/class_high_five_1_1_attribute.html @@ -0,0 +1,921 @@ + + + + + + + +HighFive: HighFive::Attribute Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Attribute Class Reference
+
+
+ +

Class representing an Attribute of a DataSet or Group. + More...

+ +

#include <H5Attribute.hpp>

+
+Inheritance diagram for HighFive::Attribute:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::Attribute:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

std::string getName () const
 Get the name of the current Attribute.
 
size_t getStorageSize () const
 The number of bytes required to store the attribute in the HDF5 file.
 
DataType getDataType () const
 Get the DataType of the Attribute.
 
DataSpace getSpace () const
 Get the DataSpace of the current Attribute.
 
DataSpace getMemSpace () const
 Get the DataSpace of the current Attribute.
 
template<typename T >
read () const
 Get the value of the Attribute.
 
template<typename T >
void read (T &array) const
 Get the value of the Attribute in a buffer.
 
template<typename T >
void read (T *array, const DataType &mem_datatype) const
 Read the attribute into a pre-allocated buffer.
 
template<typename T >
void read (T *array) const
 Read the attribute into a buffer. Behaves like Attribute::read(T*, const DataType&) const but additionally this overload deduces the memory datatype from T.
 
template<typename T >
void write (const T &value)
 Write the value into the Attribute.
 
template<typename T >
void write_raw (const T *buffer, const DataType &mem_datatype)
 Write from a raw pointer.
 
template<typename T >
void write_raw (const T *buffer)
 Write from a raw pointer.
 
AttributeCreateProps getCreatePropertyList () const
 The create property list used for this attribute.
 
 Attribute ()=delete
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
- Public Member Functions inherited from HighFive::PathTraits< Attribute >
 PathTraits ()
 
std::string getPath () const
 return the path to the current object
 
FilegetFile () const noexcept
 Return a reference to the File object this object belongs.
 
+ + + +

+Static Public Attributes

static const ObjectType type = ObjectType::Attribute
 
+ + + + + + + + + + + + + + + + + + +

+Protected Member Functions

 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
+ + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
- Protected Attributes inherited from HighFive::PathTraits< Attribute >
std::shared_ptr< File_file_obj
 
+

Detailed Description

+

Constructor & Destructor Documentation

+ +

◆ Attribute()

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Attribute::Attribute ()
+
+delete
+
+ +
+
+

Member Function Documentation

+ +

◆ getCreatePropertyList()

+ +
+
+ + + + + +
+ + + + + + + +
AttributeCreateProps HighFive::Attribute::getCreatePropertyList () const
+
+inline
+
+ +

The create property list used for this attribute.

+

Some of HDF5 properties/setting of an attribute are defined by a create property list. This method returns a copy of the create property list used during creation of the attribute.

+
auto acpl = attr.getCreatePropertyList();
+
+
// For example to create another attribute with the same properties.
+
file.createAttribute("foo", 42, acpl);
+
Since
2.5.0
+ +
+
+ +

◆ getDataType()

+ +
+
+ + + + + +
+ + + + + + + +
DataType HighFive::Attribute::getDataType () const
+
+inline
+
+ +

Get the DataType of the Attribute.

+
Attribute attr = dset.createAttribute<int>("foo", DataSpace(1, 2));
+
auto dtype = attr.getDataType(); // Will be an hdf5 type deduced from int
+
Class representing an Attribute of a DataSet or Group.
Definition H5Attribute.hpp:46
+
DataType getDataType() const
Get the DataType of the Attribute.
Definition H5Attribute_misc.hpp:36
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+
Since
1.0
+ +
+
+ +

◆ getMemSpace()

+ +
+
+ + + + + +
+ + + + + + + +
DataSpace HighFive::Attribute::getMemSpace () const
+
+inline
+
+ +

Get the DataSpace of the current Attribute.

+
Note
This is an alias of getSpace().
+
Since
1.0
+ +
+
+ +

◆ getName()

+ +
+
+ + + + + +
+ + + + + + + +
std::string HighFive::Attribute::getName () const
+
+inline
+
+ +

Get the name of the current Attribute.

+
auto attr = dset.createAttribute<std::string>("my_attribute", DataSpace::From(string_list));
+
std::cout << attr.getName() << std::endl; // Will print "my_attribute"
+
static DataSpace From(const T &value)
Automatically deduce the DataSpace from a container/value.
Definition H5Dataspace_misc.hpp:136
+
Since
2.2.2
+ +
+
+ +

◆ getSpace()

+ +
+
+ + + + + +
+ + + + + + + +
DataSpace HighFive::Attribute::getSpace () const
+
+inline
+
+ +

Get the DataSpace of the current Attribute.

+
Attribute attr = dset.createAttribute<int>("foo", DataSpace(1, 2));
+
auto dspace = attr.getSpace(); // This will be a DataSpace of dimension 1 * 2
+
DataSpace getSpace() const
Get the DataSpace of the current Attribute.
Definition H5Attribute_misc.hpp:42
+
Since
1.0
+ +
+
+ +

◆ getStorageSize()

+ +
+
+ + + + + +
+ + + + + + + +
size_t HighFive::Attribute::getStorageSize () const
+
+inline
+
+ +

The number of bytes required to store the attribute in the HDF5 file.

+
size_t size = dset.createAttribute<int>("foo", DataSpace(1, 2)).getStorageSize();
+
size_t getStorageSize() const
The number of bytes required to store the attribute in the HDF5 file.
Definition H5Attribute_misc.hpp:32
+
Since
1.0
+ +
+
+ +

◆ Object() [1/4]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Object::Object ()
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (const Objectother)
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (hid_t hid)
+
+inlineexplicitprotected
+
+ +
+
+ +

◆ Object() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (Object && other)
+
+inlineprotectednoexcept
+
+ +
+
+ +

◆ read() [1/4]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + +
T HighFive::Attribute::read () const
+
+inline
+
+ +

Get the value of the Attribute.

+
Attribute attr = dset.getAttribute("foo");
+
// The value will contains what have been written in the attribute
+
std::vector<int> value = attr.read<std::vector<int>>();
+
T read() const
Get the value of the Attribute.
Definition H5Attribute_misc.hpp:55
+
Since
2.5.0
+ +
+
+ +

◆ read() [2/4]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void HighFive::Attribute::read (T & array) const
+
+inline
+
+ +

Get the value of the Attribute in a buffer.

+

Read the attribute into an existing object. Only available for supported types T. If array has preallocated the correct amount of memory, then this routine should not trigger reallocation. Otherwise, if supported, the object will be resized.

+

An exception is raised if the numbers of dimension of the buffer and of the attribute are different.

+
// Will read into `value` avoiding memory allocation if the dimensions
+
// match, i.e. if the attribute `"foo"` has three element.
+
std::vector<int> value(3);
+
file.getAttribute("foo").read(value);
+
Since
1.0
+ +
+
+ +

◆ read() [3/4]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void HighFive::Attribute::read (T * array) const
+
+inline
+
+ +

Read the attribute into a buffer. Behaves like Attribute::read(T*, const DataType&) const but additionally this overload deduces the memory datatype from T.

+
Parameters
+ + +
arrayPointer to the first byte of pre-allocated memory.
+
+
+
Note
If possible prefer either Attribute::read() const or Attribute::read(T&) const.
+
auto attr = file.getAttribute("foo");
+
+
// Simulate custom allocation by the application.
+
size_t n_elements = attr.getSpace().getElementCount();
+
int * ptr = (int*) malloc(n_elements*sizeof(int));
+
+
// Read into the pre-allocated memory.
+
attr.read(ptr);
+
Since
2.2.2
+ +
+
+ +

◆ read() [4/4]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void HighFive::Attribute::read (T * array,
const DataTypemem_datatype 
) const
+
+inline
+
+ +

Read the attribute into a pre-allocated buffer.

+
Parameters
+ + + +
arrayA pointer to the first byte of sufficient pre-allocated memory.
mem_datatypeThe DataType of the array.
+
+
+
Note
This is the shallowest wrapper around H5Aread. If possible prefer either Attribute::read() const or Attribute::read(T&) const.
+
auto attr = file.getAttribute("foo");
+
+
// Simulate custom allocation by the application.
+
size_t n_elements = attr.getSpace().getElementCount();
+
int * ptr = (int*) malloc(n_elements*sizeof(int));
+
+
// Read into the pre-allocated memory.
+
attr.read(ptr, mem_datatype);
+
Since
2.2.2
+ +
+
+ +

◆ write()

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void HighFive::Attribute::write (const T & value)
+
+inline
+
+ +

Write the value into the Attribute.

+

Write the value to the attribute. For supported types T, this overload will write the value to the attribute. The datatype and dataspace are deduced automatically. However, since the attribute has already been created, the dimensions of value must match those of the attribute.

+
// Prefer the fused version if creating and writing the attribute
+
// at the same time.
+
dset.createAttribute("foo", std::vector<int>{1, 2, 3});
+
+
// To overwrite the value:
+
std::vector<int> value{4, 5, 6};
+
dset.getAttribute<int>("foo").write(value);
+
void write(const T &value)
Write the value into the Attribute.
Definition H5Attribute_misc.hpp:124
+
Since
1.0
+ +
+
+ +

◆ write_raw() [1/2]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void HighFive::Attribute::write_raw (const T * buffer)
+
+inline
+
+ +

Write from a raw pointer.

+

Much like Attribute::write_raw(const T*, const DataType&). Additionally, this overload attempts to automatically deduce the datatype of the buffer. Note, that the file datatype is already set.

+
Parameters
+ + +
bufferPointer to the first byte.
+
+
+
Note
If possible prefer Attribute::write.
+
// Simulate the application creating `value` and only exposing access
+
// to the raw pointer `ptr`.
+
std::vector<std::array<int, 3>> value{{1, 2, 3}, {4, 5, 6}};
+
int * ptr = (int*) value.data();
+
+
// Simply write the bytes to disk.
+
attr.write(ptr);
+
Since
2.2.2
+ +
+
+ +

◆ write_raw() [2/2]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void HighFive::Attribute::write_raw (const T * buffer,
const DataTypemem_datatype 
)
+
+inline
+
+ +

Write from a raw pointer.

+

Values that have been correctly arranged memory, can be written directly by passing a raw pointer.

+
Parameters
+ + + +
bufferPointer to the first byte of the value.
mem_datatypeThe DataType of the buffer.
+
+
+
Note
This is the shallowest wrapper around H5Awrite. It's useful if you need full control. If possible prefer Attribute::write.
+
Attribute attr = dset.createAttribute<int>("foo", DataSpace(2, 3));
+
+
// Simulate the application creating `value` and only exposing access
+
// to the raw pointer `ptr`.
+
std::vector<std::array<int, 3>> value{{1, 2, 3}, {4, 5, 6}};
+
int * ptr = (int*) value.data();
+
+
// Simply write the bytes to disk.
+
attr.write(ptr, AtomicType<int>());
+
Since
2.2.2
+ +
+
+

Member Data Documentation

+ +

◆ type

+ +
+
+ + + + + +
+ + + + +
const ObjectType HighFive::Attribute::type = ObjectType::Attribute
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_attribute.js b/class_high_five_1_1_attribute.js new file mode 100644 index 000000000..51410e8e0 --- /dev/null +++ b/class_high_five_1_1_attribute.js @@ -0,0 +1,21 @@ +var class_high_five_1_1_attribute = +[ + [ "Attribute", "class_high_five_1_1_attribute.html#aa2ac0bfc7aa4f29ef5d32a6518cb40a3", null ], + [ "getCreatePropertyList", "class_high_five_1_1_attribute.html#acee2136593f83a803e4b000916d3020b", null ], + [ "getDataType", "class_high_five_1_1_attribute.html#a600131e681e98f5f03e64e662e3fa325", null ], + [ "getMemSpace", "class_high_five_1_1_attribute.html#a9a4f37c223c52078d91c843f2ba6d994", null ], + [ "getName", "class_high_five_1_1_attribute.html#a70021d5bf236c431d93013a4ae0ff910", null ], + [ "getSpace", "class_high_five_1_1_attribute.html#a4378b9e1603b22509c1495ac4362116d", null ], + [ "getStorageSize", "class_high_five_1_1_attribute.html#ab2ab807ffa3fc8cb6d72ac7ab75a58f1", null ], + [ "Object", "class_high_five_1_1_attribute.html#a6bae41d04f273d04d2914406ab79da32", null ], + [ "Object", "class_high_five_1_1_attribute.html#ab87ee7d5e2beee6a50d60dec20d3dfe5", null ], + [ "Object", "class_high_five_1_1_attribute.html#a9fe361bc0bd9662c1fd96a4a6ec1133a", null ], + [ "Object", "class_high_five_1_1_attribute.html#aa42052fa5ec4ee691f6a7dd6467199f2", null ], + [ "read", "class_high_five_1_1_attribute.html#a8f6d88e6dadb8e4449fec558e5e0f7ca", null ], + [ "read", "class_high_five_1_1_attribute.html#ae97ab038f6c58bc0dd1ea498d8e609ce", null ], + [ "read", "class_high_five_1_1_attribute.html#aa2d0eb2629833a33f3e1a3fbfc1e9f55", null ], + [ "read", "class_high_five_1_1_attribute.html#acb44e6457df7e57040e39cd4373f9d84", null ], + [ "write", "class_high_five_1_1_attribute.html#a9f7585585d281f09ab231df1637e29c7", null ], + [ "write_raw", "class_high_five_1_1_attribute.html#abb15f4324cc70aabaaaf9aaf9c7922c9", null ], + [ "write_raw", "class_high_five_1_1_attribute.html#aaf08f65d5477d96922aa257a2af86efa", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_attribute__coll__graph.map b/class_high_five_1_1_attribute__coll__graph.map new file mode 100644 index 000000000..55dacac57 --- /dev/null +++ b/class_high_five_1_1_attribute__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_attribute__coll__graph.md5 b/class_high_five_1_1_attribute__coll__graph.md5 new file mode 100644 index 000000000..509670bfc --- /dev/null +++ b/class_high_five_1_1_attribute__coll__graph.md5 @@ -0,0 +1 @@ +831e0ee77b867d315b963f014941b129 \ No newline at end of file diff --git a/class_high_five_1_1_attribute__coll__graph.png b/class_high_five_1_1_attribute__coll__graph.png new file mode 100644 index 000000000..5cb4c497e Binary files /dev/null and b/class_high_five_1_1_attribute__coll__graph.png differ diff --git a/class_high_five_1_1_attribute__inherit__graph.map b/class_high_five_1_1_attribute__inherit__graph.map new file mode 100644 index 000000000..55dacac57 --- /dev/null +++ b/class_high_five_1_1_attribute__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_attribute__inherit__graph.md5 b/class_high_five_1_1_attribute__inherit__graph.md5 new file mode 100644 index 000000000..509670bfc --- /dev/null +++ b/class_high_five_1_1_attribute__inherit__graph.md5 @@ -0,0 +1 @@ +831e0ee77b867d315b963f014941b129 \ No newline at end of file diff --git a/class_high_five_1_1_attribute__inherit__graph.png b/class_high_five_1_1_attribute__inherit__graph.png new file mode 100644 index 000000000..5cb4c497e Binary files /dev/null and b/class_high_five_1_1_attribute__inherit__graph.png differ diff --git a/class_high_five_1_1_attribute_exception-members.html b/class_high_five_1_1_attribute_exception-members.html new file mode 100644 index 000000000..760d1d933 --- /dev/null +++ b/class_high_five_1_1_attribute_exception-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::AttributeException Member List
+
+
+ +

This is the complete list of members for HighFive::AttributeException, including all inherited members.

+ + + + + + + + + + + + + +
_err_majorHighFive::Exceptionprotected
_err_minorHighFive::Exceptionprotected
_errmsgHighFive::Exceptionprotected
_nextHighFive::Exceptionprotected
AttributeException(const std::string &err_msg)HighFive::AttributeExceptioninline
Exception(const std::string &err_msg)HighFive::Exceptioninline
getErrMajor() constHighFive::Exceptioninline
getErrMinor() constHighFive::Exceptioninline
nextException() constHighFive::Exceptioninline
setErrorMsg(const std::string &errmsg)HighFive::Exceptioninlinevirtual
what() const overrideHighFive::Exceptioninline
~Exception()HighFive::Exceptioninlinevirtual
+
+ + + + diff --git a/class_high_five_1_1_attribute_exception.html b/class_high_five_1_1_attribute_exception.html new file mode 100644 index 000000000..1856f3372 --- /dev/null +++ b/class_high_five_1_1_attribute_exception.html @@ -0,0 +1,209 @@ + + + + + + + +HighFive: HighFive::AttributeException Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::AttributeException Class Reference
+
+
+ +

Exception specific to HighFive Attribute interface. + More...

+ +

#include <H5Exception.hpp>

+
+Inheritance diagram for HighFive::AttributeException:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::AttributeException:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 AttributeException (const std::string &err_msg)
 
- Public Member Functions inherited from HighFive::Exception
 Exception (const std::string &err_msg)
 
virtual ~Exception () throw ()
 
const char * what () const override throw ()
 get the current exception error message
 
virtual void setErrorMsg (const std::string &errmsg)
 define the error message
 
ExceptionnextException () const
 nextException
 
hid_t getErrMajor () const
 HDF5 library error mapper.
 
hid_t getErrMinor () const
 HDF5 library error mapper.
 
+ + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Exception
std::string _errmsg
 
std::shared_ptr< Exception_next
 
hid_t _err_major
 
hid_t _err_minor
 
+

Detailed Description

+

Exception specific to HighFive Attribute interface.

+

Constructor & Destructor Documentation

+ +

◆ AttributeException()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::AttributeException::AttributeException (const std::string & err_msg)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_attribute_exception.js b/class_high_five_1_1_attribute_exception.js new file mode 100644 index 000000000..5f7ec70a7 --- /dev/null +++ b/class_high_five_1_1_attribute_exception.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_attribute_exception = +[ + [ "AttributeException", "class_high_five_1_1_attribute_exception.html#ade502f58024a58bea7454e8a4d58c4f0", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_attribute_exception__coll__graph.map b/class_high_five_1_1_attribute_exception__coll__graph.map new file mode 100644 index 000000000..e04cd8585 --- /dev/null +++ b/class_high_five_1_1_attribute_exception__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_attribute_exception__coll__graph.md5 b/class_high_five_1_1_attribute_exception__coll__graph.md5 new file mode 100644 index 000000000..0136d8a85 --- /dev/null +++ b/class_high_five_1_1_attribute_exception__coll__graph.md5 @@ -0,0 +1 @@ +ca591ef7233e5a592cff66a1a26472af \ No newline at end of file diff --git a/class_high_five_1_1_attribute_exception__coll__graph.png b/class_high_five_1_1_attribute_exception__coll__graph.png new file mode 100644 index 000000000..e3255dc74 Binary files /dev/null and b/class_high_five_1_1_attribute_exception__coll__graph.png differ diff --git a/class_high_five_1_1_attribute_exception__inherit__graph.map b/class_high_five_1_1_attribute_exception__inherit__graph.map new file mode 100644 index 000000000..e04cd8585 --- /dev/null +++ b/class_high_five_1_1_attribute_exception__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_attribute_exception__inherit__graph.md5 b/class_high_five_1_1_attribute_exception__inherit__graph.md5 new file mode 100644 index 000000000..0136d8a85 --- /dev/null +++ b/class_high_five_1_1_attribute_exception__inherit__graph.md5 @@ -0,0 +1 @@ +ca591ef7233e5a592cff66a1a26472af \ No newline at end of file diff --git a/class_high_five_1_1_attribute_exception__inherit__graph.png b/class_high_five_1_1_attribute_exception__inherit__graph.png new file mode 100644 index 000000000..e3255dc74 Binary files /dev/null and b/class_high_five_1_1_attribute_exception__inherit__graph.png differ diff --git a/class_high_five_1_1_attribute_phase_change-members.html b/class_high_five_1_1_attribute_phase_change-members.html new file mode 100644 index 000000000..70df33dcc --- /dev/null +++ b/class_high_five_1_1_attribute_phase_change-members.html @@ -0,0 +1,113 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::AttributePhaseChange Member List
+
+
+ +

This is the complete list of members for HighFive::AttributePhaseChange, including all inherited members.

+ + + + + +
AttributePhaseChange(unsigned max_compact, unsigned min_dense)HighFive::AttributePhaseChangeinline
AttributePhaseChange(const GroupCreateProps &gcpl)HighFive::AttributePhaseChangeinlineexplicit
max_compact() constHighFive::AttributePhaseChangeinline
min_dense() constHighFive::AttributePhaseChangeinline
+
+ + + + diff --git a/class_high_five_1_1_attribute_phase_change.html b/class_high_five_1_1_attribute_phase_change.html new file mode 100644 index 000000000..36ed9b61a --- /dev/null +++ b/class_high_five_1_1_attribute_phase_change.html @@ -0,0 +1,276 @@ + + + + + + + +HighFive: HighFive::AttributePhaseChange Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::AttributePhaseChange Class Reference
+
+
+ +

Set threshold for attribute storage. + More...

+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::AttributePhaseChange:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::AttributePhaseChange:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + + + +

+Public Member Functions

 AttributePhaseChange (unsigned max_compact, unsigned min_dense)
 Create the property from the threshold values.
 
 AttributePhaseChange (const GroupCreateProps &gcpl)
 Extract threshold values from property list.
 
unsigned max_compact () const
 
unsigned min_dense () const
 
+

Detailed Description

+

Set threshold for attribute storage.

+

HDF5 can store Attributes in the object header (compact) or in the B-tree (dense). This property sets the threshold when attributes are moved to one or the other storage format.

+

Please refer to the upstream documentation of H5Pset_attr_phase_change or Section 8 (Attributes) in the User Guide, in particular Subsection 8.5.

+

Constructor & Destructor Documentation

+ +

◆ AttributePhaseChange() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::AttributePhaseChange::AttributePhaseChange (unsigned max_compact,
unsigned min_dense 
)
+
+inline
+
+ +

Create the property from the threshold values.

+

When the number of attributes hits max_compact the attributes are moved to dense storage, once the number drops to below min_dense the attributes are moved to compact storage.

+ +
+
+ +

◆ AttributePhaseChange() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::AttributePhaseChange::AttributePhaseChange (const GroupCreatePropsgcpl)
+
+inlineexplicit
+
+ +

Extract threshold values from property list.

+ +
+
+

Member Function Documentation

+ +

◆ max_compact()

+ +
+
+ + + + + +
+ + + + + + + +
unsigned HighFive::AttributePhaseChange::max_compact () const
+
+inline
+
+ +
+
+ +

◆ min_dense()

+ +
+
+ + + + + +
+ + + + + + + +
unsigned HighFive::AttributePhaseChange::min_dense () const
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_attribute_phase_change.js b/class_high_five_1_1_attribute_phase_change.js new file mode 100644 index 000000000..a713f3fe9 --- /dev/null +++ b/class_high_five_1_1_attribute_phase_change.js @@ -0,0 +1,7 @@ +var class_high_five_1_1_attribute_phase_change = +[ + [ "AttributePhaseChange", "class_high_five_1_1_attribute_phase_change.html#a979a5ef023e9c45b1d8b3de253fb69ef", null ], + [ "AttributePhaseChange", "class_high_five_1_1_attribute_phase_change.html#a06649e848cb2fe58934d2a750e853e9b", null ], + [ "max_compact", "class_high_five_1_1_attribute_phase_change.html#a4a01e8527aaecaffe2db1094f1e4b6c8", null ], + [ "min_dense", "class_high_five_1_1_attribute_phase_change.html#aa40d91cf6907a2013573e691c96d1bc7", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_attribute_phase_change__coll__graph.map b/class_high_five_1_1_attribute_phase_change__coll__graph.map new file mode 100644 index 000000000..d35b9d134 --- /dev/null +++ b/class_high_five_1_1_attribute_phase_change__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_attribute_phase_change__coll__graph.md5 b/class_high_five_1_1_attribute_phase_change__coll__graph.md5 new file mode 100644 index 000000000..4d61716a6 --- /dev/null +++ b/class_high_five_1_1_attribute_phase_change__coll__graph.md5 @@ -0,0 +1 @@ +2ac6b0fab70f943ddc39fabec6749a57 \ No newline at end of file diff --git a/class_high_five_1_1_attribute_phase_change__coll__graph.png b/class_high_five_1_1_attribute_phase_change__coll__graph.png new file mode 100644 index 000000000..bcb5380cb Binary files /dev/null and b/class_high_five_1_1_attribute_phase_change__coll__graph.png differ diff --git a/class_high_five_1_1_attribute_phase_change__inherit__graph.map b/class_high_five_1_1_attribute_phase_change__inherit__graph.map new file mode 100644 index 000000000..d35b9d134 --- /dev/null +++ b/class_high_five_1_1_attribute_phase_change__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_attribute_phase_change__inherit__graph.md5 b/class_high_five_1_1_attribute_phase_change__inherit__graph.md5 new file mode 100644 index 000000000..4d61716a6 --- /dev/null +++ b/class_high_five_1_1_attribute_phase_change__inherit__graph.md5 @@ -0,0 +1 @@ +2ac6b0fab70f943ddc39fabec6749a57 \ No newline at end of file diff --git a/class_high_five_1_1_attribute_phase_change__inherit__graph.png b/class_high_five_1_1_attribute_phase_change__inherit__graph.png new file mode 100644 index 000000000..bcb5380cb Binary files /dev/null and b/class_high_five_1_1_attribute_phase_change__inherit__graph.png differ diff --git a/class_high_five_1_1_caching-members.html b/class_high_five_1_1_caching-members.html new file mode 100644 index 000000000..96c21c5f3 --- /dev/null +++ b/class_high_five_1_1_caching-members.html @@ -0,0 +1,114 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Caching Member List
+
+
+ +

This is the complete list of members for HighFive::Caching, including all inherited members.

+ + + + + + +
Caching(const size_t numSlots, const size_t cacheSize, const double w0=static_cast< double >(H5D_CHUNK_CACHE_W0_DEFAULT))HighFive::Cachinginline
Caching(const DataSetCreateProps &dcpl)HighFive::Cachinginlineexplicit
getCacheSize() constHighFive::Cachinginline
getNumSlots() constHighFive::Cachinginline
getW0() constHighFive::Cachinginline
+
+ + + + diff --git a/class_high_five_1_1_caching.html b/class_high_five_1_1_caching.html new file mode 100644 index 000000000..dd62661ec --- /dev/null +++ b/class_high_five_1_1_caching.html @@ -0,0 +1,298 @@ + + + + + + + +HighFive: HighFive::Caching Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Caching Class Reference
+
+
+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::Caching:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::Caching:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + + + +

+Public Member Functions

 Caching (const size_t numSlots, const size_t cacheSize, const double w0=static_cast< double >(H5D_CHUNK_CACHE_W0_DEFAULT))
 
 Caching (const DataSetCreateProps &dcpl)
 
size_t getNumSlots () const
 
size_t getCacheSize () const
 
double getW0 () const
 
+

Detailed Description

+

Dataset access property to control chunk cache configuration. Do not confuse with the similar file access property for H5Pset_cache

+

Constructor & Destructor Documentation

+ +

◆ Caching() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
HighFive::Caching::Caching (const size_t numSlots,
const size_t cacheSize,
const double w0 = static_cast<double>(H5D_CHUNK_CACHE_W0_DEFAULT) 
)
+
+inline
+
+
+ +

◆ Caching() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Caching::Caching (const DataSetCreatePropsdcpl)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ getCacheSize()

+ +
+
+ + + + + +
+ + + + + + + +
size_t HighFive::Caching::getCacheSize () const
+
+inline
+
+ +
+
+ +

◆ getNumSlots()

+ +
+
+ + + + + +
+ + + + + + + +
size_t HighFive::Caching::getNumSlots () const
+
+inline
+
+ +
+
+ +

◆ getW0()

+ +
+
+ + + + + +
+ + + + + + + +
double HighFive::Caching::getW0 () const
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_caching.js b/class_high_five_1_1_caching.js new file mode 100644 index 000000000..f8ece60f2 --- /dev/null +++ b/class_high_five_1_1_caching.js @@ -0,0 +1,8 @@ +var class_high_five_1_1_caching = +[ + [ "Caching", "class_high_five_1_1_caching.html#a4ad5bc32240ca22d19c154d6c7691e76", null ], + [ "Caching", "class_high_five_1_1_caching.html#a1103a422af4e81b1f4c044996d66d72b", null ], + [ "getCacheSize", "class_high_five_1_1_caching.html#a54d4f322493e56f22fd5d70b1f64ea26", null ], + [ "getNumSlots", "class_high_five_1_1_caching.html#a0de6bc2b09373107cd10a0fc6211d030", null ], + [ "getW0", "class_high_five_1_1_caching.html#ae8777cc455ef27d20d44f9aea32720b7", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_caching__coll__graph.map b/class_high_five_1_1_caching__coll__graph.map new file mode 100644 index 000000000..d200e40f8 --- /dev/null +++ b/class_high_five_1_1_caching__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_caching__coll__graph.md5 b/class_high_five_1_1_caching__coll__graph.md5 new file mode 100644 index 000000000..d0a6a882e --- /dev/null +++ b/class_high_five_1_1_caching__coll__graph.md5 @@ -0,0 +1 @@ +66bafa67e89767c674c508cef030d3ba \ No newline at end of file diff --git a/class_high_five_1_1_caching__coll__graph.png b/class_high_five_1_1_caching__coll__graph.png new file mode 100644 index 000000000..1c74fad19 Binary files /dev/null and b/class_high_five_1_1_caching__coll__graph.png differ diff --git a/class_high_five_1_1_caching__inherit__graph.map b/class_high_five_1_1_caching__inherit__graph.map new file mode 100644 index 000000000..d200e40f8 --- /dev/null +++ b/class_high_five_1_1_caching__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_caching__inherit__graph.md5 b/class_high_five_1_1_caching__inherit__graph.md5 new file mode 100644 index 000000000..d0a6a882e --- /dev/null +++ b/class_high_five_1_1_caching__inherit__graph.md5 @@ -0,0 +1 @@ +66bafa67e89767c674c508cef030d3ba \ No newline at end of file diff --git a/class_high_five_1_1_caching__inherit__graph.png b/class_high_five_1_1_caching__inherit__graph.png new file mode 100644 index 000000000..1c74fad19 Binary files /dev/null and b/class_high_five_1_1_caching__inherit__graph.png differ diff --git a/class_high_five_1_1_chunking-members.html b/class_high_five_1_1_chunking-members.html new file mode 100644 index 000000000..3739c3e8e --- /dev/null +++ b/class_high_five_1_1_chunking-members.html @@ -0,0 +1,114 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Chunking Member List
+
+
+ +

This is the complete list of members for HighFive::Chunking, including all inherited members.

+ + + + + + +
Chunking(const std::vector< hsize_t > &dims)HighFive::Chunkinginlineexplicit
Chunking(const std::initializer_list< hsize_t > &items)HighFive::Chunkinginline
Chunking(hsize_t item, Args... args)HighFive::Chunkinginlineexplicit
Chunking(DataSetCreateProps &plist, size_t max_dims=32)HighFive::Chunkinginlineexplicit
getDimensions() const noexceptHighFive::Chunkinginline
+
+ + + + diff --git a/class_high_five_1_1_chunking.html b/class_high_five_1_1_chunking.html new file mode 100644 index 000000000..71abfe0a6 --- /dev/null +++ b/class_high_five_1_1_chunking.html @@ -0,0 +1,304 @@ + + + + + + + +HighFive: HighFive::Chunking Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Chunking Class Reference
+
+
+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::Chunking:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::Chunking:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + + + + +

+Public Member Functions

 Chunking (const std::vector< hsize_t > &dims)
 
 Chunking (const std::initializer_list< hsize_t > &items)
 
template<typename... Args>
 Chunking (hsize_t item, Args... args)
 
 Chunking (DataSetCreateProps &plist, size_t max_dims=32)
 
const std::vector< hsize_t > & getDimensions () const noexcept
 
+

Constructor & Destructor Documentation

+ +

◆ Chunking() [1/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Chunking::Chunking (const std::vector< hsize_t > & dims)
+
+inlineexplicit
+
+ +
+
+ +

◆ Chunking() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Chunking::Chunking (const std::initializer_list< hsize_t > & items)
+
+inline
+
+ +
+
+ +

◆ Chunking() [3/4]

+ +
+
+
+template<typename... Args>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::Chunking::Chunking (hsize_t item,
Args... args 
)
+
+inlineexplicit
+
+ +
+
+ +

◆ Chunking() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::Chunking::Chunking (DataSetCreatePropsplist,
size_t max_dims = 32 
)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ getDimensions()

+ +
+
+ + + + + +
+ + + + + + + +
const std::vector< hsize_t > & HighFive::Chunking::getDimensions () const
+
+inlinenoexcept
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_chunking.js b/class_high_five_1_1_chunking.js new file mode 100644 index 000000000..1d9eabdde --- /dev/null +++ b/class_high_five_1_1_chunking.js @@ -0,0 +1,8 @@ +var class_high_five_1_1_chunking = +[ + [ "Chunking", "class_high_five_1_1_chunking.html#abfd796a2842296cce52f56563d5e3f1b", null ], + [ "Chunking", "class_high_five_1_1_chunking.html#ae6f0394d31da862755c2a828b7340578", null ], + [ "Chunking", "class_high_five_1_1_chunking.html#a67ef8c92794bef91bb521dd1a8771034", null ], + [ "Chunking", "class_high_five_1_1_chunking.html#a3c16ed55527bf30ae056cb2f52adb3bc", null ], + [ "getDimensions", "class_high_five_1_1_chunking.html#ab7241caf43e07ff7bfdb192770270bf2", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_chunking__coll__graph.map b/class_high_five_1_1_chunking__coll__graph.map new file mode 100644 index 000000000..2ebfcf33c --- /dev/null +++ b/class_high_five_1_1_chunking__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_chunking__coll__graph.md5 b/class_high_five_1_1_chunking__coll__graph.md5 new file mode 100644 index 000000000..e2f44c64f --- /dev/null +++ b/class_high_five_1_1_chunking__coll__graph.md5 @@ -0,0 +1 @@ +06df4a3bc2c9e78d533e78e54ed6b417 \ No newline at end of file diff --git a/class_high_five_1_1_chunking__coll__graph.png b/class_high_five_1_1_chunking__coll__graph.png new file mode 100644 index 000000000..251aa4255 Binary files /dev/null and b/class_high_five_1_1_chunking__coll__graph.png differ diff --git a/class_high_five_1_1_chunking__inherit__graph.map b/class_high_five_1_1_chunking__inherit__graph.map new file mode 100644 index 000000000..2ebfcf33c --- /dev/null +++ b/class_high_five_1_1_chunking__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_chunking__inherit__graph.md5 b/class_high_five_1_1_chunking__inherit__graph.md5 new file mode 100644 index 000000000..e2f44c64f --- /dev/null +++ b/class_high_five_1_1_chunking__inherit__graph.md5 @@ -0,0 +1 @@ +06df4a3bc2c9e78d533e78e54ed6b417 \ No newline at end of file diff --git a/class_high_five_1_1_chunking__inherit__graph.png b/class_high_five_1_1_chunking__inherit__graph.png new file mode 100644 index 000000000..251aa4255 Binary files /dev/null and b/class_high_five_1_1_chunking__inherit__graph.png differ diff --git a/class_high_five_1_1_compound_type-members.html b/class_high_five_1_1_compound_type-members.html new file mode 100644 index 000000000..73f62ce54 --- /dev/null +++ b/class_high_five_1_1_compound_type-members.html @@ -0,0 +1,139 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::CompoundType Member List
+
+
+ +

This is the complete list of members for HighFive::CompoundType, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
asStringType() constHighFive::DataTypeinline
commit(const Object &object, const std::string &name) constHighFive::CompoundTypeinline
CompoundType(const CompoundType &other)=defaultHighFive::CompoundType
CompoundType(const std::vector< member_def > &t_members, size_t size=0)HighFive::CompoundTypeinline
CompoundType(std::vector< member_def > &&t_members, size_t size=0)HighFive::CompoundTypeinline
CompoundType(const std::initializer_list< member_def > &t_members, size_t size=0)HighFive::CompoundTypeinline
CompoundType(DataType &&type)HighFive::CompoundTypeinline
empty() const noexceptHighFive::DataTypeinline
getClass() constHighFive::DataTypeinline
getCreatePropertyList() constHighFive::DataTypeinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getMembers() const noexceptHighFive::CompoundTypeinline
getSize() constHighFive::DataTypeinline
getType() constHighFive::Objectinline
isFixedLenStr() constHighFive::DataTypeinline
isReference() constHighFive::DataTypeinline
isValid() const noexceptHighFive::Objectinline
isVariableStr() constHighFive::DataTypeinline
Object(Object &&other) noexceptHighFive::DataTypeinlineprotected
Object()HighFive::DataTypeinlineprotected
Object(const Object &other)HighFive::DataTypeinlineprotected
Object(hid_t)HighFive::DataTypeinlineexplicitprotected
operator!=(const DataType &other) constHighFive::DataTypeinline
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const DataType &other) constHighFive::DataTypeinline
HighFive::Object::operator==(const Object &other) const noexceptHighFive::Objectinline
string() constHighFive::DataTypeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_compound_type.html b/class_high_five_1_1_compound_type.html new file mode 100644 index 000000000..bef36f9e2 --- /dev/null +++ b/class_high_five_1_1_compound_type.html @@ -0,0 +1,500 @@ + + + + + + + +HighFive: HighFive::CompoundType Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::CompoundType Class Reference
+
+
+ +

Create a compound HDF5 datatype. + More...

+ +

#include <H5DataType.hpp>

+
+Inheritance diagram for HighFive::CompoundType:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::CompoundType:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + +

+Classes

struct  member_def
 Use for defining a sub-type of compound type. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 CompoundType (const CompoundType &other)=default
 
 CompoundType (const std::vector< member_def > &t_members, size_t size=0)
 Initializes a compound type from a vector of member definitions.
 
 CompoundType (std::vector< member_def > &&t_members, size_t size=0)
 
 CompoundType (const std::initializer_list< member_def > &t_members, size_t size=0)
 
 CompoundType (DataType &&type)
 Initializes a compound type from a DataType.
 
void commit (const Object &object, const std::string &name) const
 Commit datatype into the given Object.
 
const std::vector< member_def > & getMembers () const noexcept
 Get read access to the CompoundType members.
 
- Public Member Functions inherited from HighFive::DataType
bool operator== (const DataType &other) const
 
bool operator!= (const DataType &other) const
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
StringType asStringType () const
 Returns this datatype as a StringType.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
DataTypeCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this DataType.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from HighFive::DataType
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+

Create a compound HDF5 datatype.

+

Constructor & Destructor Documentation

+ +

◆ CompoundType() [1/5]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::CompoundType::CompoundType (const CompoundTypeother)
+
+default
+
+ +
+
+ +

◆ CompoundType() [2/5]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::CompoundType::CompoundType (const std::vector< member_def > & t_members,
size_t size = 0 
)
+
+inline
+
+ +

Initializes a compound type from a vector of member definitions.

+
Parameters
+ + + +
t_members
size
+
+
+ +
+
+ +

◆ CompoundType() [3/5]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::CompoundType::CompoundType (std::vector< member_def > && t_members,
size_t size = 0 
)
+
+inline
+
+ +
+
+ +

◆ CompoundType() [4/5]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::CompoundType::CompoundType (const std::initializer_list< member_def > & t_members,
size_t size = 0 
)
+
+inline
+
+ +
+
+ +

◆ CompoundType() [5/5]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::CompoundType::CompoundType (DataType && type)
+
+inline
+
+ +

Initializes a compound type from a DataType.

+
Parameters
+ + +
type
+
+
+ +
+
+

Member Function Documentation

+ +

◆ commit()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void HighFive::CompoundType::commit (const Objectobject,
const std::string & name 
) const
+
+inline
+
+ +

Commit datatype into the given Object.

+
Parameters
+ + + +
objectLocation to commit object into
nameName to give the datatype
+
+
+ +
+
+ +

◆ getMembers()

+ +
+
+ + + + + +
+ + + + + + + +
const std::vector< member_def > & HighFive::CompoundType::getMembers () const
+
+inlinenoexcept
+
+ +

Get read access to the CompoundType members.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_compound_type.js b/class_high_five_1_1_compound_type.js new file mode 100644 index 000000000..bb09ba350 --- /dev/null +++ b/class_high_five_1_1_compound_type.js @@ -0,0 +1,11 @@ +var class_high_five_1_1_compound_type = +[ + [ "member_def", "struct_high_five_1_1_compound_type_1_1member__def.html", "struct_high_five_1_1_compound_type_1_1member__def" ], + [ "CompoundType", "class_high_five_1_1_compound_type.html#a7a9a5ba8596390d58597efe77c986282", null ], + [ "CompoundType", "class_high_five_1_1_compound_type.html#ac8f84671aaca1a6e4aadf599464f822d", null ], + [ "CompoundType", "class_high_five_1_1_compound_type.html#af41ef356cdeb6f369ea2c3f5c6acb317", null ], + [ "CompoundType", "class_high_five_1_1_compound_type.html#a928622671e9da1ffcc7df491b746680d", null ], + [ "CompoundType", "class_high_five_1_1_compound_type.html#ad8de9032c191ca6ca6221eb80dcf23da", null ], + [ "commit", "class_high_five_1_1_compound_type.html#a15cef864f40910add938415ffb8eeac1", null ], + [ "getMembers", "class_high_five_1_1_compound_type.html#a771d62eb1c025b13c511de6959816d95", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_compound_type__coll__graph.map b/class_high_five_1_1_compound_type__coll__graph.map new file mode 100644 index 000000000..0b75a16b6 --- /dev/null +++ b/class_high_five_1_1_compound_type__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_compound_type__coll__graph.md5 b/class_high_five_1_1_compound_type__coll__graph.md5 new file mode 100644 index 000000000..2442d938c --- /dev/null +++ b/class_high_five_1_1_compound_type__coll__graph.md5 @@ -0,0 +1 @@ +7d104f0529de33f6e2a9f8d8cf946590 \ No newline at end of file diff --git a/class_high_five_1_1_compound_type__coll__graph.png b/class_high_five_1_1_compound_type__coll__graph.png new file mode 100644 index 000000000..08105f4b2 Binary files /dev/null and b/class_high_five_1_1_compound_type__coll__graph.png differ diff --git a/class_high_five_1_1_compound_type__inherit__graph.map b/class_high_five_1_1_compound_type__inherit__graph.map new file mode 100644 index 000000000..0b75a16b6 --- /dev/null +++ b/class_high_five_1_1_compound_type__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_compound_type__inherit__graph.md5 b/class_high_five_1_1_compound_type__inherit__graph.md5 new file mode 100644 index 000000000..2442d938c --- /dev/null +++ b/class_high_five_1_1_compound_type__inherit__graph.md5 @@ -0,0 +1 @@ +7d104f0529de33f6e2a9f8d8cf946590 \ No newline at end of file diff --git a/class_high_five_1_1_compound_type__inherit__graph.png b/class_high_five_1_1_compound_type__inherit__graph.png new file mode 100644 index 000000000..08105f4b2 Binary files /dev/null and b/class_high_five_1_1_compound_type__inherit__graph.png differ diff --git a/class_high_five_1_1_create_intermediate_group-members.html b/class_high_five_1_1_create_intermediate_group-members.html new file mode 100644 index 000000000..9e1a4f698 --- /dev/null +++ b/class_high_five_1_1_create_intermediate_group-members.html @@ -0,0 +1,114 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::CreateIntermediateGroup Member List
+
+
+ +

This is the complete list of members for HighFive::CreateIntermediateGroup, including all inherited members.

+ + + + + + +
CreateIntermediateGroup(bool create=true)HighFive::CreateIntermediateGroupinlineexplicit
CreateIntermediateGroup(const ObjectCreateProps &ocpl)HighFive::CreateIntermediateGroupinlineexplicit
CreateIntermediateGroup(const LinkCreateProps &lcpl)HighFive::CreateIntermediateGroupexplicit
fromPropertyList(hid_t hid)HighFive::CreateIntermediateGroupinlineprotected
isSet() constHighFive::CreateIntermediateGroupinline
+
+ + + + diff --git a/class_high_five_1_1_create_intermediate_group.html b/class_high_five_1_1_create_intermediate_group.html new file mode 100644 index 000000000..6c4a21dc6 --- /dev/null +++ b/class_high_five_1_1_create_intermediate_group.html @@ -0,0 +1,285 @@ + + + + + + + +HighFive: HighFive::CreateIntermediateGroup Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::CreateIntermediateGroup Class Reference
+
+
+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::CreateIntermediateGroup:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::CreateIntermediateGroup:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + +

+Public Member Functions

 CreateIntermediateGroup (bool create=true)
 
 CreateIntermediateGroup (const ObjectCreateProps &ocpl)
 
 CreateIntermediateGroup (const LinkCreateProps &lcpl)
 
bool isSet () const
 
+ + + +

+Protected Member Functions

void fromPropertyList (hid_t hid)
 
+

Constructor & Destructor Documentation

+ +

◆ CreateIntermediateGroup() [1/3]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::CreateIntermediateGroup::CreateIntermediateGroup (bool create = true)
+
+inlineexplicit
+
+ +
+
+ +

◆ CreateIntermediateGroup() [2/3]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::CreateIntermediateGroup::CreateIntermediateGroup (const ObjectCreatePropsocpl)
+
+inlineexplicit
+
+ +
+
+ +

◆ CreateIntermediateGroup() [3/3]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::CreateIntermediateGroup::CreateIntermediateGroup (const LinkCreatePropslcpl)
+
+explicit
+
+ +
+
+

Member Function Documentation

+ +

◆ fromPropertyList()

+ +
+
+ + + + + +
+ + + + + + + + +
void HighFive::CreateIntermediateGroup::fromPropertyList (hid_t hid)
+
+inlineprotected
+
+ +
+
+ +

◆ isSet()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::CreateIntermediateGroup::isSet () const
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_create_intermediate_group.js b/class_high_five_1_1_create_intermediate_group.js new file mode 100644 index 000000000..522a2f925 --- /dev/null +++ b/class_high_five_1_1_create_intermediate_group.js @@ -0,0 +1,8 @@ +var class_high_five_1_1_create_intermediate_group = +[ + [ "CreateIntermediateGroup", "class_high_five_1_1_create_intermediate_group.html#a05ff59987cddf8b82e3bd7a3eec0394f", null ], + [ "CreateIntermediateGroup", "class_high_five_1_1_create_intermediate_group.html#ab7b461991cf2489e2ec80c17c2a15462", null ], + [ "CreateIntermediateGroup", "class_high_five_1_1_create_intermediate_group.html#a5d3a1f7a0201c8735bb27493717b67a8", null ], + [ "fromPropertyList", "class_high_five_1_1_create_intermediate_group.html#a815c0e49561c0b4a774cc59a4aa017b7", null ], + [ "isSet", "class_high_five_1_1_create_intermediate_group.html#af4a9eb748f1c06199c9ad19daafd8632", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_create_intermediate_group__coll__graph.map b/class_high_five_1_1_create_intermediate_group__coll__graph.map new file mode 100644 index 000000000..6bea6c5f8 --- /dev/null +++ b/class_high_five_1_1_create_intermediate_group__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_create_intermediate_group__coll__graph.md5 b/class_high_five_1_1_create_intermediate_group__coll__graph.md5 new file mode 100644 index 000000000..22f19099f --- /dev/null +++ b/class_high_five_1_1_create_intermediate_group__coll__graph.md5 @@ -0,0 +1 @@ +227dd7f5225eeca8275b5cef6ce4249a \ No newline at end of file diff --git a/class_high_five_1_1_create_intermediate_group__coll__graph.png b/class_high_five_1_1_create_intermediate_group__coll__graph.png new file mode 100644 index 000000000..cdf0ec7f5 Binary files /dev/null and b/class_high_five_1_1_create_intermediate_group__coll__graph.png differ diff --git a/class_high_five_1_1_create_intermediate_group__inherit__graph.map b/class_high_five_1_1_create_intermediate_group__inherit__graph.map new file mode 100644 index 000000000..6bea6c5f8 --- /dev/null +++ b/class_high_five_1_1_create_intermediate_group__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_create_intermediate_group__inherit__graph.md5 b/class_high_five_1_1_create_intermediate_group__inherit__graph.md5 new file mode 100644 index 000000000..22f19099f --- /dev/null +++ b/class_high_five_1_1_create_intermediate_group__inherit__graph.md5 @@ -0,0 +1 @@ +227dd7f5225eeca8275b5cef6ce4249a \ No newline at end of file diff --git a/class_high_five_1_1_create_intermediate_group__inherit__graph.png b/class_high_five_1_1_create_intermediate_group__inherit__graph.png new file mode 100644 index 000000000..cdf0ec7f5 Binary files /dev/null and b/class_high_five_1_1_create_intermediate_group__inherit__graph.png differ diff --git a/class_high_five_1_1_data_set-members.html b/class_high_five_1_1_data_set-members.html new file mode 100644 index 000000000..2db35b11c --- /dev/null +++ b/class_high_five_1_1_data_set-members.html @@ -0,0 +1,160 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::DataSet Member List
+
+
+ +

This is the complete list of members for HighFive::DataSet, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_file_objHighFive::PathTraits< DataSet >protected
_hidHighFive::Objectprotected
createAttribute(const std::string &attribute_name, const DataSpace &space, const DataType &type)HighFive::AnnotateTraits< DataSet >inline
createAttribute(const std::string &attribute_name, const DataSpace &space)HighFive::AnnotateTraits< DataSet >inline
createAttribute(const std::string &attribute_name, const T &data)HighFive::AnnotateTraits< DataSet >inline
DataSet()=defaultHighFive::DataSet
DataSet(Object &&o) noexceptHighFive::DataSetinlineprotected
deleteAttribute(const std::string &attribute_name)HighFive::AnnotateTraits< DataSet >inline
getAccessPropertyList() constHighFive::DataSetinline
getAttribute(const std::string &attribute_name) constHighFive::AnnotateTraits< DataSet >inline
getCreatePropertyList() constHighFive::DataSetinline
getDataType() constHighFive::DataSetinline
getDimensions() constHighFive::DataSetinline
getElementCount() constHighFive::DataSetinline
getFile() const noexceptHighFive::PathTraits< DataSet >inline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getMemSpace() constHighFive::DataSetinline
getNumberAttributes() constHighFive::AnnotateTraits< DataSet >inline
getOffset() constHighFive::DataSetinline
getPath() constHighFive::PathTraits< DataSet >inline
getSpace() constHighFive::DataSetinline
getStorageSize() constHighFive::DataSetinline
getType() constHighFive::Objectinline
hasAttribute(const std::string &attr_name) constHighFive::AnnotateTraits< DataSet >inline
isValid() const noexceptHighFive::Objectinline
listAttributeNames() constHighFive::AnnotateTraits< DataSet >inline
NodeTraitsHighFive::DataSetfriend
Object(Object &&other) noexceptHighFive::DataSetinlineprotected
Object()HighFive::DataSetinlineprotected
Object(const Object &other)HighFive::DataSetinlineprotected
Object(hid_t)HighFive::DataSetinlineexplicitprotected
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
PathTraits()HighFive::PathTraits< DataSet >inline
read(const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< DataSet >inline
read(T &array, const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< DataSet >inline
read(T *array, const DataType &dtype, const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< DataSet >inline
read(T *array, const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< DataSet >inline
ReferenceHighFive::DataSetfriend
resize(const std::vector< size_t > &dims)HighFive::DataSetinline
select(const HyperSlab &hyperslab) constHighFive::SliceTraits< DataSet >inline
select(const HyperSlab &hyperslab, const DataSpace &memspace) constHighFive::SliceTraits< DataSet >inline
select(const std::vector< size_t > &offset, const std::vector< size_t > &count, const std::vector< size_t > &stride={}, const std::vector< size_t > &block={}) constHighFive::SliceTraits< DataSet >inline
select(const std::vector< size_t > &columns) constHighFive::SliceTraits< DataSet >inline
select(const ElementSet &elements) constHighFive::SliceTraits< DataSet >inline
typeHighFive::DataSetstatic
write(const T &buffer, const DataTransferProps &xfer_props=DataTransferProps())HighFive::SliceTraits< DataSet >inline
write_raw(const T *buffer, const DataType &mem_datatype, const DataTransferProps &xfer_props=DataTransferProps())HighFive::SliceTraits< DataSet >inline
write_raw(const T *buffer, const DataTransferProps &xfer_props=DataTransferProps())HighFive::SliceTraits< DataSet >inline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_data_set.html b/class_high_five_1_1_data_set.html new file mode 100644 index 000000000..55c7f7b75 --- /dev/null +++ b/class_high_five_1_1_data_set.html @@ -0,0 +1,830 @@ + + + + + + + +HighFive: HighFive::DataSet Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::DataSet Class Reference
+
+
+ +

Class representing a dataset. + More...

+ +

#include <H5DataSet.hpp>

+
+Inheritance diagram for HighFive::DataSet:
+
+
Inheritance graph
+ + + + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::DataSet:
+
+
Collaboration graph
+ + + + + + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

uint64_t getStorageSize () const
 getStorageSize
 
uint64_t getOffset () const
 getOffset
 
DataType getDataType () const
 getDataType
 
DataSpace getSpace () const
 getSpace
 
DataSpace getMemSpace () const
 getMemSpace
 
void resize (const std::vector< size_t > &dims)
 Change the size of the dataset.
 
std::vector< size_t > getDimensions () const
 Get the dimensions of the whole DataSet. This is a shorthand for getSpace().getDimensions()
 
size_t getElementCount () const
 Get the total number of elements in the current dataset. E.g. 2x2x2 matrix has size 8. This is a shorthand for getSpace().getTotalCount()
 
DataSetCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this dataset.
 
DataSetAccessProps getAccessPropertyList () const
 Get the list of properties for accession of this dataset.
 
 DataSet ()=default
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
- Public Member Functions inherited from HighFive::SliceTraits< DataSet >
Selection select (const HyperSlab &hyperslab) const
 Select an hyperslab in the current Slice/Dataset.
 
Selection select (const HyperSlab &hyperslab, const DataSpace &memspace) const
 Select an hyperslab in the current Slice/Dataset.
 
Selection select (const std::vector< size_t > &offset, const std::vector< size_t > &count, const std::vector< size_t > &stride={}, const std::vector< size_t > &block={}) const
 Select a region in the current Slice/Dataset of count points at offset separated by stride. If strides are not provided they will default to 1 in all dimensions.
 
Selection select (const std::vector< size_t > &columns) const
 Select a set of columns in the last dimension of this dataset.
 
Selection select (const ElementSet &elements) const
 Select a region in the current Slice/Dataset out of a list of elements.
 
read (const DataTransferProps &xfer_props=DataTransferProps()) const
 
void read (T &array, const DataTransferProps &xfer_props=DataTransferProps()) const
 
void read (T *array, const DataType &dtype, const DataTransferProps &xfer_props=DataTransferProps()) const
 
void read (T *array, const DataTransferProps &xfer_props=DataTransferProps()) const
 
void write (const T &buffer, const DataTransferProps &xfer_props=DataTransferProps())
 
void write_raw (const T *buffer, const DataType &mem_datatype, const DataTransferProps &xfer_props=DataTransferProps())
 
void write_raw (const T *buffer, const DataTransferProps &xfer_props=DataTransferProps())
 
- Public Member Functions inherited from HighFive::AnnotateTraits< DataSet >
Attribute createAttribute (const std::string &attribute_name, const DataSpace &space, const DataType &type)
 create a new attribute with the name attribute_name
 
Attribute createAttribute (const std::string &attribute_name, const DataSpace &space)
 createAttribute create a new attribute on the current dataset with size specified by space
 
Attribute createAttribute (const std::string &attribute_name, const T &data)
 createAttribute create a new attribute on the current dataset and write to it, inferring the DataSpace from data.
 
void deleteAttribute (const std::string &attribute_name)
 deleteAttribute let you delete an attribute by its name.
 
Attribute getAttribute (const std::string &attribute_name) const
 open an existing attribute with the name attribute_name
 
size_t getNumberAttributes () const
 return the number of attributes of the node / group
 
std::vector< std::string > listAttributeNames () const
 list all attribute name of the node / group
 
bool hasAttribute (const std::string &attr_name) const
 checks an attribute exists
 
- Public Member Functions inherited from HighFive::PathTraits< DataSet >
 PathTraits ()
 
std::string getPath () const
 return the path to the current object
 
FilegetFile () const noexcept
 Return a reference to the File object this object belongs.
 
+ + + +

+Static Public Attributes

static const ObjectType type = ObjectType::Dataset
 
+ + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

 DataSet (Object &&o) noexcept
 
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
+ + + + + + +

+Friends

class Reference
 
template<typename Derivate >
class NodeTraits
 
+ + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
- Protected Attributes inherited from HighFive::PathTraits< DataSet >
std::shared_ptr< File_file_obj
 
+

Detailed Description

+

Class representing a dataset.

+

Constructor & Destructor Documentation

+ +

◆ DataSet() [1/2]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::DataSet::DataSet ()
+
+default
+
+
Deprecated:
Default constructor creates unsafe uninitialized objects
+ +
+
+ +

◆ DataSet() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::DataSet::DataSet (Object && o)
+
+inlineprotectednoexcept
+
+ +
+
+

Member Function Documentation

+ +

◆ getAccessPropertyList()

+ +
+
+ + + + + +
+ + + + + + + +
DataSetAccessProps HighFive::DataSet::getAccessPropertyList () const
+
+inline
+
+ +

Get the list of properties for accession of this dataset.

+ +
+
+ +

◆ getCreatePropertyList()

+ +
+
+ + + + + +
+ + + + + + + +
DataSetCreateProps HighFive::DataSet::getCreatePropertyList () const
+
+inline
+
+ +

Get the list of properties for creation of this dataset.

+ +
+
+ +

◆ getDataType()

+ +
+
+ + + + + +
+ + + + + + + +
DataType HighFive::DataSet::getDataType () const
+
+inline
+
+ +

getDataType

+
Returns
return the datatype associated with this dataset
+ +
+
+ +

◆ getDimensions()

+ +
+
+ + + + + +
+ + + + + + + +
std::vector< size_t > HighFive::DataSet::getDimensions () const
+
+inline
+
+ +

Get the dimensions of the whole DataSet. This is a shorthand for getSpace().getDimensions()

+
Returns
The shape of the current HighFive::DataSet
+ +
+
+ +

◆ getElementCount()

+ +
+
+ + + + + +
+ + + + + + + +
size_t HighFive::DataSet::getElementCount () const
+
+inline
+
+ +

Get the total number of elements in the current dataset. E.g. 2x2x2 matrix has size 8. This is a shorthand for getSpace().getTotalCount()

+
Returns
The shape of the current HighFive::DataSet
+ +
+
+ +

◆ getMemSpace()

+ +
+
+ + + + + +
+ + + + + + + +
DataSpace HighFive::DataSet::getMemSpace () const
+
+inline
+
+ +

getMemSpace

+
Returns
same than getSpace for DataSet, compatibility with Selection class
+ +
+
+ +

◆ getOffset()

+ +
+
+ + + + + +
+ + + + + + + +
uint64_t HighFive::DataSet::getOffset () const
+
+inline
+
+ +

getOffset

+
Returns
returns DataSet address in file
+ +
+
+ +

◆ getSpace()

+ +
+
+ + + + + +
+ + + + + + + +
DataSpace HighFive::DataSet::getSpace () const
+
+inline
+
+ +

getSpace

+
Returns
return the dataspace associated with this dataset
+ +
+
+ +

◆ getStorageSize()

+ +
+
+ + + + + +
+ + + + + + + +
uint64_t HighFive::DataSet::getStorageSize () const
+
+inline
+
+ +

getStorageSize

+
Returns
returns the amount of storage allocated for a dataset.
+ +
+
+ +

◆ Object() [1/4]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Object::Object ()
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (const Objectother)
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (hid_t hid)
+
+inlineexplicitprotected
+
+ +
+
+ +

◆ Object() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (Object && other)
+
+inlineprotectednoexcept
+
+ +
+
+ +

◆ resize()

+ +
+
+ + + + + +
+ + + + + + + + +
void HighFive::DataSet::resize (const std::vector< size_t > & dims)
+
+inline
+
+ +

Change the size of the dataset.

+

This requires that the dataset was created with chunking, and you would generally want to have set a larger maxdims setting

Parameters
+ + +
dimsNew size of the dataset
+
+
+ +
+
+

Friends And Related Symbol Documentation

+ +

◆ NodeTraits

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + +
friend class NodeTraits
+
+friend
+
+ +
+
+ +

◆ Reference

+ +
+
+ + + + + +
+ + + + +
friend class Reference
+
+friend
+
+ +
+
+

Member Data Documentation

+ +

◆ type

+ +
+
+ + + + + +
+ + + + +
const ObjectType HighFive::DataSet::type = ObjectType::Dataset
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_data_set.js b/class_high_five_1_1_data_set.js new file mode 100644 index 000000000..9135742c5 --- /dev/null +++ b/class_high_five_1_1_data_set.js @@ -0,0 +1,21 @@ +var class_high_five_1_1_data_set = +[ + [ "DataSet", "class_high_five_1_1_data_set.html#a1a43c3413fef0f376d85dbf47e38ad55", null ], + [ "DataSet", "class_high_five_1_1_data_set.html#a99bb1d77991fd975fb559372b4b0fb6b", null ], + [ "getAccessPropertyList", "class_high_five_1_1_data_set.html#ada59836ba9ddb3973fa80076e4242734", null ], + [ "getCreatePropertyList", "class_high_five_1_1_data_set.html#a565ee99d20689e662f17ab8ce3b57000", null ], + [ "getDataType", "class_high_five_1_1_data_set.html#a52b7938b1c7e48f7600fbc3be4a0f24e", null ], + [ "getDimensions", "class_high_five_1_1_data_set.html#af7b75de38d47c2c68d4f384ee611bc66", null ], + [ "getElementCount", "class_high_five_1_1_data_set.html#abd786ba50bb11b92c9d760f7f77e4ca7", null ], + [ "getMemSpace", "class_high_five_1_1_data_set.html#a37f31fc5f14192b9a9fcdc7707e0ceee", null ], + [ "getOffset", "class_high_five_1_1_data_set.html#a662e1f9f8d9dfbbf02e135f6be2ee471", null ], + [ "getSpace", "class_high_five_1_1_data_set.html#aa9405c8f1bdb72d28e971c8645fb47aa", null ], + [ "getStorageSize", "class_high_five_1_1_data_set.html#a9f1da81f89bdaa08561fb35779586f64", null ], + [ "Object", "class_high_five_1_1_data_set.html#a6bae41d04f273d04d2914406ab79da32", null ], + [ "Object", "class_high_five_1_1_data_set.html#ab87ee7d5e2beee6a50d60dec20d3dfe5", null ], + [ "Object", "class_high_five_1_1_data_set.html#a9fe361bc0bd9662c1fd96a4a6ec1133a", null ], + [ "Object", "class_high_five_1_1_data_set.html#aa42052fa5ec4ee691f6a7dd6467199f2", null ], + [ "resize", "class_high_five_1_1_data_set.html#a516b2f8f1e4ecca470d8c351749807e9", null ], + [ "NodeTraits", "class_high_five_1_1_data_set.html#a403d48867d005e936868de31b2281ae8", null ], + [ "Reference", "class_high_five_1_1_data_set.html#a75dfa92607f3d314070ecf242e028014", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_data_set__coll__graph.map b/class_high_five_1_1_data_set__coll__graph.map new file mode 100644 index 000000000..5d4840b6b --- /dev/null +++ b/class_high_five_1_1_data_set__coll__graph.map @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/class_high_five_1_1_data_set__coll__graph.md5 b/class_high_five_1_1_data_set__coll__graph.md5 new file mode 100644 index 000000000..4a898d1f0 --- /dev/null +++ b/class_high_five_1_1_data_set__coll__graph.md5 @@ -0,0 +1 @@ +fe37550f6392e40f981628467bd09609 \ No newline at end of file diff --git a/class_high_five_1_1_data_set__coll__graph.png b/class_high_five_1_1_data_set__coll__graph.png new file mode 100644 index 000000000..b0266d83e Binary files /dev/null and b/class_high_five_1_1_data_set__coll__graph.png differ diff --git a/class_high_five_1_1_data_set__inherit__graph.map b/class_high_five_1_1_data_set__inherit__graph.map new file mode 100644 index 000000000..5d4840b6b --- /dev/null +++ b/class_high_five_1_1_data_set__inherit__graph.map @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/class_high_five_1_1_data_set__inherit__graph.md5 b/class_high_five_1_1_data_set__inherit__graph.md5 new file mode 100644 index 000000000..4a898d1f0 --- /dev/null +++ b/class_high_five_1_1_data_set__inherit__graph.md5 @@ -0,0 +1 @@ +fe37550f6392e40f981628467bd09609 \ No newline at end of file diff --git a/class_high_five_1_1_data_set__inherit__graph.png b/class_high_five_1_1_data_set__inherit__graph.png new file mode 100644 index 000000000..b0266d83e Binary files /dev/null and b/class_high_five_1_1_data_set__inherit__graph.png differ diff --git a/class_high_five_1_1_data_set_exception-members.html b/class_high_five_1_1_data_set_exception-members.html new file mode 100644 index 000000000..f96529e5b --- /dev/null +++ b/class_high_five_1_1_data_set_exception-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::DataSetException Member List
+
+
+ +

This is the complete list of members for HighFive::DataSetException, including all inherited members.

+ + + + + + + + + + + + + +
_err_majorHighFive::Exceptionprotected
_err_minorHighFive::Exceptionprotected
_errmsgHighFive::Exceptionprotected
_nextHighFive::Exceptionprotected
DataSetException(const std::string &err_msg)HighFive::DataSetExceptioninline
Exception(const std::string &err_msg)HighFive::Exceptioninline
getErrMajor() constHighFive::Exceptioninline
getErrMinor() constHighFive::Exceptioninline
nextException() constHighFive::Exceptioninline
setErrorMsg(const std::string &errmsg)HighFive::Exceptioninlinevirtual
what() const overrideHighFive::Exceptioninline
~Exception()HighFive::Exceptioninlinevirtual
+
+ + + + diff --git a/class_high_five_1_1_data_set_exception.html b/class_high_five_1_1_data_set_exception.html new file mode 100644 index 000000000..9978469fe --- /dev/null +++ b/class_high_five_1_1_data_set_exception.html @@ -0,0 +1,209 @@ + + + + + + + +HighFive: HighFive::DataSetException Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::DataSetException Class Reference
+
+
+ +

Exception specific to HighFive DataSet interface. + More...

+ +

#include <H5Exception.hpp>

+
+Inheritance diagram for HighFive::DataSetException:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::DataSetException:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 DataSetException (const std::string &err_msg)
 
- Public Member Functions inherited from HighFive::Exception
 Exception (const std::string &err_msg)
 
virtual ~Exception () throw ()
 
const char * what () const override throw ()
 get the current exception error message
 
virtual void setErrorMsg (const std::string &errmsg)
 define the error message
 
ExceptionnextException () const
 nextException
 
hid_t getErrMajor () const
 HDF5 library error mapper.
 
hid_t getErrMinor () const
 HDF5 library error mapper.
 
+ + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Exception
std::string _errmsg
 
std::shared_ptr< Exception_next
 
hid_t _err_major
 
hid_t _err_minor
 
+

Detailed Description

+

Exception specific to HighFive DataSet interface.

+

Constructor & Destructor Documentation

+ +

◆ DataSetException()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::DataSetException::DataSetException (const std::string & err_msg)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_data_set_exception.js b/class_high_five_1_1_data_set_exception.js new file mode 100644 index 000000000..e3f59a2b8 --- /dev/null +++ b/class_high_five_1_1_data_set_exception.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_data_set_exception = +[ + [ "DataSetException", "class_high_five_1_1_data_set_exception.html#a12e2ef42d52a26486cbaa10ff9c02534", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_data_set_exception__coll__graph.map b/class_high_five_1_1_data_set_exception__coll__graph.map new file mode 100644 index 000000000..312cf6844 --- /dev/null +++ b/class_high_five_1_1_data_set_exception__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_data_set_exception__coll__graph.md5 b/class_high_five_1_1_data_set_exception__coll__graph.md5 new file mode 100644 index 000000000..c8f93c300 --- /dev/null +++ b/class_high_five_1_1_data_set_exception__coll__graph.md5 @@ -0,0 +1 @@ +d8f04e839210add8dcfcfcff2056aa98 \ No newline at end of file diff --git a/class_high_five_1_1_data_set_exception__coll__graph.png b/class_high_five_1_1_data_set_exception__coll__graph.png new file mode 100644 index 000000000..40e7c1e53 Binary files /dev/null and b/class_high_five_1_1_data_set_exception__coll__graph.png differ diff --git a/class_high_five_1_1_data_set_exception__inherit__graph.map b/class_high_five_1_1_data_set_exception__inherit__graph.map new file mode 100644 index 000000000..312cf6844 --- /dev/null +++ b/class_high_five_1_1_data_set_exception__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_data_set_exception__inherit__graph.md5 b/class_high_five_1_1_data_set_exception__inherit__graph.md5 new file mode 100644 index 000000000..c8f93c300 --- /dev/null +++ b/class_high_five_1_1_data_set_exception__inherit__graph.md5 @@ -0,0 +1 @@ +d8f04e839210add8dcfcfcff2056aa98 \ No newline at end of file diff --git a/class_high_five_1_1_data_set_exception__inherit__graph.png b/class_high_five_1_1_data_set_exception__inherit__graph.png new file mode 100644 index 000000000..40e7c1e53 Binary files /dev/null and b/class_high_five_1_1_data_set_exception__inherit__graph.png differ diff --git a/class_high_five_1_1_data_space-members.html b/class_high_five_1_1_data_space-members.html new file mode 100644 index 000000000..9f68fb643 --- /dev/null +++ b/class_high_five_1_1_data_space-members.html @@ -0,0 +1,144 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::DataSpace Member List
+
+
+ +

This is the complete list of members for HighFive::DataSpace, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
AttributeHighFive::DataSpacefriend
clone() constHighFive::DataSpaceinline
DataSetHighFive::DataSpacefriend
DataSpace(const std::vector< size_t > &dims)HighFive::DataSpaceinlineexplicit
DataSpace(const std::array< size_t, N > &dims)HighFive::DataSpaceinlineexplicit
DataSpace(const std::initializer_list< size_t > &dims)HighFive::DataSpaceinline
DataSpace(size_t dim1, Args... dims)HighFive::DataSpaceinlineexplicit
DataSpace(const IT begin, const IT end)HighFive::DataSpaceinline
DataSpace(const std::vector< size_t > &dims, const std::vector< size_t > &maxdims)HighFive::DataSpaceinlineexplicit
DataSpace(DataspaceType space_type)HighFive::DataSpaceinlineexplicit
DataSpace()=defaultHighFive::DataSpaceprotected
dataspace_null enum valueHighFive::DataSpace
dataspace_scalar enum valueHighFive::DataSpace
DataspaceType enum nameHighFive::DataSpace
FileHighFive::DataSpacefriend
From(const T &value)HighFive::DataSpaceinlinestatic
FromCharArrayStrings(const char(&string_array)[N][Width])HighFive::DataSpaceinlinestatic
getDimensions() constHighFive::DataSpaceinline
getElementCount() constHighFive::DataSpaceinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getMaxDimensions() constHighFive::DataSpaceinline
getNumberDimensions() constHighFive::DataSpaceinline
getType() constHighFive::Objectinline
isValid() const noexceptHighFive::Objectinline
Object(Object &&other) noexceptHighFive::Objectinline
Object()HighFive::Objectinlineprotected
Object(const Object &other)HighFive::Objectinlineprotected
Object(hid_t)HighFive::Objectinlineexplicitprotected
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
typeHighFive::DataSpacestatic
UNLIMITEDHighFive::DataSpacestatic
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_data_space.html b/class_high_five_1_1_data_space.html new file mode 100644 index 000000000..7356784d2 --- /dev/null +++ b/class_high_five_1_1_data_space.html @@ -0,0 +1,978 @@ + + + + + + + +HighFive: HighFive::DataSpace Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::DataSpace Class Reference
+
+
+ +

Class representing the space (dimensions) of a DataSet. + More...

+ +

#include <H5DataSpace.hpp>

+
+Inheritance diagram for HighFive::DataSpace:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::DataSpace:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + +

+Public Types

enum  DataspaceType { dataspace_scalar +, dataspace_null + }
 An enum to create scalar and null DataSpace with DataSpace::DataSpace(DataspaceType dtype). More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 DataSpace (const std::vector< size_t > &dims)
 Create a DataSpace of N-dimensions from a std::vector<size_t>.
 
template<size_t N>
 DataSpace (const std::array< size_t, N > &dims)
 Create a DataSpace of N-dimensions from a std::array<size_t, N>.
 
 DataSpace (const std::initializer_list< size_t > &dims)
 Create a DataSpace of N-dimensions from an initializer list.
 
template<typename... Args>
 DataSpace (size_t dim1, Args... dims)
 Create a DataSpace of N-dimensions from direct values.
 
template<typename IT , typename = typename std::enable_if<!std::is_integral<IT>::value, IT>::type>
 DataSpace (const IT begin, const IT end)
 Create a DataSpace from a pair of iterators.
 
 DataSpace (const std::vector< size_t > &dims, const std::vector< size_t > &maxdims)
 Create a resizable N-dimensional DataSpace.
 
 DataSpace (DataspaceType space_type)
 Create a scalar or a null DataSpace.
 
DataSpace clone () const
 Create a copy of the DataSpace which will have different id.
 
size_t getNumberDimensions () const
 Returns the number of dimensions of a DataSpace.
 
std::vector< size_t > getDimensions () const
 Returns the size of the dataset in each dimension.
 
size_t getElementCount () const
 Return the number of elements in this DataSpace.
 
std::vector< size_t > getMaxDimensions () const
 Returns the maximum size of the dataset in each dimension.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + +

+Static Public Member Functions

template<typename T >
static DataSpace From (const T &value)
 Automatically deduce the DataSpace from a container/value.
 
template<std::size_t N, std::size_t Width>
static DataSpace FromCharArrayStrings (const char(&string_array)[N][Width])
 Create a DataSpace from a value of type string array.
 
+ + + + + + +

+Static Public Attributes

static const ObjectType type = ObjectType::DataSpace
 
static const size_t UNLIMITED = SIZE_MAX
 Magic value to specify that a DataSpace can grow without limit.
 
+ + + + + + + + + + + + +

+Protected Member Functions

 DataSpace ()=default
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
+ + + + + + + +

+Friends

class Attribute
 
class File
 
class DataSet
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+

Class representing the space (dimensions) of a DataSet.

+
// Create a DataSpace of dimension 1 x 2 x 3
+
DataSpace dspace(1, 2, 3);
+
std::cout << dspace.getElementCount() << std::endl; // Print 1 * 2 * 3 = 6
+
std::cout << dspace.getNumberDimensions() << std::endl; // Print 3
+
std::vector<size_t> dims = dspace.getDimensions(); // dims is {1, 2, 3}
+
Class representing the space (dimensions) of a DataSet.
Definition H5DataSpace.hpp:31
+

Member Enumeration Documentation

+ +

◆ DataspaceType

+ +
+
+ +

An enum to create scalar and null DataSpace with DataSpace::DataSpace(DataspaceType dtype).

+

This enum is needed otherwise we will not be able to distringuish between both with normal constructors. Both have a dimension of 0.

Since
1.3
+ + + +
Enumerator
dataspace_scalar 

Value to create scalar DataSpace.

+
dataspace_null 

Value to create null DataSpace.

+
+ +
+
+

Constructor & Destructor Documentation

+ +

◆ DataSpace() [1/8]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::DataSpace::DataSpace (const std::vector< size_t > & dims)
+
+inlineexplicit
+
+ +

Create a DataSpace of N-dimensions from a std::vector<size_t>.

+
Parameters
+ + +
dimsDimensions of the new DataSpace
+
+
+
// Create a DataSpace with 2 dimensions: 1 and 3
+
DataSpace(std::vector<size_t>{1, 3});
+ +
Since
1.0
+ +
+
+ +

◆ DataSpace() [2/8]

+ +
+
+
+template<size_t N>
+ + + + + +
+ + + + + + + + +
HighFive::DataSpace::DataSpace (const std::array< size_t, N > & dims)
+
+inlineexplicit
+
+ +

Create a DataSpace of N-dimensions from a std::array<size_t, N>.

+
Parameters
+ + +
dimsDimensions of the new DataSpace
+
+
+
// Create a DataSpace with 2 dimensions: 1 and 3
+
DataSpace(std::array<size_t, 2>{1, 3});
+
Since
2.3
+ +
+
+ +

◆ DataSpace() [3/8]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::DataSpace::DataSpace (const std::initializer_list< size_t > & dims)
+
+inline
+
+ +

Create a DataSpace of N-dimensions from an initializer list.

+
Parameters
+ + +
dimsDimensions of the new DataSpace
+
+
+
// Create a DataSpace with 2 dimensions: 1 and 3
+
DataSpace{1, 3};
+
Since
2.1
+ +
+
+ +

◆ DataSpace() [4/8]

+ +
+
+
+template<typename... Args>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::DataSpace::DataSpace (size_t dim1,
Args... dims 
)
+
+inlineexplicit
+
+ +

Create a DataSpace of N-dimensions from direct values.

+
Parameters
+ + + +
dim1The first dimension
dimsThe following dimensions
+
+
+
// Create a DataSpace with 2 dimensions: 1 and 3
+
DataSpace(1, 3);
+
Since
2.1
+ +
+
+ +

◆ DataSpace() [5/8]

+ +
+
+
+template<class IT , typename >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::DataSpace::DataSpace (const IT begin,
const IT end 
)
+
+inline
+
+ +

Create a DataSpace from a pair of iterators.

+
Parameters
+ + + +
beginThe beginning of the container
endThe end of the container
+
+
+
// Create a DataSpace with 2 dimensions: 1 and 3
+
std::vector<int> v{1, 3};
+
DataSpace(v.begin(), v.end());
+
Since
2.0
+ +
+
+ +

◆ DataSpace() [6/8]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::DataSpace::DataSpace (const std::vector< size_t > & dims,
const std::vector< size_t > & maxdims 
)
+
+inlineexplicit
+
+ +

Create a resizable N-dimensional DataSpace.

+
Parameters
+ + + +
dimsInitial size of dataspace
maxdimsMaximum size of the dataspace
+
+
+
// Create a DataSpace with 2 dimensions: 1 and 3.
+
// It can later be resized up to a maximum of 10 x 10
+
DataSpace(std::vector<size_t>{1, 3}, std::vector<size_t>{10, 10});
+
See also
UNLIMITED for a DataSpace that can be resized without limit.
+
Since
2.0
+ +
+
+ +

◆ DataSpace() [7/8]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::DataSpace::DataSpace (DataSpace::DataspaceType space_type)
+
+inlineexplicit
+
+ +

Create a scalar or a null DataSpace.

+

This overload enables creating scalar or null data spaces, both have dimension 0.

+
Parameters
+ + +
space_typeThe value from the enum
+
+
+
+
@ dataspace_scalar
Value to create scalar DataSpace.
Definition H5DataSpace.hpp:49
+
Attention
Avoid braced intialization in these cases, i.e.
// This is not a scalar dataset:
+ +
+
Since
1.3
+ +
+
+ +

◆ DataSpace() [8/8]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::DataSpace::DataSpace ()
+
+protecteddefault
+
+ +
+
+

Member Function Documentation

+ +

◆ clone()

+ +
+
+ + + + + +
+ + + + + + + +
DataSpace HighFive::DataSpace::clone () const
+
+inline
+
+ +

Create a copy of the DataSpace which will have different id.

+
DataSpace dspace1(1, 3);
+
auto dspace2 = dspace.clone();
+
Since
1.0
+ +
+
+ +

◆ From()

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
DataSpace HighFive::DataSpace::From (const T & value)
+
+inlinestatic
+
+ +

Automatically deduce the DataSpace from a container/value.

+

Certain containers and scalar values are fully supported by HighFive. For these containers, HighFive can deduce the dimensions from value.

+
double d = 42.0;
+
std::vector<std::vector<int>> v = {{4, 5, 6}, {7, 8, 9}};
+
DataSpace::From(v); // A DataSpace of dimensions 2, 3.
+
DataSpace::From(d); // A scalar dataspace.
+
static DataSpace From(const T &value)
Automatically deduce the DataSpace from a container/value.
Definition H5Dataspace_misc.hpp:136
+
Since
1.0
+ +
+
+ +

◆ FromCharArrayStrings()

+ +
+
+
+template<std::size_t N, std::size_t Width>
+ + + + + +
+ + + + + + + + +
DataSpace HighFive::DataSpace::FromCharArrayStrings (const char(&) string_array[N][Width])
+
+inlinestatic
+
+ +

Create a DataSpace from a value of type string array.

+
Parameters
+ + +
string_arrayAn C-array of C-string (null-terminated).
+
+
+
char string_array[2][10] = {"123456789", "abcdefghi"};
+
auto dspace = DataSpace::FromCharArrayStrings(string_array); // dspace is a DataSpace of
+
dimensions 2
+
static DataSpace FromCharArrayStrings(const char(&string_array)[N][Width])
Create a DataSpace from a value of type string array.
Definition H5Dataspace_misc.hpp:142
+
Since
2.2
+ +
+
+ +

◆ getDimensions()

+ +
+
+ + + + + +
+ + + + + + + +
std::vector< size_t > HighFive::DataSpace::getDimensions () const
+
+inline
+
+ +

Returns the size of the dataset in each dimension.

+

For zero-dimensional datasets (e.g. scalar or null datasets) an empty vector is returned.

+
DataSpace dspace(1, 3);
+
auto dims = dspace.getDimensions(); // returns {1, 3}
+
See also
DataSpace::getMaxDimensions
+
Since
1.0
+ +
+
+ +

◆ getElementCount()

+ +
+
+ + + + + +
+ + + + + + + +
size_t HighFive::DataSpace::getElementCount () const
+
+inline
+
+ +

Return the number of elements in this DataSpace.

+
DataSpace dspace(1, 3);
+
size_t elementcount = dspace.getElementCount(); // return 1 x 3 = 3
+
Since
2.1
+ +
+
+ +

◆ getMaxDimensions()

+ +
+
+ + + + + +
+ + + + + + + +
std::vector< size_t > HighFive::DataSpace::getMaxDimensions () const
+
+inline
+
+ +

Returns the maximum size of the dataset in each dimension.

+

This is the maximum size a dataset can be extended to, which may be different from the current size of the dataset.

+
DataSpace dspace(std::vector<size_t>{1, 3}, std::vector<size_t>{UNLIMITED, 10});
+
dspace.getMaxDimensions(); // Return {UNLIMITED, 10}
+
std::vector< size_t > getMaxDimensions() const
Returns the maximum size of the dataset in each dimension.
Definition H5Dataspace_misc.hpp:122
+
static const size_t UNLIMITED
Magic value to specify that a DataSpace can grow without limit.
Definition H5DataSpace.hpp:41
+
See also
DataSpace::getDimensions
+
Since
2.0
+ +
+
+ +

◆ getNumberDimensions()

+ +
+
+ + + + + +
+ + + + + + + +
size_t HighFive::DataSpace::getNumberDimensions () const
+
+inline
+
+ +

Returns the number of dimensions of a DataSpace.

+
DataSpace dspace(1, 3);
+
size_t number_of_dim = dspace.getNumberDimensions(); // returns 2
+
Since
1.0
+ +
+
+

Friends And Related Symbol Documentation

+ +

◆ Attribute

+ +
+
+ + + + + +
+ + + + +
friend class Attribute
+
+friend
+
+ +
+
+ +

◆ DataSet

+ +
+
+ + + + + +
+ + + + +
friend class DataSet
+
+friend
+
+ +
+
+ +

◆ File

+ +
+
+ + + + + +
+ + + + +
friend class File
+
+friend
+
+ +
+
+

Member Data Documentation

+ +

◆ type

+ +
+
+ + + + + +
+ + + + +
const ObjectType HighFive::DataSpace::type = ObjectType::DataSpace
+
+static
+
+ +
+
+ +

◆ UNLIMITED

+ +
+
+ + + + + +
+ + + + +
const size_t HighFive::DataSpace::UNLIMITED = SIZE_MAX
+
+static
+
+ +

Magic value to specify that a DataSpace can grow without limit.

+

This value should be used with DataSpace::DataSpace(const std::vector<size_t>& dims, const +std::vector<size_t>& maxdims);

+
Since
2.0
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_data_space.js b/class_high_five_1_1_data_space.js new file mode 100644 index 000000000..a3a394433 --- /dev/null +++ b/class_high_five_1_1_data_space.js @@ -0,0 +1,23 @@ +var class_high_five_1_1_data_space = +[ + [ "DataspaceType", "class_high_five_1_1_data_space.html#a7169f30770f2b72b4d28841da2d6c153", [ + [ "dataspace_scalar", "class_high_five_1_1_data_space.html#a7169f30770f2b72b4d28841da2d6c153a49388b6d4ad7831a6589af61d6e60409", null ], + [ "dataspace_null", "class_high_five_1_1_data_space.html#a7169f30770f2b72b4d28841da2d6c153ac1a4c13c2bac8e1679bf850e76ad6092", null ] + ] ], + [ "DataSpace", "class_high_five_1_1_data_space.html#a40b1526be36b7ebb536122f9c413feef", null ], + [ "DataSpace", "class_high_five_1_1_data_space.html#a978628751ce6f7ecf92961fa44e2a821", null ], + [ "DataSpace", "class_high_five_1_1_data_space.html#a6558726da6bff24df406751a4429e10b", null ], + [ "DataSpace", "class_high_five_1_1_data_space.html#a2771c3df1c0578278bfbd0e2263e7abf", null ], + [ "DataSpace", "class_high_five_1_1_data_space.html#a5d48bf7863b08eed90d4357ac476b4a1", null ], + [ "DataSpace", "class_high_five_1_1_data_space.html#a435085d2b1d06d54966c13d0d84a6e77", null ], + [ "DataSpace", "class_high_five_1_1_data_space.html#ab9230eeb6124dee3fbbc49c725e988ee", null ], + [ "DataSpace", "class_high_five_1_1_data_space.html#aaf4d7229b87d8175eaf0ab2314e9675a", null ], + [ "clone", "class_high_five_1_1_data_space.html#a902be8659c05c859158631230b78f3f4", null ], + [ "getDimensions", "class_high_five_1_1_data_space.html#a8c0f85ba275d1d61c332b164070493c8", null ], + [ "getElementCount", "class_high_five_1_1_data_space.html#a8b0fb67e77eed8e4b36b67bb352ec07b", null ], + [ "getMaxDimensions", "class_high_five_1_1_data_space.html#a6563a285d1078bdff32e6662835e7a7b", null ], + [ "getNumberDimensions", "class_high_five_1_1_data_space.html#a53c27afc9308d2c44fa6d0e09f1ede9a", null ], + [ "Attribute", "class_high_five_1_1_data_space.html#abd4bab8f7ee748d7ea63f7f9b6248611", null ], + [ "DataSet", "class_high_five_1_1_data_space.html#aef648af6c56fa8ee0738c93629e725dc", null ], + [ "File", "class_high_five_1_1_data_space.html#a68d15876ad188b7628261b12d0eac8aa", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_data_space__coll__graph.map b/class_high_five_1_1_data_space__coll__graph.map new file mode 100644 index 000000000..7ed5fcb06 --- /dev/null +++ b/class_high_five_1_1_data_space__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_data_space__coll__graph.md5 b/class_high_five_1_1_data_space__coll__graph.md5 new file mode 100644 index 000000000..1733ed251 --- /dev/null +++ b/class_high_five_1_1_data_space__coll__graph.md5 @@ -0,0 +1 @@ +1c62c2577c3cfaf46c95dc2bd4302bd8 \ No newline at end of file diff --git a/class_high_five_1_1_data_space__coll__graph.png b/class_high_five_1_1_data_space__coll__graph.png new file mode 100644 index 000000000..37ef4b620 Binary files /dev/null and b/class_high_five_1_1_data_space__coll__graph.png differ diff --git a/class_high_five_1_1_data_space__inherit__graph.map b/class_high_five_1_1_data_space__inherit__graph.map new file mode 100644 index 000000000..7ed5fcb06 --- /dev/null +++ b/class_high_five_1_1_data_space__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_data_space__inherit__graph.md5 b/class_high_five_1_1_data_space__inherit__graph.md5 new file mode 100644 index 000000000..1733ed251 --- /dev/null +++ b/class_high_five_1_1_data_space__inherit__graph.md5 @@ -0,0 +1 @@ +1c62c2577c3cfaf46c95dc2bd4302bd8 \ No newline at end of file diff --git a/class_high_five_1_1_data_space__inherit__graph.png b/class_high_five_1_1_data_space__inherit__graph.png new file mode 100644 index 000000000..37ef4b620 Binary files /dev/null and b/class_high_five_1_1_data_space__inherit__graph.png differ diff --git a/class_high_five_1_1_data_space_exception-members.html b/class_high_five_1_1_data_space_exception-members.html new file mode 100644 index 000000000..afd478321 --- /dev/null +++ b/class_high_five_1_1_data_space_exception-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::DataSpaceException Member List
+
+
+ +

This is the complete list of members for HighFive::DataSpaceException, including all inherited members.

+ + + + + + + + + + + + + +
_err_majorHighFive::Exceptionprotected
_err_minorHighFive::Exceptionprotected
_errmsgHighFive::Exceptionprotected
_nextHighFive::Exceptionprotected
DataSpaceException(const std::string &err_msg)HighFive::DataSpaceExceptioninline
Exception(const std::string &err_msg)HighFive::Exceptioninline
getErrMajor() constHighFive::Exceptioninline
getErrMinor() constHighFive::Exceptioninline
nextException() constHighFive::Exceptioninline
setErrorMsg(const std::string &errmsg)HighFive::Exceptioninlinevirtual
what() const overrideHighFive::Exceptioninline
~Exception()HighFive::Exceptioninlinevirtual
+
+ + + + diff --git a/class_high_five_1_1_data_space_exception.html b/class_high_five_1_1_data_space_exception.html new file mode 100644 index 000000000..a1e09327e --- /dev/null +++ b/class_high_five_1_1_data_space_exception.html @@ -0,0 +1,209 @@ + + + + + + + +HighFive: HighFive::DataSpaceException Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::DataSpaceException Class Reference
+
+
+ +

Exception specific to HighFive DataSpace interface. + More...

+ +

#include <H5Exception.hpp>

+
+Inheritance diagram for HighFive::DataSpaceException:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::DataSpaceException:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 DataSpaceException (const std::string &err_msg)
 
- Public Member Functions inherited from HighFive::Exception
 Exception (const std::string &err_msg)
 
virtual ~Exception () throw ()
 
const char * what () const override throw ()
 get the current exception error message
 
virtual void setErrorMsg (const std::string &errmsg)
 define the error message
 
ExceptionnextException () const
 nextException
 
hid_t getErrMajor () const
 HDF5 library error mapper.
 
hid_t getErrMinor () const
 HDF5 library error mapper.
 
+ + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Exception
std::string _errmsg
 
std::shared_ptr< Exception_next
 
hid_t _err_major
 
hid_t _err_minor
 
+

Detailed Description

+

Exception specific to HighFive DataSpace interface.

+

Constructor & Destructor Documentation

+ +

◆ DataSpaceException()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::DataSpaceException::DataSpaceException (const std::string & err_msg)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_data_space_exception.js b/class_high_five_1_1_data_space_exception.js new file mode 100644 index 000000000..d74a5710b --- /dev/null +++ b/class_high_five_1_1_data_space_exception.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_data_space_exception = +[ + [ "DataSpaceException", "class_high_five_1_1_data_space_exception.html#a6838cd3e42fc092ed25594f8e4e98093", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_data_space_exception__coll__graph.map b/class_high_five_1_1_data_space_exception__coll__graph.map new file mode 100644 index 000000000..09eacc7f7 --- /dev/null +++ b/class_high_five_1_1_data_space_exception__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_data_space_exception__coll__graph.md5 b/class_high_five_1_1_data_space_exception__coll__graph.md5 new file mode 100644 index 000000000..1c1883335 --- /dev/null +++ b/class_high_five_1_1_data_space_exception__coll__graph.md5 @@ -0,0 +1 @@ +992d0f85af780c8a39c84446e99631e2 \ No newline at end of file diff --git a/class_high_five_1_1_data_space_exception__coll__graph.png b/class_high_five_1_1_data_space_exception__coll__graph.png new file mode 100644 index 000000000..6fa49270c Binary files /dev/null and b/class_high_five_1_1_data_space_exception__coll__graph.png differ diff --git a/class_high_five_1_1_data_space_exception__inherit__graph.map b/class_high_five_1_1_data_space_exception__inherit__graph.map new file mode 100644 index 000000000..09eacc7f7 --- /dev/null +++ b/class_high_five_1_1_data_space_exception__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_data_space_exception__inherit__graph.md5 b/class_high_five_1_1_data_space_exception__inherit__graph.md5 new file mode 100644 index 000000000..1c1883335 --- /dev/null +++ b/class_high_five_1_1_data_space_exception__inherit__graph.md5 @@ -0,0 +1 @@ +992d0f85af780c8a39c84446e99631e2 \ No newline at end of file diff --git a/class_high_five_1_1_data_space_exception__inherit__graph.png b/class_high_five_1_1_data_space_exception__inherit__graph.png new file mode 100644 index 000000000..6fa49270c Binary files /dev/null and b/class_high_five_1_1_data_space_exception__inherit__graph.png differ diff --git a/class_high_five_1_1_data_type-members.html b/class_high_five_1_1_data_type-members.html new file mode 100644 index 000000000..8981a9ae4 --- /dev/null +++ b/class_high_five_1_1_data_type-members.html @@ -0,0 +1,137 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::DataType Member List
+
+
+ +

This is the complete list of members for HighFive::DataType, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
asStringType() constHighFive::DataTypeinline
AttributeHighFive::DataTypefriend
CompoundTypeHighFive::DataTypefriend
DataSetHighFive::DataTypefriend
empty() const noexceptHighFive::DataTypeinline
FileHighFive::DataTypefriend
getClass() constHighFive::DataTypeinline
getCreatePropertyList() constHighFive::DataTypeinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getSize() constHighFive::DataTypeinline
getType() constHighFive::Objectinline
isFixedLenStr() constHighFive::DataTypeinline
isReference() constHighFive::DataTypeinline
isValid() const noexceptHighFive::Objectinline
isVariableStr() constHighFive::DataTypeinline
NodeTraitsHighFive::DataTypefriend
Object(Object &&other) noexceptHighFive::DataTypeinlineprotected
Object()HighFive::DataTypeinlineprotected
Object(const Object &other)HighFive::DataTypeinlineprotected
Object(hid_t)HighFive::DataTypeinlineexplicitprotected
operator!=(const DataType &other) constHighFive::DataTypeinline
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const DataType &other) constHighFive::DataTypeinline
HighFive::Object::operator==(const Object &other) const noexceptHighFive::Objectinline
string() constHighFive::DataTypeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_data_type.html b/class_high_five_1_1_data_type.html new file mode 100644 index 000000000..5c00fa665 --- /dev/null +++ b/class_high_five_1_1_data_type.html @@ -0,0 +1,768 @@ + + + + + + + +HighFive: HighFive::DataType Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::DataType Class Reference
+
+
+ +

HDF5 Data Type. + More...

+ +

#include <H5DataType.hpp>

+
+Inheritance diagram for HighFive::DataType:
+
+
Inheritance graph
+ + + + + + + + + + + + + + + + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::DataType:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

bool operator== (const DataType &other) const
 
bool operator!= (const DataType &other) const
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
StringType asStringType () const
 Returns this datatype as a StringType.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
DataTypeCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this DataType.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + +

+Protected Member Functions

 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
+ + + + + + + + + + + + +

+Friends

class Attribute
 
class File
 
class DataSet
 
class CompoundType
 
template<typename Derivate >
class NodeTraits
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+

HDF5 Data Type.

+

Member Function Documentation

+ +

◆ asStringType()

+ +
+
+ + + + + +
+ + + + + + + +
StringType HighFive::DataType::asStringType () const
+
+inline
+
+ +

Returns this datatype as a StringType.

+ +
+
+ +

◆ empty()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::DataType::empty () const
+
+inlinenoexcept
+
+ +

Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.

+ +
+
+ +

◆ getClass()

+ +
+
+ + + + + +
+ + + + + + + +
DataTypeClass HighFive::DataType::getClass () const
+
+inline
+
+ +

Return the fundamental type.

+ +
+
+ +

◆ getCreatePropertyList()

+ +
+
+ + + + + +
+ + + + + + + +
DataTypeCreateProps HighFive::DataType::getCreatePropertyList () const
+
+inline
+
+ +

Get the list of properties for creation of this DataType.

+ +
+
+ +

◆ getSize()

+ +
+
+ + + + + +
+ + + + + + + +
size_t HighFive::DataType::getSize () const
+
+inline
+
+ +

Returns the length (in bytes) of this type elements.

+

Notice that the size of variable length sequences may have limited applicability given that it refers to the size of the control structure. For info see https://support.hdfgroup.org/HDF5/doc/RM/RM_H5T.html#Datatype-GetSize

+ +
+
+ +

◆ isFixedLenStr()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::DataType::isFixedLenStr () const
+
+inline
+
+ +

Returns whether the type is a fixed-length string.

+ +
+
+ +

◆ isReference()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::DataType::isReference () const
+
+inline
+
+ +

Returns whether the type is a Reference.

+ +
+
+ +

◆ isVariableStr()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::DataType::isVariableStr () const
+
+inline
+
+ +

Returns whether the type is a variable-length string.

+ +
+
+ +

◆ Object() [1/4]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Object::Object ()
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (const Objectother)
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (hid_t hid)
+
+inlineexplicitprotected
+
+ +
+
+ +

◆ Object() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (Object && other)
+
+inlineprotectednoexcept
+
+ +
+
+ +

◆ operator!=()

+ +
+
+ + + + + +
+ + + + + + + + +
bool HighFive::DataType::operator!= (const DataTypeother) const
+
+inline
+
+ +
+
+ +

◆ operator==()

+ +
+
+ + + + + +
+ + + + + + + + +
bool HighFive::DataType::operator== (const DataTypeother) const
+
+inline
+
+ +
+
+ +

◆ string()

+ +
+
+ + + + + +
+ + + + + + + +
std::string HighFive::DataType::string () const
+
+inline
+
+ +

Returns a friendly description of the type (e.g. Float32)

+ +
+
+

Friends And Related Symbol Documentation

+ +

◆ Attribute

+ +
+
+ + + + + +
+ + + + +
friend class Attribute
+
+friend
+
+ +
+
+ +

◆ CompoundType

+ +
+
+ + + + + +
+ + + + +
friend class CompoundType
+
+friend
+
+ +
+
+ +

◆ DataSet

+ +
+
+ + + + + +
+ + + + +
friend class DataSet
+
+friend
+
+ +
+
+ +

◆ File

+ +
+
+ + + + + +
+ + + + +
friend class File
+
+friend
+
+ +
+
+ +

◆ NodeTraits

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + +
friend class NodeTraits
+
+friend
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_data_type.js b/class_high_five_1_1_data_type.js new file mode 100644 index 000000000..8076764dc --- /dev/null +++ b/class_high_five_1_1_data_type.js @@ -0,0 +1,23 @@ +var class_high_five_1_1_data_type = +[ + [ "asStringType", "class_high_five_1_1_data_type.html#ab959e9cd8ccd474542bf220627ec7844", null ], + [ "empty", "class_high_five_1_1_data_type.html#a546aceb9cdbc45d5e471811b8e9cdce8", null ], + [ "getClass", "class_high_five_1_1_data_type.html#a98e6e07ff15a8e1b73673bc51a1a1339", null ], + [ "getCreatePropertyList", "class_high_five_1_1_data_type.html#a1a1b47fdec00d9814dd861fa51420c9e", null ], + [ "getSize", "class_high_five_1_1_data_type.html#a2658ec3c1c3c77dadeb0b1b053d3a7d3", null ], + [ "isFixedLenStr", "class_high_five_1_1_data_type.html#a0d74bf84217ed4b71818d53db9077d5f", null ], + [ "isReference", "class_high_five_1_1_data_type.html#a9c9656462b3b4442fd0a8ba7fb0ce93f", null ], + [ "isVariableStr", "class_high_five_1_1_data_type.html#a3f239e86eb8235d0cad445421f97af7c", null ], + [ "Object", "class_high_five_1_1_data_type.html#a6bae41d04f273d04d2914406ab79da32", null ], + [ "Object", "class_high_five_1_1_data_type.html#ab87ee7d5e2beee6a50d60dec20d3dfe5", null ], + [ "Object", "class_high_five_1_1_data_type.html#a9fe361bc0bd9662c1fd96a4a6ec1133a", null ], + [ "Object", "class_high_five_1_1_data_type.html#aa42052fa5ec4ee691f6a7dd6467199f2", null ], + [ "operator!=", "class_high_five_1_1_data_type.html#aba3b0bec1739ee7482a9d6f3c7464769", null ], + [ "operator==", "class_high_five_1_1_data_type.html#a00fa13324f13dc81bf52b385fc9d852b", null ], + [ "string", "class_high_five_1_1_data_type.html#a957ea4848ba76cab82d7b4cff7210c87", null ], + [ "Attribute", "class_high_five_1_1_data_type.html#abd4bab8f7ee748d7ea63f7f9b6248611", null ], + [ "CompoundType", "class_high_five_1_1_data_type.html#a9531936c7f60cc4739426e6a25f23e7e", null ], + [ "DataSet", "class_high_five_1_1_data_type.html#aef648af6c56fa8ee0738c93629e725dc", null ], + [ "File", "class_high_five_1_1_data_type.html#a68d15876ad188b7628261b12d0eac8aa", null ], + [ "NodeTraits", "class_high_five_1_1_data_type.html#a403d48867d005e936868de31b2281ae8", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_data_type__coll__graph.map b/class_high_five_1_1_data_type__coll__graph.map new file mode 100644 index 000000000..5522ac13a --- /dev/null +++ b/class_high_five_1_1_data_type__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_data_type__coll__graph.md5 b/class_high_five_1_1_data_type__coll__graph.md5 new file mode 100644 index 000000000..88c2c9322 --- /dev/null +++ b/class_high_five_1_1_data_type__coll__graph.md5 @@ -0,0 +1 @@ +20262502c8a65df813f352c2f5713418 \ No newline at end of file diff --git a/class_high_five_1_1_data_type__coll__graph.png b/class_high_five_1_1_data_type__coll__graph.png new file mode 100644 index 000000000..7a55829c5 Binary files /dev/null and b/class_high_five_1_1_data_type__coll__graph.png differ diff --git a/class_high_five_1_1_data_type__inherit__graph.map b/class_high_five_1_1_data_type__inherit__graph.map new file mode 100644 index 000000000..60618a081 --- /dev/null +++ b/class_high_five_1_1_data_type__inherit__graph.map @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/class_high_five_1_1_data_type__inherit__graph.md5 b/class_high_five_1_1_data_type__inherit__graph.md5 new file mode 100644 index 000000000..3c5d8c813 --- /dev/null +++ b/class_high_five_1_1_data_type__inherit__graph.md5 @@ -0,0 +1 @@ +fc8d3a4f6bfc12c5c34afbfa64be7a22 \ No newline at end of file diff --git a/class_high_five_1_1_data_type__inherit__graph.png b/class_high_five_1_1_data_type__inherit__graph.png new file mode 100644 index 000000000..5ba02b55a Binary files /dev/null and b/class_high_five_1_1_data_type__inherit__graph.png differ diff --git a/class_high_five_1_1_data_type_exception-members.html b/class_high_five_1_1_data_type_exception-members.html new file mode 100644 index 000000000..ce684f915 --- /dev/null +++ b/class_high_five_1_1_data_type_exception-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::DataTypeException Member List
+
+
+ +

This is the complete list of members for HighFive::DataTypeException, including all inherited members.

+ + + + + + + + + + + + + +
_err_majorHighFive::Exceptionprotected
_err_minorHighFive::Exceptionprotected
_errmsgHighFive::Exceptionprotected
_nextHighFive::Exceptionprotected
DataTypeException(const std::string &err_msg)HighFive::DataTypeExceptioninline
Exception(const std::string &err_msg)HighFive::Exceptioninline
getErrMajor() constHighFive::Exceptioninline
getErrMinor() constHighFive::Exceptioninline
nextException() constHighFive::Exceptioninline
setErrorMsg(const std::string &errmsg)HighFive::Exceptioninlinevirtual
what() const overrideHighFive::Exceptioninline
~Exception()HighFive::Exceptioninlinevirtual
+
+ + + + diff --git a/class_high_five_1_1_data_type_exception.html b/class_high_five_1_1_data_type_exception.html new file mode 100644 index 000000000..f8d86b3e0 --- /dev/null +++ b/class_high_five_1_1_data_type_exception.html @@ -0,0 +1,209 @@ + + + + + + + +HighFive: HighFive::DataTypeException Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::DataTypeException Class Reference
+
+
+ +

Exception specific to HighFive DataType interface. + More...

+ +

#include <H5Exception.hpp>

+
+Inheritance diagram for HighFive::DataTypeException:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::DataTypeException:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 DataTypeException (const std::string &err_msg)
 
- Public Member Functions inherited from HighFive::Exception
 Exception (const std::string &err_msg)
 
virtual ~Exception () throw ()
 
const char * what () const override throw ()
 get the current exception error message
 
virtual void setErrorMsg (const std::string &errmsg)
 define the error message
 
ExceptionnextException () const
 nextException
 
hid_t getErrMajor () const
 HDF5 library error mapper.
 
hid_t getErrMinor () const
 HDF5 library error mapper.
 
+ + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Exception
std::string _errmsg
 
std::shared_ptr< Exception_next
 
hid_t _err_major
 
hid_t _err_minor
 
+

Detailed Description

+

Exception specific to HighFive DataType interface.

+

Constructor & Destructor Documentation

+ +

◆ DataTypeException()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::DataTypeException::DataTypeException (const std::string & err_msg)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_data_type_exception.js b/class_high_five_1_1_data_type_exception.js new file mode 100644 index 000000000..af058f290 --- /dev/null +++ b/class_high_five_1_1_data_type_exception.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_data_type_exception = +[ + [ "DataTypeException", "class_high_five_1_1_data_type_exception.html#abfbd23381af62882f92fa1308f21948a", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_data_type_exception__coll__graph.map b/class_high_five_1_1_data_type_exception__coll__graph.map new file mode 100644 index 000000000..8b178c8b1 --- /dev/null +++ b/class_high_five_1_1_data_type_exception__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_data_type_exception__coll__graph.md5 b/class_high_five_1_1_data_type_exception__coll__graph.md5 new file mode 100644 index 000000000..d6fa13d42 --- /dev/null +++ b/class_high_five_1_1_data_type_exception__coll__graph.md5 @@ -0,0 +1 @@ +db1817243a93e93319d55c303be714ec \ No newline at end of file diff --git a/class_high_five_1_1_data_type_exception__coll__graph.png b/class_high_five_1_1_data_type_exception__coll__graph.png new file mode 100644 index 000000000..51e8bbac2 Binary files /dev/null and b/class_high_five_1_1_data_type_exception__coll__graph.png differ diff --git a/class_high_five_1_1_data_type_exception__inherit__graph.map b/class_high_five_1_1_data_type_exception__inherit__graph.map new file mode 100644 index 000000000..8b178c8b1 --- /dev/null +++ b/class_high_five_1_1_data_type_exception__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_data_type_exception__inherit__graph.md5 b/class_high_five_1_1_data_type_exception__inherit__graph.md5 new file mode 100644 index 000000000..d6fa13d42 --- /dev/null +++ b/class_high_five_1_1_data_type_exception__inherit__graph.md5 @@ -0,0 +1 @@ +db1817243a93e93319d55c303be714ec \ No newline at end of file diff --git a/class_high_five_1_1_data_type_exception__inherit__graph.png b/class_high_five_1_1_data_type_exception__inherit__graph.png new file mode 100644 index 000000000..51e8bbac2 Binary files /dev/null and b/class_high_five_1_1_data_type_exception__inherit__graph.png differ diff --git a/class_high_five_1_1_deflate-members.html b/class_high_five_1_1_deflate-members.html new file mode 100644 index 000000000..241734389 --- /dev/null +++ b/class_high_five_1_1_deflate-members.html @@ -0,0 +1,110 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Deflate Member List
+
+
+ +

This is the complete list of members for HighFive::Deflate, including all inherited members.

+ + +
Deflate(unsigned level)HighFive::Deflateinlineexplicit
+
+ + + + diff --git a/class_high_five_1_1_deflate.html b/class_high_five_1_1_deflate.html new file mode 100644 index 000000000..59d6282e0 --- /dev/null +++ b/class_high_five_1_1_deflate.html @@ -0,0 +1,169 @@ + + + + + + + +HighFive: HighFive::Deflate Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Deflate Class Reference
+
+
+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::Deflate:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::Deflate:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + +

+Public Member Functions

 Deflate (unsigned level)
 
+

Constructor & Destructor Documentation

+ +

◆ Deflate()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Deflate::Deflate (unsigned level)
+
+inlineexplicit
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_deflate.js b/class_high_five_1_1_deflate.js new file mode 100644 index 000000000..edf72b59b --- /dev/null +++ b/class_high_five_1_1_deflate.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_deflate = +[ + [ "Deflate", "class_high_five_1_1_deflate.html#aec7e6cfb91ee39beb916c0a96921fd6b", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_deflate__coll__graph.map b/class_high_five_1_1_deflate__coll__graph.map new file mode 100644 index 000000000..8e317d43e --- /dev/null +++ b/class_high_five_1_1_deflate__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_deflate__coll__graph.md5 b/class_high_five_1_1_deflate__coll__graph.md5 new file mode 100644 index 000000000..5a2dc60d6 --- /dev/null +++ b/class_high_five_1_1_deflate__coll__graph.md5 @@ -0,0 +1 @@ +07574d42af807c0a4a5f87b3c26d19db \ No newline at end of file diff --git a/class_high_five_1_1_deflate__coll__graph.png b/class_high_five_1_1_deflate__coll__graph.png new file mode 100644 index 000000000..0eddaecc0 Binary files /dev/null and b/class_high_five_1_1_deflate__coll__graph.png differ diff --git a/class_high_five_1_1_deflate__inherit__graph.map b/class_high_five_1_1_deflate__inherit__graph.map new file mode 100644 index 000000000..8e317d43e --- /dev/null +++ b/class_high_five_1_1_deflate__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_deflate__inherit__graph.md5 b/class_high_five_1_1_deflate__inherit__graph.md5 new file mode 100644 index 000000000..5a2dc60d6 --- /dev/null +++ b/class_high_five_1_1_deflate__inherit__graph.md5 @@ -0,0 +1 @@ +07574d42af807c0a4a5f87b3c26d19db \ No newline at end of file diff --git a/class_high_five_1_1_deflate__inherit__graph.png b/class_high_five_1_1_deflate__inherit__graph.png new file mode 100644 index 000000000..0eddaecc0 Binary files /dev/null and b/class_high_five_1_1_deflate__inherit__graph.png differ diff --git a/class_high_five_1_1_element_set-members.html b/class_high_five_1_1_element_set-members.html new file mode 100644 index 000000000..50f53ae2b --- /dev/null +++ b/class_high_five_1_1_element_set-members.html @@ -0,0 +1,114 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::ElementSet Member List
+
+
+ +

This is the complete list of members for HighFive::ElementSet, including all inherited members.

+ + + + + + +
ElementSet(std::initializer_list< std::size_t > list)HighFive::ElementSetinlineexplicit
ElementSet(std::initializer_list< std::vector< std::size_t > > list)HighFive::ElementSetinlineexplicit
ElementSet(const std::vector< std::size_t > &element_ids)HighFive::ElementSetinlineexplicit
ElementSet(const std::vector< std::vector< std::size_t > > &element_ids)HighFive::ElementSetinlineexplicit
SliceTraitsHighFive::ElementSetfriend
+
+ + + + diff --git a/class_high_five_1_1_element_set.html b/class_high_five_1_1_element_set.html new file mode 100644 index 000000000..81b99d701 --- /dev/null +++ b/class_high_five_1_1_element_set.html @@ -0,0 +1,301 @@ + + + + + + + +HighFive: HighFive::ElementSet Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::ElementSet Class Reference
+
+
+ +

#include <H5Slice_traits.hpp>

+ + + + + + + + + + + + + + +

+Public Member Functions

 ElementSet (std::initializer_list< std::size_t > list)
 Create a list of points of N-dimension for selection.
 
 ElementSet (std::initializer_list< std::vector< std::size_t > > list)
 Create a list of points of N-dimension for selection.
 
 ElementSet (const std::vector< std::size_t > &element_ids)
 Create a list of points of N-dimension for selection.
 
 ElementSet (const std::vector< std::vector< std::size_t > > &element_ids)
 Create a list of points of N-dimension for selection.
 
+ + + + +

+Friends

template<typename Derivate >
class SliceTraits
 
+

Constructor & Destructor Documentation

+ +

◆ ElementSet() [1/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::ElementSet::ElementSet (std::initializer_list< std::size_t > list)
+
+inlineexplicit
+
+ +

Create a list of points of N-dimension for selection.

+
Parameters
+ + +
listList of continuous coordinates (e.g.: in 2 dimensions space ElementSet{1, 2, 3 ,4} creates points (1, 2) and (3, 4)).
+
+
+ +
+
+ +

◆ ElementSet() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::ElementSet::ElementSet (std::initializer_list< std::vector< std::size_t > > list)
+
+inlineexplicit
+
+ +

Create a list of points of N-dimension for selection.

+
Parameters
+ + +
listList of N-dim points.
+
+
+ +
+
+ +

◆ ElementSet() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::ElementSet::ElementSet (const std::vector< std::size_t > & element_ids)
+
+inlineexplicit
+
+ +

Create a list of points of N-dimension for selection.

+
Parameters
+ + +
element_idsList of continuous coordinates (e.g.: in 2 dimensions space ElementSet{1, 2, 3 ,4} creates points (1, 2) and (3, 4)).
+
+
+ +
+
+ +

◆ ElementSet() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::ElementSet::ElementSet (const std::vector< std::vector< std::size_t > > & element_ids)
+
+inlineexplicit
+
+ +

Create a list of points of N-dimension for selection.

+
Parameters
+ + +
element_idsList of N-dim points.
+
+
+ +
+
+

Friends And Related Symbol Documentation

+ +

◆ SliceTraits

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + +
friend class SliceTraits
+
+friend
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_element_set.js b/class_high_five_1_1_element_set.js new file mode 100644 index 000000000..651b19890 --- /dev/null +++ b/class_high_five_1_1_element_set.js @@ -0,0 +1,8 @@ +var class_high_five_1_1_element_set = +[ + [ "ElementSet", "class_high_five_1_1_element_set.html#a1479938205bd9d66267a58a11651b04f", null ], + [ "ElementSet", "class_high_five_1_1_element_set.html#a294be4e23eff7d07faa08e128d4b0afc", null ], + [ "ElementSet", "class_high_five_1_1_element_set.html#aedd3703eec6465101d2eef43ddbb5788", null ], + [ "ElementSet", "class_high_five_1_1_element_set.html#afc31e0be89f28aea060d8482ea525996", null ], + [ "SliceTraits", "class_high_five_1_1_element_set.html#addb06cbd22277a5199483352358a5e4f", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_enum_type-members.html b/class_high_five_1_1_enum_type-members.html new file mode 100644 index 000000000..52c7453d8 --- /dev/null +++ b/class_high_five_1_1_enum_type-members.html @@ -0,0 +1,136 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::EnumType< T > Member List
+
+
+ +

This is the complete list of members for HighFive::EnumType< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
asStringType() constHighFive::DataTypeinline
commit(const Object &object, const std::string &name) constHighFive::EnumType< T >inline
empty() const noexceptHighFive::DataTypeinline
EnumType(const EnumType &other)=defaultHighFive::EnumType< T >
EnumType(const std::vector< member_def > &t_members)HighFive::EnumType< T >inline
EnumType(std::initializer_list< member_def > t_members)HighFive::EnumType< T >inline
getClass() constHighFive::DataTypeinline
getCreatePropertyList() constHighFive::DataTypeinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getSize() constHighFive::DataTypeinline
getType() constHighFive::Objectinline
isFixedLenStr() constHighFive::DataTypeinline
isReference() constHighFive::DataTypeinline
isValid() const noexceptHighFive::Objectinline
isVariableStr() constHighFive::DataTypeinline
Object(Object &&other) noexceptHighFive::DataTypeinlineprotected
Object()HighFive::DataTypeinlineprotected
Object(const Object &other)HighFive::DataTypeinlineprotected
Object(hid_t)HighFive::DataTypeinlineexplicitprotected
operator!=(const DataType &other) constHighFive::DataTypeinline
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const DataType &other) constHighFive::DataTypeinline
HighFive::Object::operator==(const Object &other) const noexceptHighFive::Objectinline
string() constHighFive::DataTypeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_enum_type.html b/class_high_five_1_1_enum_type.html new file mode 100644 index 000000000..96158334b --- /dev/null +++ b/class_high_five_1_1_enum_type.html @@ -0,0 +1,392 @@ + + + + + + + +HighFive: HighFive::EnumType< T > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::EnumType< T > Class Template Reference
+
+
+ +

Create a enum HDF5 datatype. + More...

+ +

#include <H5DataType.hpp>

+
+Inheritance diagram for HighFive::EnumType< T >:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::EnumType< T >:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + +

+Classes

struct  member_def
 Use for defining a member of enum type. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 EnumType (const EnumType &other)=default
 
 EnumType (const std::vector< member_def > &t_members)
 
 EnumType (std::initializer_list< member_def > t_members)
 
void commit (const Object &object, const std::string &name) const
 Commit datatype into the given Object.
 
- Public Member Functions inherited from HighFive::DataType
bool operator== (const DataType &other) const
 
bool operator!= (const DataType &other) const
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
StringType asStringType () const
 Returns this datatype as a StringType.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
DataTypeCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this DataType.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from HighFive::DataType
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+
template<typename T>
+class HighFive::EnumType< T >

Create a enum HDF5 datatype.

+
enum class Position {
+
FIRST = 1,
+
SECOND = 2,
+
};
+
+
EnumType<Position> create_enum_position() {
+
return {{"FIRST", Position::FIRST},
+
{"SECOND", Position::SECOND}};
+
}
+
+
// You have to register the type inside HighFive
+
HIGHFIVE_REGISTER_TYPE(Position, create_enum_position)
+
+
void write_first(H5::File& file) {
+
auto dataset = file.createDataSet("/foo", Position::FIRST);
+
}
+
#define HIGHFIVE_REGISTER_TYPE(type, function)
Macro to extend datatype of HighFive.
Definition H5DataType.hpp:482
+
Create a enum HDF5 datatype.
Definition H5DataType.hpp:299
+

Constructor & Destructor Documentation

+ +

◆ EnumType() [1/3]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
HighFive::EnumType< T >::EnumType (const EnumType< T > & other)
+
+default
+
+ +
+
+ +

◆ EnumType() [2/3]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
HighFive::EnumType< T >::EnumType (const std::vector< member_def > & t_members)
+
+inline
+
+ +
+
+ +

◆ EnumType() [3/3]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
HighFive::EnumType< T >::EnumType (std::initializer_list< member_deft_members)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ commit()

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void HighFive::EnumType< T >::commit (const Objectobject,
const std::string & name 
) const
+
+inline
+
+ +

Commit datatype into the given Object.

+
Parameters
+ + + +
objectLocation to commit object into
nameName to give the datatype
+
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_enum_type.js b/class_high_five_1_1_enum_type.js new file mode 100644 index 000000000..df02b414b --- /dev/null +++ b/class_high_five_1_1_enum_type.js @@ -0,0 +1,8 @@ +var class_high_five_1_1_enum_type = +[ + [ "member_def", "struct_high_five_1_1_enum_type_1_1member__def.html", "struct_high_five_1_1_enum_type_1_1member__def" ], + [ "EnumType", "class_high_five_1_1_enum_type.html#a7d2b0c5fd6d77ea600687d6536b8ecdb", null ], + [ "EnumType", "class_high_five_1_1_enum_type.html#aa1c30f28b5387421406e184c5f77b854", null ], + [ "EnumType", "class_high_five_1_1_enum_type.html#a36c34fffd466b4a2c0c4f3bdf9f6a1a3", null ], + [ "commit", "class_high_five_1_1_enum_type.html#a989ae33cd573624dcbdcaf0d5bed5eea", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_enum_type__coll__graph.map b/class_high_five_1_1_enum_type__coll__graph.map new file mode 100644 index 000000000..ec8ecab19 --- /dev/null +++ b/class_high_five_1_1_enum_type__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_enum_type__coll__graph.md5 b/class_high_five_1_1_enum_type__coll__graph.md5 new file mode 100644 index 000000000..fced74641 --- /dev/null +++ b/class_high_five_1_1_enum_type__coll__graph.md5 @@ -0,0 +1 @@ +c4367927d5190fa23ba4977137319dc2 \ No newline at end of file diff --git a/class_high_five_1_1_enum_type__coll__graph.png b/class_high_five_1_1_enum_type__coll__graph.png new file mode 100644 index 000000000..aefda93e2 Binary files /dev/null and b/class_high_five_1_1_enum_type__coll__graph.png differ diff --git a/class_high_five_1_1_enum_type__inherit__graph.map b/class_high_five_1_1_enum_type__inherit__graph.map new file mode 100644 index 000000000..ec8ecab19 --- /dev/null +++ b/class_high_five_1_1_enum_type__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_enum_type__inherit__graph.md5 b/class_high_five_1_1_enum_type__inherit__graph.md5 new file mode 100644 index 000000000..fced74641 --- /dev/null +++ b/class_high_five_1_1_enum_type__inherit__graph.md5 @@ -0,0 +1 @@ +c4367927d5190fa23ba4977137319dc2 \ No newline at end of file diff --git a/class_high_five_1_1_enum_type__inherit__graph.png b/class_high_five_1_1_enum_type__inherit__graph.png new file mode 100644 index 000000000..aefda93e2 Binary files /dev/null and b/class_high_five_1_1_enum_type__inherit__graph.png differ diff --git a/class_high_five_1_1_estimated_link_info-members.html b/class_high_five_1_1_estimated_link_info-members.html new file mode 100644 index 000000000..4ddd1fbb4 --- /dev/null +++ b/class_high_five_1_1_estimated_link_info-members.html @@ -0,0 +1,113 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::EstimatedLinkInfo Member List
+
+
+ +

This is the complete list of members for HighFive::EstimatedLinkInfo, including all inherited members.

+ + + + + +
EstimatedLinkInfo(unsigned entries, unsigned length)HighFive::EstimatedLinkInfoinlineexplicit
EstimatedLinkInfo(const GroupCreateProps &gcpl)HighFive::EstimatedLinkInfoinlineexplicit
getEntries() constHighFive::EstimatedLinkInfoinline
getNameLength() constHighFive::EstimatedLinkInfoinline
+
+ + + + diff --git a/class_high_five_1_1_estimated_link_info.html b/class_high_five_1_1_estimated_link_info.html new file mode 100644 index 000000000..f7799d588 --- /dev/null +++ b/class_high_five_1_1_estimated_link_info.html @@ -0,0 +1,283 @@ + + + + + + + +HighFive: HighFive::EstimatedLinkInfo Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::EstimatedLinkInfo Class Reference
+
+
+ +

Set hints as to how many links to expect and their average length. + More...

+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::EstimatedLinkInfo:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::EstimatedLinkInfo:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + + + + +

+Public Member Functions

 EstimatedLinkInfo (unsigned entries, unsigned length)
 Create a property with the request parameters.
 
 EstimatedLinkInfo (const GroupCreateProps &gcpl)
 
unsigned getEntries () const
 The estimated number of links in a group.
 
unsigned getNameLength () const
 The estimated length of the names of links.
 
+

Detailed Description

+

Set hints as to how many links to expect and their average length.

+

Constructor & Destructor Documentation

+ +

◆ EstimatedLinkInfo() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::EstimatedLinkInfo::EstimatedLinkInfo (unsigned entries,
unsigned length 
)
+
+inlineexplicit
+
+ +

Create a property with the request parameters.

+
Parameters
+ + + +
entriesThe estimated number of links in a group.
lengthThe estimated length of the names of links.
+
+
+ +
+
+ +

◆ EstimatedLinkInfo() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::EstimatedLinkInfo::EstimatedLinkInfo (const GroupCreatePropsgcpl)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ getEntries()

+ +
+
+ + + + + +
+ + + + + + + +
unsigned HighFive::EstimatedLinkInfo::getEntries () const
+
+inline
+
+ +

The estimated number of links in a group.

+ +
+
+ +

◆ getNameLength()

+ +
+
+ + + + + +
+ + + + + + + +
unsigned HighFive::EstimatedLinkInfo::getNameLength () const
+
+inline
+
+ +

The estimated length of the names of links.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_estimated_link_info.js b/class_high_five_1_1_estimated_link_info.js new file mode 100644 index 000000000..d2d490095 --- /dev/null +++ b/class_high_five_1_1_estimated_link_info.js @@ -0,0 +1,7 @@ +var class_high_five_1_1_estimated_link_info = +[ + [ "EstimatedLinkInfo", "class_high_five_1_1_estimated_link_info.html#a3c311eb0f98aaa4dc1c7a26fab57a43d", null ], + [ "EstimatedLinkInfo", "class_high_five_1_1_estimated_link_info.html#ae8d47670a7adee47bf69d0fc1a53ebf2", null ], + [ "getEntries", "class_high_five_1_1_estimated_link_info.html#a15fe39d3abcec1d56eae67246ed88848", null ], + [ "getNameLength", "class_high_five_1_1_estimated_link_info.html#ab41597c8411f3a4023d82ebd1323a5f7", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_estimated_link_info__coll__graph.map b/class_high_five_1_1_estimated_link_info__coll__graph.map new file mode 100644 index 000000000..232af7123 --- /dev/null +++ b/class_high_five_1_1_estimated_link_info__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_estimated_link_info__coll__graph.md5 b/class_high_five_1_1_estimated_link_info__coll__graph.md5 new file mode 100644 index 000000000..599216d90 --- /dev/null +++ b/class_high_five_1_1_estimated_link_info__coll__graph.md5 @@ -0,0 +1 @@ +09a5c605c30319d9b033ab63a7aa0fcd \ No newline at end of file diff --git a/class_high_five_1_1_estimated_link_info__coll__graph.png b/class_high_five_1_1_estimated_link_info__coll__graph.png new file mode 100644 index 000000000..0e6d7a20b Binary files /dev/null and b/class_high_five_1_1_estimated_link_info__coll__graph.png differ diff --git a/class_high_five_1_1_estimated_link_info__inherit__graph.map b/class_high_five_1_1_estimated_link_info__inherit__graph.map new file mode 100644 index 000000000..232af7123 --- /dev/null +++ b/class_high_five_1_1_estimated_link_info__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_estimated_link_info__inherit__graph.md5 b/class_high_five_1_1_estimated_link_info__inherit__graph.md5 new file mode 100644 index 000000000..599216d90 --- /dev/null +++ b/class_high_five_1_1_estimated_link_info__inherit__graph.md5 @@ -0,0 +1 @@ +09a5c605c30319d9b033ab63a7aa0fcd \ No newline at end of file diff --git a/class_high_five_1_1_estimated_link_info__inherit__graph.png b/class_high_five_1_1_estimated_link_info__inherit__graph.png new file mode 100644 index 000000000..0e6d7a20b Binary files /dev/null and b/class_high_five_1_1_estimated_link_info__inherit__graph.png differ diff --git a/class_high_five_1_1_exception-members.html b/class_high_five_1_1_exception-members.html new file mode 100644 index 000000000..6e0109875 --- /dev/null +++ b/class_high_five_1_1_exception-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Exception Member List
+
+
+ +

This is the complete list of members for HighFive::Exception, including all inherited members.

+ + + + + + + + + + + + + +
_err_majorHighFive::Exceptionprotected
_err_minorHighFive::Exceptionprotected
_errmsgHighFive::Exceptionprotected
_nextHighFive::Exceptionprotected
Exception(const std::string &err_msg)HighFive::Exceptioninline
getErrMajor() constHighFive::Exceptioninline
getErrMinor() constHighFive::Exceptioninline
HDF5ErrMapperHighFive::Exceptionfriend
nextException() constHighFive::Exceptioninline
setErrorMsg(const std::string &errmsg)HighFive::Exceptioninlinevirtual
what() const overrideHighFive::Exceptioninline
~Exception()HighFive::Exceptioninlinevirtual
+
+ + + + diff --git a/class_high_five_1_1_exception.html b/class_high_five_1_1_exception.html new file mode 100644 index 000000000..727b17ed9 --- /dev/null +++ b/class_high_five_1_1_exception.html @@ -0,0 +1,522 @@ + + + + + + + +HighFive: HighFive::Exception Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Exception Class Reference
+
+
+ +

Basic HighFive Exception class. + More...

+ +

#include <H5Exception.hpp>

+
+Inheritance diagram for HighFive::Exception:
+
+
Inheritance graph
+ + + + + + + + + + + + + + + + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::Exception:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Exception (const std::string &err_msg)
 
virtual ~Exception () throw ()
 
const char * what () const override throw ()
 get the current exception error message
 
virtual void setErrorMsg (const std::string &errmsg)
 define the error message
 
ExceptionnextException () const
 nextException
 
hid_t getErrMajor () const
 HDF5 library error mapper.
 
hid_t getErrMinor () const
 HDF5 library error mapper.
 
+ + + + + + + + + +

+Protected Attributes

std::string _errmsg
 
std::shared_ptr< Exception_next
 
hid_t _err_major
 
hid_t _err_minor
 
+ + + +

+Friends

struct HDF5ErrMapper
 
+

Detailed Description

+

Basic HighFive Exception class.

+

Constructor & Destructor Documentation

+ +

◆ Exception()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Exception::Exception (const std::string & err_msg)
+
+inline
+
+ +
+
+ +

◆ ~Exception()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + +
virtual HighFive::Exception::~Exception ()
throw (
)
+
+inlinevirtual
+
+ +
+
+

Member Function Documentation

+ +

◆ getErrMajor()

+ +
+
+ + + + + +
+ + + + + + + +
hid_t HighFive::Exception::getErrMajor () const
+
+inline
+
+ +

HDF5 library error mapper.

+
Returns
HDF5 major error number
+ +
+
+ +

◆ getErrMinor()

+ +
+
+ + + + + +
+ + + + + + + +
hid_t HighFive::Exception::getErrMinor () const
+
+inline
+
+ +

HDF5 library error mapper.

+
Returns
HDF5 minor error number
+ +
+
+ +

◆ nextException()

+ +
+
+ + + + + +
+ + + + + + + +
Exception * HighFive::Exception::nextException () const
+
+inline
+
+ +

nextException

+
Returns
pointer to the next exception in the chain, or NULL if not existing
+ +
+
+ +

◆ setErrorMsg()

+ +
+
+ + + + + +
+ + + + + + + + +
virtual void HighFive::Exception::setErrorMsg (const std::string & errmsg)
+
+inlinevirtual
+
+ +

define the error message

+
Parameters
+ + +
errmsg
+
+
+ +
+
+ +

◆ what()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + +
const char * HighFive::Exception::what () const
throw (
)
+
+inlineoverride
+
+ +

get the current exception error message

+
Returns
+ +
+
+

Friends And Related Symbol Documentation

+ +

◆ HDF5ErrMapper

+ +
+
+ + + + + +
+ + + + +
friend struct HDF5ErrMapper
+
+friend
+
+ +
+
+

Member Data Documentation

+ +

◆ _err_major

+ +
+
+ + + + + +
+ + + + +
hid_t HighFive::Exception::_err_major
+
+protected
+
+ +
+
+ +

◆ _err_minor

+ +
+
+ + + + + +
+ + + + +
hid_t HighFive::Exception::_err_minor
+
+protected
+
+ +
+
+ +

◆ _errmsg

+ +
+
+ + + + + +
+ + + + +
std::string HighFive::Exception::_errmsg
+
+protected
+
+ +
+
+ +

◆ _next

+ +
+
+ + + + + +
+ + + + +
std::shared_ptr<Exception> HighFive::Exception::_next
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_exception.js b/class_high_five_1_1_exception.js new file mode 100644 index 000000000..d5b901eeb --- /dev/null +++ b/class_high_five_1_1_exception.js @@ -0,0 +1,15 @@ +var class_high_five_1_1_exception = +[ + [ "Exception", "class_high_five_1_1_exception.html#adbde3ec927a2402f5f1f23e50f02c155", null ], + [ "~Exception", "class_high_five_1_1_exception.html#a5b14aa4572f3e72eff27529413442f29", null ], + [ "getErrMajor", "class_high_five_1_1_exception.html#a9f29fccb5cbf3b5cb698cf7de68ba56c", null ], + [ "getErrMinor", "class_high_five_1_1_exception.html#ad19349814671c76249834ff802695145", null ], + [ "nextException", "class_high_five_1_1_exception.html#a32badf84ecfcceb0eb6d54f6a33d0989", null ], + [ "setErrorMsg", "class_high_five_1_1_exception.html#a7c9b65fc87cf1abfed6d24309c74f0cf", null ], + [ "what", "class_high_five_1_1_exception.html#ac68d010bb13e90124360fa0f7c0e6f53", null ], + [ "HDF5ErrMapper", "class_high_five_1_1_exception.html#a1f3f174381f90e2f63dc4dbd5eb62e52", null ], + [ "_err_major", "class_high_five_1_1_exception.html#a835aebf45a86bbd81bf59b5975d69608", null ], + [ "_err_minor", "class_high_five_1_1_exception.html#ad62a656089c5e551f258138b48a1eb6c", null ], + [ "_errmsg", "class_high_five_1_1_exception.html#aa2d52ba9b9f7ca9157d46569b13e8462", null ], + [ "_next", "class_high_five_1_1_exception.html#a45f55e73e6d6e5ba8187ba15c799d829", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_exception__coll__graph.map b/class_high_five_1_1_exception__coll__graph.map new file mode 100644 index 000000000..c17afe6f2 --- /dev/null +++ b/class_high_five_1_1_exception__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_exception__coll__graph.md5 b/class_high_five_1_1_exception__coll__graph.md5 new file mode 100644 index 000000000..44381c0d3 --- /dev/null +++ b/class_high_five_1_1_exception__coll__graph.md5 @@ -0,0 +1 @@ +77582fc9a922a2a789abe6c352796b88 \ No newline at end of file diff --git a/class_high_five_1_1_exception__coll__graph.png b/class_high_five_1_1_exception__coll__graph.png new file mode 100644 index 000000000..8d805e8bc Binary files /dev/null and b/class_high_five_1_1_exception__coll__graph.png differ diff --git a/class_high_five_1_1_exception__inherit__graph.map b/class_high_five_1_1_exception__inherit__graph.map new file mode 100644 index 000000000..4a5f5708a --- /dev/null +++ b/class_high_five_1_1_exception__inherit__graph.map @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/class_high_five_1_1_exception__inherit__graph.md5 b/class_high_five_1_1_exception__inherit__graph.md5 new file mode 100644 index 000000000..ff275b533 --- /dev/null +++ b/class_high_five_1_1_exception__inherit__graph.md5 @@ -0,0 +1 @@ +92ee366c6db9f50b60d2c9f1e1524ec2 \ No newline at end of file diff --git a/class_high_five_1_1_exception__inherit__graph.png b/class_high_five_1_1_exception__inherit__graph.png new file mode 100644 index 000000000..6eb1fa54b Binary files /dev/null and b/class_high_five_1_1_exception__inherit__graph.png differ diff --git a/class_high_five_1_1_file-members.html b/class_high_five_1_1_file-members.html new file mode 100644 index 000000000..05f58f193 --- /dev/null +++ b/class_high_five_1_1_file-members.html @@ -0,0 +1,173 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::File Member List
+
+
+ +

This is the complete list of members for HighFive::File, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
Create enum valueHighFive::File
createAttribute(const std::string &attribute_name, const DataSpace &space, const DataType &type)HighFive::AnnotateTraits< File >inline
createAttribute(const std::string &attribute_name, const DataSpace &space)HighFive::AnnotateTraits< File >inline
createAttribute(const std::string &attribute_name, const T &data)HighFive::AnnotateTraits< File >inline
createDataSet(const std::string &dataset_name, const DataSpace &space, const DataType &type, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< File >inline
createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< File >inline
createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< File >
createDataSet(const std::string &dataset_name, const T &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< File >inline
createDataSet(const std::string &dataset_name, const FixedLenStringArray< N > &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< File >inline
createExternalLink(const std::string &link_name, const std::string &h5_file, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)HighFive::NodeTraits< File >inline
createGroup(const std::string &group_name, bool parents=true)HighFive::NodeTraits< File >inline
createGroup(const std::string &group_name, const GroupCreateProps &createProps, bool parents=true)HighFive::NodeTraits< File >inline
createHardLink(const std::string &link_name, const T &target_obj, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)HighFive::NodeTraits< File >inline
createSoftLink(const std::string &linkName, const T &obj)HighFive::NodeTraits< File >inline
createSoftLink(const std::string &link_name, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)HighFive::NodeTraits< File >inline
Debug enum valueHighFive::File
deleteAttribute(const std::string &attribute_name)HighFive::AnnotateTraits< File >inline
Excl enum valueHighFive::File
exist(const std::string &node_name) constHighFive::NodeTraits< File >inline
File(const std::string &filename, unsigned openFlags=ReadOnly, const FileAccessProps &fileAccessProps=FileAccessProps::Default())HighFive::Fileinlineexplicit
File(const std::string &filename, unsigned openFlags, const FileCreateProps &fileCreateProps, const FileAccessProps &fileAccessProps=FileAccessProps::Default())HighFive::Fileinline
File()=defaultHighFive::Fileprotected
flush()HighFive::Fileinline
getAccessPropertyList() constHighFive::Fileinline
getAttribute(const std::string &attribute_name) constHighFive::AnnotateTraits< File >inline
getCreatePropertyList() constHighFive::Fileinline
getDataSet(const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps::Default()) constHighFive::NodeTraits< File >inline
getDataType(const std::string &type_name, const DataTypeAccessProps &accessProps=DataTypeAccessProps::Default()) constHighFive::NodeTraits< File >inline
getFileSize() constHighFive::Fileinline
getFreeSpace() constHighFive::Fileinline
getGroup(const std::string &group_name) constHighFive::NodeTraits< File >inline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getLinkType(const std::string &node_name) constHighFive::NodeTraits< File >inline
getMetadataBlockSize() constHighFive::Fileinline
getName() const noexceptHighFive::Fileinline
getNumberAttributes() constHighFive::AnnotateTraits< File >inline
getNumberObjects() constHighFive::NodeTraits< File >inline
getObjectName(size_t index) constHighFive::NodeTraits< File >inline
getObjectType(const std::string &node_name) constHighFive::NodeTraits< File >inline
getPath() const noexceptHighFive::Fileinline
getType() constHighFive::Objectinline
getVersionBounds() constHighFive::Fileinline
hasAttribute(const std::string &attr_name) constHighFive::AnnotateTraits< File >inline
isValid() const noexceptHighFive::Objectinline
listAttributeNames() constHighFive::AnnotateTraits< File >inline
listObjectNames(IndexType idx_type=IndexType::NAME) constHighFive::NodeTraits< File >inline
Object(Object &&other) noexceptHighFive::Fileinlineprotected
Object()HighFive::Fileinlineprotected
Object(const Object &other)HighFive::Fileinlineprotected
Object(hid_t)HighFive::Fileinlineexplicitprotected
OpenOrCreate enum valueHighFive::File
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
Overwrite enum valueHighFive::File
PathTraitsHighFive::Filefriend
ReadOnly enum valueHighFive::File
ReadWrite enum valueHighFive::File
rename(const std::string &src_path, const std::string &dest_path, bool parents=true) constHighFive::NodeTraits< File >inline
Truncate enum valueHighFive::File
typeHighFive::Filestatic
unlink(const std::string &node_name) constHighFive::NodeTraits< File >inline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_file.html b/class_high_five_1_1_file.html new file mode 100644 index 000000000..389a9e5be --- /dev/null +++ b/class_high_five_1_1_file.html @@ -0,0 +1,922 @@ + + + + + + + +HighFive: HighFive::File Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::File Class Reference
+
+
+ +

File class. + More...

+ +

#include <H5File.hpp>

+
+Inheritance diagram for HighFive::File:
+
+
Inheritance graph
+ + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::File:
+
+
Collaboration graph
+ + + + + + + + + +
[legend]
+ + + + +

+Public Types

enum  : unsigned {
+  ReadOnly = 0x00u +, ReadWrite = 0x01u +, Truncate = 0x02u +, Excl = 0x04u +,
+  Debug = 0x08u +, Create = 0x10u +, Overwrite = Truncate +, OpenOrCreate = ReadWrite | Create +
+ }
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 File (const std::string &filename, unsigned openFlags=ReadOnly, const FileAccessProps &fileAccessProps=FileAccessProps::Default())
 File.
 
 File (const std::string &filename, unsigned openFlags, const FileCreateProps &fileCreateProps, const FileAccessProps &fileAccessProps=FileAccessProps::Default())
 File.
 
const std::string & getName () const noexcept
 Return the name of the file.
 
std::string getPath () const noexcept
 Object path of a File is always "/".
 
hsize_t getMetadataBlockSize () const
 Returns the block size for metadata in bytes.
 
std::pair< H5F_libver_t, H5F_libver_t > getVersionBounds () const
 Returns the HDF5 version compatibility bounds.
 
void flush ()
 flush
 
FileCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this file.
 
FileAccessProps getAccessPropertyList () const
 Get the list of properties for accession of this file.
 
size_t getFileSize () const
 Get the size of this file in bytes.
 
size_t getFreeSpace () const
 Get the amount of tracked, unused space in bytes.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
- Public Member Functions inherited from HighFive::NodeTraits< File >
DataSet createDataSet (const std::string &dataset_name, const DataSpace &space, const DataType &type, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 createDataSet Create a new dataset in the current file of datatype type and of size space
 
DataSet createDataSet (const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 createDataSet create a new dataset in the current file with a size specified by space
 
DataSet createDataSet (const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 
DataSet createDataSet (const std::string &dataset_name, const T &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 createDataSet create a new dataset in the current file and write to it, inferring the DataSpace from the data.
 
DataSet createDataSet (const std::string &dataset_name, const FixedLenStringArray< N > &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 
DataSet getDataSet (const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps::Default()) const
 get an existing dataset in the current file
 
Group createGroup (const std::string &group_name, bool parents=true)
 create a new group, and eventually intermediate groups
 
Group createGroup (const std::string &group_name, const GroupCreateProps &createProps, bool parents=true)
 create a new group, and eventually intermediate groups
 
Group getGroup (const std::string &group_name) const
 open an existing group with the name group_name
 
DataType getDataType (const std::string &type_name, const DataTypeAccessProps &accessProps=DataTypeAccessProps::Default()) const
 open a commited datatype with the name type_name
 
size_t getNumberObjects () const
 return the number of leaf objects of the node / group
 
std::string getObjectName (size_t index) const
 return the name of the object with the given index
 
bool rename (const std::string &src_path, const std::string &dest_path, bool parents=true) const
 moves an object and its content within an HDF5 file.
 
std::vector< std::string > listObjectNames (IndexType idx_type=IndexType::NAME) const
 list all leaf objects name of the node / group
 
bool exist (const std::string &node_name) const
 check a dataset or group exists in the current node / group
 
void unlink (const std::string &node_name) const
 unlink the given dataset or group
 
LinkType getLinkType (const std::string &node_name) const
 Returns the kind of link of the given name (soft, hard...)
 
ObjectType getObjectType (const std::string &node_name) const
 A shorthand to get the kind of object pointed to (group, dataset, type...)
 
void createSoftLink (const std::string &linkName, const T &obj)
 A shorthand to create softlink to any object which provides getPath The link will be created with default properties along with required parent groups.
 
void createSoftLink (const std::string &link_name, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
 Creates softlinks.
 
void createExternalLink (const std::string &link_name, const std::string &h5_file, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
 
void createHardLink (const std::string &link_name, const T &target_obj, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
 Creates hardlinks.
 
- Public Member Functions inherited from HighFive::AnnotateTraits< File >
Attribute createAttribute (const std::string &attribute_name, const DataSpace &space, const DataType &type)
 create a new attribute with the name attribute_name
 
Attribute createAttribute (const std::string &attribute_name, const DataSpace &space)
 createAttribute create a new attribute on the current dataset with size specified by space
 
Attribute createAttribute (const std::string &attribute_name, const T &data)
 createAttribute create a new attribute on the current dataset and write to it, inferring the DataSpace from data.
 
void deleteAttribute (const std::string &attribute_name)
 deleteAttribute let you delete an attribute by its name.
 
Attribute getAttribute (const std::string &attribute_name) const
 open an existing attribute with the name attribute_name
 
size_t getNumberAttributes () const
 return the number of attributes of the node / group
 
std::vector< std::string > listAttributeNames () const
 list all attribute name of the node / group
 
bool hasAttribute (const std::string &attr_name) const
 checks an attribute exists
 
+ + + +

+Static Public Attributes

static const ObjectType type = ObjectType::File
 
+ + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

 File ()=default
 
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
+ + + + +

+Friends

template<typename >
class PathTraits
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+

File class.

+

Member Enumeration Documentation

+ +

◆ anonymous enum

+ +
+
+ + + + +
anonymous enum : unsigned
+
+ + + + + + + + + +
Enumerator
ReadOnly 

Open flag: Read only access.

+
ReadWrite 

Open flag: Read Write access.

+
Truncate 

Open flag: Truncate a file if already existing.

+
Excl 

Open flag: Open will fail if file already exist.

+
Debug 

Open flag: Open in debug mode.

+
Create 

Open flag: Create non existing file.

+
Overwrite 

Derived open flag: common write mode (=ReadWrite|Create|Truncate)

+
OpenOrCreate 

Derived open flag: Opens RW or exclusively creates.

+
+ +
+
+

Constructor & Destructor Documentation

+ +

◆ File() [1/3]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
HighFive::File::File (const std::string & filename,
unsigned openFlags = ReadOnly,
const FileAccessPropsfileAccessProps = FileAccessProps::Default() 
)
+
+inlineexplicit
+
+ +

File.

+
Parameters
+ + + + +
filenamefilepath of the HDF5 file
openFlagsOpen mode / flags ( ReadOnly, ReadWrite)
fileAccessPropsthe file access properties
+
+
+

Open or create a new HDF5 file

+ +
+
+ +

◆ File() [2/3]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
HighFive::File::File (const std::string & filename,
unsigned openFlags,
const FileCreatePropsfileCreateProps,
const FileAccessPropsfileAccessProps = FileAccessProps::Default() 
)
+
+inline
+
+ +

File.

+
Parameters
+ + + + + +
filenamefilepath of the HDF5 file
openFlagsOpen mode / flags ( ReadOnly, ReadWrite)
fileCreatePropsthe file create properties
fileAccessPropsthe file access properties
+
+
+

Open or create a new HDF5 file

+ +
+
+ +

◆ File() [3/3]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::File::File ()
+
+protecteddefault
+
+ +
+
+

Member Function Documentation

+ +

◆ flush()

+ +
+
+ + + + + +
+ + + + + + + +
void HighFive::File::flush ()
+
+inline
+
+ +

flush

+

Flushes all buffers associated with a file to disk

+ +
+
+ +

◆ getAccessPropertyList()

+ +
+
+ + + + + +
+ + + + + + + +
FileAccessProps HighFive::File::getAccessPropertyList () const
+
+inline
+
+ +

Get the list of properties for accession of this file.

+ +
+
+ +

◆ getCreatePropertyList()

+ +
+
+ + + + + +
+ + + + + + + +
FileCreateProps HighFive::File::getCreatePropertyList () const
+
+inline
+
+ +

Get the list of properties for creation of this file.

+ +
+
+ +

◆ getFileSize()

+ +
+
+ + + + + +
+ + + + + + + +
size_t HighFive::File::getFileSize () const
+
+inline
+
+ +

Get the size of this file in bytes.

+ +
+
+ +

◆ getFreeSpace()

+ +
+
+ + + + + +
+ + + + + + + +
size_t HighFive::File::getFreeSpace () const
+
+inline
+
+ +

Get the amount of tracked, unused space in bytes.

+

Note, this is a wrapper for H5Fget_freespace and returns the number bytes in the free space manager. This might be different from the total amount of unused space in the HDF5 file, since the free space manager might not track everything or not track across open-close cycles.

+ +
+
+ +

◆ getMetadataBlockSize()

+ +
+
+ + + + + +
+ + + + + + + +
hsize_t HighFive::File::getMetadataBlockSize () const
+
+inline
+
+ +

Returns the block size for metadata in bytes.

+ +
+
+ +

◆ getName()

+ +
+
+ + + + + +
+ + + + + + + +
const std::string & HighFive::File::getName () const
+
+inlinenoexcept
+
+ +

Return the name of the file.

+ +
+
+ +

◆ getPath()

+ +
+
+ + + + + +
+ + + + + + + +
std::string HighFive::File::getPath () const
+
+inlinenoexcept
+
+ +

Object path of a File is always "/".

+ +
+
+ +

◆ getVersionBounds()

+ +
+
+ + + + + +
+ + + + + + + +
std::pair< H5F_libver_t, H5F_libver_t > HighFive::File::getVersionBounds () const
+
+inline
+
+ +

Returns the HDF5 version compatibility bounds.

+ +
+
+ +

◆ Object() [1/4]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Object::Object ()
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (const Objectother)
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (hid_t hid)
+
+inlineexplicitprotected
+
+ +
+
+ +

◆ Object() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (Object && other)
+
+inlineprotectednoexcept
+
+ +
+
+

Friends And Related Symbol Documentation

+ +

◆ PathTraits

+ +
+
+
+template<typename >
+ + + + + +
+ + + + +
friend class PathTraits
+
+friend
+
+ +
+
+

Member Data Documentation

+ +

◆ type

+ +
+
+ + + + + +
+ + + + +
const ObjectType HighFive::File::type = ObjectType::File
+
+static
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_file.js b/class_high_five_1_1_file.js new file mode 100644 index 000000000..279992b2a --- /dev/null +++ b/class_high_five_1_1_file.js @@ -0,0 +1,20 @@ +var class_high_five_1_1_file = +[ + [ "File", "class_high_five_1_1_file.html#a28ecd0313429c95671fe4baa6be076df", null ], + [ "File", "class_high_five_1_1_file.html#aae2430c3529c4896a207f6dbe64a943e", null ], + [ "File", "class_high_five_1_1_file.html#a8795099e29b71240c772e7c57d072a9d", null ], + [ "flush", "class_high_five_1_1_file.html#a1e607911df10307dd3cc75a0dd6c5158", null ], + [ "getAccessPropertyList", "class_high_five_1_1_file.html#a3a75e93bc3748614dff7e850d82ed495", null ], + [ "getCreatePropertyList", "class_high_five_1_1_file.html#a03938d3708dbafeaf6a83f982aee3909", null ], + [ "getFileSize", "class_high_five_1_1_file.html#a072b1759a2c8b033eea6d020a9ed1d08", null ], + [ "getFreeSpace", "class_high_five_1_1_file.html#a2cd2322084c2c60f5b07af3c3daf1c16", null ], + [ "getMetadataBlockSize", "class_high_five_1_1_file.html#a3e3772ae94caca4b2422b536a1cf2472", null ], + [ "getName", "class_high_five_1_1_file.html#af555f50958667264563b0cb17b8f902b", null ], + [ "getPath", "class_high_five_1_1_file.html#af141a4c6c9fe058b121646b2079f2c6b", null ], + [ "getVersionBounds", "class_high_five_1_1_file.html#a1c5b148c4e906bcde448b4eea1f66b91", null ], + [ "Object", "class_high_five_1_1_file.html#a6bae41d04f273d04d2914406ab79da32", null ], + [ "Object", "class_high_five_1_1_file.html#ab87ee7d5e2beee6a50d60dec20d3dfe5", null ], + [ "Object", "class_high_five_1_1_file.html#a9fe361bc0bd9662c1fd96a4a6ec1133a", null ], + [ "Object", "class_high_five_1_1_file.html#aa42052fa5ec4ee691f6a7dd6467199f2", null ], + [ "PathTraits", "class_high_five_1_1_file.html#a4fd65b8c85f680db6495b37b7a00594a", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_file__coll__graph.map b/class_high_five_1_1_file__coll__graph.map new file mode 100644 index 000000000..7028a6200 --- /dev/null +++ b/class_high_five_1_1_file__coll__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_file__coll__graph.md5 b/class_high_five_1_1_file__coll__graph.md5 new file mode 100644 index 000000000..5d7bd88fb --- /dev/null +++ b/class_high_five_1_1_file__coll__graph.md5 @@ -0,0 +1 @@ +3fc26af7e17634fe4f8e461ccb38c4b4 \ No newline at end of file diff --git a/class_high_five_1_1_file__coll__graph.png b/class_high_five_1_1_file__coll__graph.png new file mode 100644 index 000000000..826114554 Binary files /dev/null and b/class_high_five_1_1_file__coll__graph.png differ diff --git a/class_high_five_1_1_file__inherit__graph.map b/class_high_five_1_1_file__inherit__graph.map new file mode 100644 index 000000000..7028a6200 --- /dev/null +++ b/class_high_five_1_1_file__inherit__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_file__inherit__graph.md5 b/class_high_five_1_1_file__inherit__graph.md5 new file mode 100644 index 000000000..5d7bd88fb --- /dev/null +++ b/class_high_five_1_1_file__inherit__graph.md5 @@ -0,0 +1 @@ +3fc26af7e17634fe4f8e461ccb38c4b4 \ No newline at end of file diff --git a/class_high_five_1_1_file__inherit__graph.png b/class_high_five_1_1_file__inherit__graph.png new file mode 100644 index 000000000..826114554 Binary files /dev/null and b/class_high_five_1_1_file__inherit__graph.png differ diff --git a/class_high_five_1_1_file_driver-members.html b/class_high_five_1_1_file_driver-members.html new file mode 100644 index 000000000..1f220c8e1 --- /dev/null +++ b/class_high_five_1_1_file_driver-members.html @@ -0,0 +1,125 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::FileDriver Member List
+
+
+ +

This is the complete list of members for HighFive::FileDriver, including all inherited members.

+ + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
_initializeIfNeeded()HighFive::PropertyList< T >inlineprotected
add(const P &property)HighFive::PropertyList< T >inline
Default() noexceptHighFive::PropertyList< T >inlinestatic
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getType() const noexceptHighFive::PropertyList< T >inline
isValid() const noexceptHighFive::Objectinline
Object(Object &&other) noexceptHighFive::Objectinline
Object()HighFive::Objectinlineprotected
Object(const Object &other)HighFive::Objectinlineprotected
Object(hid_t)HighFive::Objectinlineexplicitprotected
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
PropertyListBase() noexceptHighFive::PropertyListBaseinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_file_driver.html b/class_high_five_1_1_file_driver.html new file mode 100644 index 000000000..ade303849 --- /dev/null +++ b/class_high_five_1_1_file_driver.html @@ -0,0 +1,203 @@ + + + + + + + +HighFive: HighFive::FileDriver Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::FileDriver Class Reference
+
+
+ +

file driver base concept + More...

+ +

#include <H5FileDriver.hpp>

+
+Inheritance diagram for HighFive::FileDriver:
+
+
Inheritance graph
+ + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::FileDriver:
+
+
Collaboration graph
+ + + + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Member Functions inherited from HighFive::PropertyList< T >
constexpr PropertyType getType () const noexcept
 return the type of this PropertyList
 
template<PropertyInterface P>
void add (const P &property)
 
- Public Member Functions inherited from HighFive::PropertyListBase
 PropertyListBase () noexcept
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
- Static Public Member Functions inherited from HighFive::PropertyList< T >
static const PropertyList< T > & Default () noexcept
 Return the Default property type object.
 
- Static Public Member Functions inherited from HighFive::PropertyListBase
static const PropertyListBaseDefault () noexcept
 
- Protected Member Functions inherited from HighFive::PropertyList< T >
void _initializeIfNeeded ()
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+

file driver base concept

+
Deprecated:
Use FileAccessProps directly
+

The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_file_driver__coll__graph.map b/class_high_five_1_1_file_driver__coll__graph.map new file mode 100644 index 000000000..1ea173fed --- /dev/null +++ b/class_high_five_1_1_file_driver__coll__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_file_driver__coll__graph.md5 b/class_high_five_1_1_file_driver__coll__graph.md5 new file mode 100644 index 000000000..f8475d1c5 --- /dev/null +++ b/class_high_five_1_1_file_driver__coll__graph.md5 @@ -0,0 +1 @@ +9d7e4303b58f2497553d1692a6ce5a10 \ No newline at end of file diff --git a/class_high_five_1_1_file_driver__coll__graph.png b/class_high_five_1_1_file_driver__coll__graph.png new file mode 100644 index 000000000..a82f1a155 Binary files /dev/null and b/class_high_five_1_1_file_driver__coll__graph.png differ diff --git a/class_high_five_1_1_file_driver__inherit__graph.map b/class_high_five_1_1_file_driver__inherit__graph.map new file mode 100644 index 000000000..1ea173fed --- /dev/null +++ b/class_high_five_1_1_file_driver__inherit__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_file_driver__inherit__graph.md5 b/class_high_five_1_1_file_driver__inherit__graph.md5 new file mode 100644 index 000000000..f8475d1c5 --- /dev/null +++ b/class_high_five_1_1_file_driver__inherit__graph.md5 @@ -0,0 +1 @@ +9d7e4303b58f2497553d1692a6ce5a10 \ No newline at end of file diff --git a/class_high_five_1_1_file_driver__inherit__graph.png b/class_high_five_1_1_file_driver__inherit__graph.png new file mode 100644 index 000000000..a82f1a155 Binary files /dev/null and b/class_high_five_1_1_file_driver__inherit__graph.png differ diff --git a/class_high_five_1_1_file_exception-members.html b/class_high_five_1_1_file_exception-members.html new file mode 100644 index 000000000..c1214650b --- /dev/null +++ b/class_high_five_1_1_file_exception-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::FileException Member List
+
+
+ +

This is the complete list of members for HighFive::FileException, including all inherited members.

+ + + + + + + + + + + + + +
_err_majorHighFive::Exceptionprotected
_err_minorHighFive::Exceptionprotected
_errmsgHighFive::Exceptionprotected
_nextHighFive::Exceptionprotected
Exception(const std::string &err_msg)HighFive::Exceptioninline
FileException(const std::string &err_msg)HighFive::FileExceptioninline
getErrMajor() constHighFive::Exceptioninline
getErrMinor() constHighFive::Exceptioninline
nextException() constHighFive::Exceptioninline
setErrorMsg(const std::string &errmsg)HighFive::Exceptioninlinevirtual
what() const overrideHighFive::Exceptioninline
~Exception()HighFive::Exceptioninlinevirtual
+
+ + + + diff --git a/class_high_five_1_1_file_exception.html b/class_high_five_1_1_file_exception.html new file mode 100644 index 000000000..3737876fc --- /dev/null +++ b/class_high_five_1_1_file_exception.html @@ -0,0 +1,209 @@ + + + + + + + +HighFive: HighFive::FileException Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::FileException Class Reference
+
+
+ +

Exception specific to HighFive File interface. + More...

+ +

#include <H5Exception.hpp>

+
+Inheritance diagram for HighFive::FileException:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::FileException:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FileException (const std::string &err_msg)
 
- Public Member Functions inherited from HighFive::Exception
 Exception (const std::string &err_msg)
 
virtual ~Exception () throw ()
 
const char * what () const override throw ()
 get the current exception error message
 
virtual void setErrorMsg (const std::string &errmsg)
 define the error message
 
ExceptionnextException () const
 nextException
 
hid_t getErrMajor () const
 HDF5 library error mapper.
 
hid_t getErrMinor () const
 HDF5 library error mapper.
 
+ + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Exception
std::string _errmsg
 
std::shared_ptr< Exception_next
 
hid_t _err_major
 
hid_t _err_minor
 
+

Detailed Description

+

Exception specific to HighFive File interface.

+

Constructor & Destructor Documentation

+ +

◆ FileException()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::FileException::FileException (const std::string & err_msg)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_file_exception.js b/class_high_five_1_1_file_exception.js new file mode 100644 index 000000000..c437769b0 --- /dev/null +++ b/class_high_five_1_1_file_exception.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_file_exception = +[ + [ "FileException", "class_high_five_1_1_file_exception.html#a68c676392c9ea3f7e5e7ecc1149609ee", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_file_exception__coll__graph.map b/class_high_five_1_1_file_exception__coll__graph.map new file mode 100644 index 000000000..6e1f9725c --- /dev/null +++ b/class_high_five_1_1_file_exception__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_file_exception__coll__graph.md5 b/class_high_five_1_1_file_exception__coll__graph.md5 new file mode 100644 index 000000000..83e1c2e17 --- /dev/null +++ b/class_high_five_1_1_file_exception__coll__graph.md5 @@ -0,0 +1 @@ +a4307be3bc6cbdb2faa5b84862fb58e6 \ No newline at end of file diff --git a/class_high_five_1_1_file_exception__coll__graph.png b/class_high_five_1_1_file_exception__coll__graph.png new file mode 100644 index 000000000..801303bcc Binary files /dev/null and b/class_high_five_1_1_file_exception__coll__graph.png differ diff --git a/class_high_five_1_1_file_exception__inherit__graph.map b/class_high_five_1_1_file_exception__inherit__graph.map new file mode 100644 index 000000000..6e1f9725c --- /dev/null +++ b/class_high_five_1_1_file_exception__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_file_exception__inherit__graph.md5 b/class_high_five_1_1_file_exception__inherit__graph.md5 new file mode 100644 index 000000000..83e1c2e17 --- /dev/null +++ b/class_high_five_1_1_file_exception__inherit__graph.md5 @@ -0,0 +1 @@ +a4307be3bc6cbdb2faa5b84862fb58e6 \ No newline at end of file diff --git a/class_high_five_1_1_file_exception__inherit__graph.png b/class_high_five_1_1_file_exception__inherit__graph.png new file mode 100644 index 000000000..801303bcc Binary files /dev/null and b/class_high_five_1_1_file_exception__inherit__graph.png differ diff --git a/class_high_five_1_1_file_version_bounds-members.html b/class_high_five_1_1_file_version_bounds-members.html new file mode 100644 index 000000000..d75d5feef --- /dev/null +++ b/class_high_five_1_1_file_version_bounds-members.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::FileVersionBounds Member List
+
+
+ +

This is the complete list of members for HighFive::FileVersionBounds, including all inherited members.

+ + + + +
FileVersionBounds(H5F_libver_t low, H5F_libver_t high)HighFive::FileVersionBoundsinline
FileVersionBounds(const FileAccessProps &fapl)HighFive::FileVersionBoundsinlineexplicit
getVersion() constHighFive::FileVersionBoundsinline
+
+ + + + diff --git a/class_high_five_1_1_file_version_bounds.html b/class_high_five_1_1_file_version_bounds.html new file mode 100644 index 000000000..d2a84d0b1 --- /dev/null +++ b/class_high_five_1_1_file_version_bounds.html @@ -0,0 +1,229 @@ + + + + + + + +HighFive: HighFive::FileVersionBounds Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::FileVersionBounds Class Reference
+
+
+ +

Configure the version bounds for the file. + More...

+ +

#include <H5PropertyList.hpp>

+ + + + + + + + +

+Public Member Functions

 FileVersionBounds (H5F_libver_t low, H5F_libver_t high)
 
 FileVersionBounds (const FileAccessProps &fapl)
 
std::pair< H5F_libver_t, H5F_libver_t > getVersion () const
 
+

Detailed Description

+

Configure the version bounds for the file.

+

Used to define the compatibility of objects created within HDF5 files, and affects the format of groups stored in the file.

+

See also the documentation of H5P_SET_LIBVER_BOUNDS in HDF5.

+

Possible values for low and high are:

    +
  • H5F_LIBVER_EARLIEST
  • +
  • H5F_LIBVER_V18
  • +
  • H5F_LIBVER_V110
  • +
  • H5F_LIBVER_NBOUNDS
  • +
  • H5F_LIBVER_LATEST currently defined as H5F_LIBVER_V110 within HDF5
  • +
+

Constructor & Destructor Documentation

+ +

◆ FileVersionBounds() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::FileVersionBounds::FileVersionBounds (H5F_libver_t low,
H5F_libver_t high 
)
+
+inline
+
+ +
+
+ +

◆ FileVersionBounds() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::FileVersionBounds::FileVersionBounds (const FileAccessPropsfapl)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ getVersion()

+ +
+
+ + + + + +
+ + + + + + + +
std::pair< H5F_libver_t, H5F_libver_t > HighFive::FileVersionBounds::getVersion () const
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_file_version_bounds.js b/class_high_five_1_1_file_version_bounds.js new file mode 100644 index 000000000..2a8b9ac23 --- /dev/null +++ b/class_high_five_1_1_file_version_bounds.js @@ -0,0 +1,6 @@ +var class_high_five_1_1_file_version_bounds = +[ + [ "FileVersionBounds", "class_high_five_1_1_file_version_bounds.html#aff11691ee13ebbd765d9c1f18e379b4b", null ], + [ "FileVersionBounds", "class_high_five_1_1_file_version_bounds.html#a9517df3be7e25b4a6770165ffe07430d", null ], + [ "getVersion", "class_high_five_1_1_file_version_bounds.html#a6d55273a22fb8ecbba0079cc08ae9c79", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_fixed_len_string_array-members.html b/class_high_five_1_1_fixed_len_string_array-members.html new file mode 100644 index 000000000..4306f96bc --- /dev/null +++ b/class_high_five_1_1_fixed_len_string_array-members.html @@ -0,0 +1,141 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::FixedLenStringArray< N > Member List
+
+
+ +

This is the complete list of members for HighFive::FixedLenStringArray< N >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
at(std::size_t i) constHighFive::FixedLenStringArray< N >inline
back() constHighFive::FixedLenStringArray< N >inline
begin() noexceptHighFive::FixedLenStringArray< N >inline
begin() const noexceptHighFive::FixedLenStringArray< N >inline
cbegin() const noexceptHighFive::FixedLenStringArray< N >inline
cend() const noexceptHighFive::FixedLenStringArray< N >inline
const_iterator typedefHighFive::FixedLenStringArray< N >
const_reverse_iterator typedefHighFive::FixedLenStringArray< N >
data() noexceptHighFive::FixedLenStringArray< N >inline
data() const noexceptHighFive::FixedLenStringArray< N >inline
empty() const noexceptHighFive::FixedLenStringArray< N >inline
end() noexceptHighFive::FixedLenStringArray< N >inline
end() const noexceptHighFive::FixedLenStringArray< N >inline
FixedLenStringArray()=defaultHighFive::FixedLenStringArray< N >
FixedLenStringArray(const char array[][N], std::size_t n_strings)HighFive::FixedLenStringArray< N >inline
FixedLenStringArray(const std::vector< std::string > &vec)HighFive::FixedLenStringArray< N >inlineexplicit
FixedLenStringArray(const std::string *iter_begin, const std::string *iter_end)HighFive::FixedLenStringArray< N >inline
FixedLenStringArray(const std::initializer_list< std::string > &)HighFive::FixedLenStringArray< N >inline
front() constHighFive::FixedLenStringArray< N >inline
getString(std::size_t index) constHighFive::FixedLenStringArray< N >inline
iterator typedefHighFive::FixedLenStringArray< N >
operator[](std::size_t i) const noexceptHighFive::FixedLenStringArray< N >inline
push_back(const std::string &)HighFive::FixedLenStringArray< N >inline
push_back(const std::array< char, N > &)HighFive::FixedLenStringArray< N >inline
rbegin() noexceptHighFive::FixedLenStringArray< N >inline
rbegin() const noexceptHighFive::FixedLenStringArray< N >inline
rend() noexceptHighFive::FixedLenStringArray< N >inline
rend() const noexceptHighFive::FixedLenStringArray< N >inline
resize(std::size_t n)HighFive::FixedLenStringArray< N >inline
reverse_iterator typedefHighFive::FixedLenStringArray< N >
size() const noexceptHighFive::FixedLenStringArray< N >inline
value_type typedefHighFive::FixedLenStringArray< N >
+
+ + + + diff --git a/class_high_five_1_1_fixed_len_string_array.html b/class_high_five_1_1_fixed_len_string_array.html new file mode 100644 index 000000000..7f278dba0 --- /dev/null +++ b/class_high_five_1_1_fixed_len_string_array.html @@ -0,0 +1,1058 @@ + + + + + + + +HighFive: HighFive::FixedLenStringArray< N > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::FixedLenStringArray< N > Class Template Reference
+
+
+ +

A structure representing a set of fixed-length strings. + More...

+ +

#include <H5DataType.hpp>

+ + + + + + + + + + + + +

+Public Types

using iterator = typename vector_t::iterator
 
using const_iterator = typename vector_t::const_iterator
 
using reverse_iterator = typename vector_t::reverse_iterator
 
using const_reverse_iterator = typename vector_t::const_reverse_iterator
 
using value_type = typename vector_t::value_type
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FixedLenStringArray ()=default
 
 FixedLenStringArray (const char array[][N], std::size_t n_strings)
 Create a FixedStringArray from a raw contiguous buffer.
 
 FixedLenStringArray (const std::vector< std::string > &vec)
 Create a FixedStringArray from a sequence of strings.
 
 FixedLenStringArray (const std::string *iter_begin, const std::string *iter_end)
 
 FixedLenStringArray (const std::initializer_list< std::string > &)
 
void push_back (const std::string &)
 Append an std::string to the buffer structure.
 
void push_back (const std::array< char, N > &)
 
std::string getString (std::size_t index) const
 Retrieve a string from the structure as std::string.
 
const char * operator[] (std::size_t i) const noexcept
 
const char * at (std::size_t i) const
 
bool empty () const noexcept
 
std::size_t size () const noexcept
 
void resize (std::size_t n)
 
const char * front () const
 
const char * back () const
 
char * data () noexcept
 
const char * data () const noexcept
 
iterator begin () noexcept
 
iterator end () noexcept
 
const_iterator begin () const noexcept
 
const_iterator cbegin () const noexcept
 
const_iterator end () const noexcept
 
const_iterator cend () const noexcept
 
reverse_iterator rbegin () noexcept
 
reverse_iterator rend () noexcept
 
const_reverse_iterator rbegin () const noexcept
 
const_reverse_iterator rend () const noexcept
 
+

Detailed Description

+
template<std::size_t N>
+class HighFive::FixedLenStringArray< N >

A structure representing a set of fixed-length strings.

+

Although fixed-len arrays can be created 'raw' without the need for this structure, to retrieve results efficiently it must be used.

+
Template Parameters
+ + +
NSize of the string in bytes, including the null character. Note, that all string must be null-terminated.
+
+
+

Member Typedef Documentation

+ +

◆ const_iterator

+ +
+
+
+template<std::size_t N>
+ + + + +
using HighFive::FixedLenStringArray< N >::const_iterator = typename vector_t::const_iterator
+
+ +
+
+ +

◆ const_reverse_iterator

+ +
+
+
+template<std::size_t N>
+ + + + +
using HighFive::FixedLenStringArray< N >::const_reverse_iterator = typename vector_t::const_reverse_iterator
+
+ +
+
+ +

◆ iterator

+ +
+
+
+template<std::size_t N>
+ + + + +
using HighFive::FixedLenStringArray< N >::iterator = typename vector_t::iterator
+
+ +
+
+ +

◆ reverse_iterator

+ +
+
+
+template<std::size_t N>
+ + + + +
using HighFive::FixedLenStringArray< N >::reverse_iterator = typename vector_t::reverse_iterator
+
+ +
+
+ +

◆ value_type

+ +
+
+
+template<std::size_t N>
+ + + + +
using HighFive::FixedLenStringArray< N >::value_type = typename vector_t::value_type
+
+ +
+
+

Constructor & Destructor Documentation

+ +

◆ FixedLenStringArray() [1/5]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
HighFive::FixedLenStringArray< N >::FixedLenStringArray ()
+
+default
+
+ +
+
+ +

◆ FixedLenStringArray() [2/5]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::FixedLenStringArray< N >::FixedLenStringArray (const char array[][N],
std::size_t n_strings 
)
+
+inline
+
+ +

Create a FixedStringArray from a raw contiguous buffer.

+

The argument n_strings specifies the number of strings.

+ +
+
+ +

◆ FixedLenStringArray() [3/5]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + +
HighFive::FixedLenStringArray< N >::FixedLenStringArray (const std::vector< std::string > & vec)
+
+inlineexplicit
+
+ +

Create a FixedStringArray from a sequence of strings.

+

Such conversion involves a copy, original vector is not modified

+ +
+
+ +

◆ FixedLenStringArray() [4/5]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::FixedLenStringArray< N >::FixedLenStringArray (const std::string * iter_begin,
const std::string * iter_end 
)
+
+inline
+
+ +
+
+ +

◆ FixedLenStringArray() [5/5]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + +
HighFive::FixedLenStringArray< N >::FixedLenStringArray (const std::initializer_list< std::string > & init_list)
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ at()

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + +
const char * HighFive::FixedLenStringArray< N >::at (std::size_t i) const
+
+inline
+
+ +
+
+ +

◆ back()

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
const char * HighFive::FixedLenStringArray< N >::back () const
+
+inline
+
+ +
+
+ +

◆ begin() [1/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
const_iterator HighFive::FixedLenStringArray< N >::begin () const
+
+inlinenoexcept
+
+ +
+
+ +

◆ begin() [2/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
iterator HighFive::FixedLenStringArray< N >::begin ()
+
+inlinenoexcept
+
+ +
+
+ +

◆ cbegin()

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
const_iterator HighFive::FixedLenStringArray< N >::cbegin () const
+
+inlinenoexcept
+
+ +
+
+ +

◆ cend()

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
const_iterator HighFive::FixedLenStringArray< N >::cend () const
+
+inlinenoexcept
+
+ +
+
+ +

◆ data() [1/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
const char * HighFive::FixedLenStringArray< N >::data () const
+
+inlinenoexcept
+
+ +
+
+ +

◆ data() [2/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
char * HighFive::FixedLenStringArray< N >::data ()
+
+inlinenoexcept
+
+ +
+
+ +

◆ empty()

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
bool HighFive::FixedLenStringArray< N >::empty () const
+
+inlinenoexcept
+
+ +
+
+ +

◆ end() [1/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
const_iterator HighFive::FixedLenStringArray< N >::end () const
+
+inlinenoexcept
+
+ +
+
+ +

◆ end() [2/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
iterator HighFive::FixedLenStringArray< N >::end ()
+
+inlinenoexcept
+
+ +
+
+ +

◆ front()

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
const char * HighFive::FixedLenStringArray< N >::front () const
+
+inline
+
+ +
+
+ +

◆ getString()

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + +
std::string HighFive::FixedLenStringArray< N >::getString (std::size_t index) const
+
+inline
+
+ +

Retrieve a string from the structure as std::string.

+ +
+
+ +

◆ operator[]()

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + +
const char * HighFive::FixedLenStringArray< N >::operator[] (std::size_t i) const
+
+inlinenoexcept
+
+ +
+
+ +

◆ push_back() [1/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + +
void HighFive::FixedLenStringArray< N >::push_back (const std::array< char, N > & src)
+
+inline
+
+ +
+
+ +

◆ push_back() [2/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + +
void HighFive::FixedLenStringArray< N >::push_back (const std::string & src)
+
+inline
+
+ +

Append an std::string to the buffer structure.

+ +
+
+ +

◆ rbegin() [1/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
const_reverse_iterator HighFive::FixedLenStringArray< N >::rbegin () const
+
+inlinenoexcept
+
+ +
+
+ +

◆ rbegin() [2/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
reverse_iterator HighFive::FixedLenStringArray< N >::rbegin ()
+
+inlinenoexcept
+
+ +
+
+ +

◆ rend() [1/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
const_reverse_iterator HighFive::FixedLenStringArray< N >::rend () const
+
+inlinenoexcept
+
+ +
+
+ +

◆ rend() [2/2]

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
reverse_iterator HighFive::FixedLenStringArray< N >::rend ()
+
+inlinenoexcept
+
+ +
+
+ +

◆ resize()

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + +
void HighFive::FixedLenStringArray< N >::resize (std::size_t n)
+
+inline
+
+ +
+
+ +

◆ size()

+ +
+
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + +
std::size_t HighFive::FixedLenStringArray< N >::size () const
+
+inlinenoexcept
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_fixed_len_string_array.js b/class_high_five_1_1_fixed_len_string_array.js new file mode 100644 index 000000000..2cdea0a37 --- /dev/null +++ b/class_high_five_1_1_fixed_len_string_array.js @@ -0,0 +1,35 @@ +var class_high_five_1_1_fixed_len_string_array = +[ + [ "const_iterator", "class_high_five_1_1_fixed_len_string_array.html#a2294199cf6a8d597e0cba376bbd85231", null ], + [ "const_reverse_iterator", "class_high_five_1_1_fixed_len_string_array.html#aeaca38cc497e758037390083f0d192a2", null ], + [ "iterator", "class_high_five_1_1_fixed_len_string_array.html#aedfe77629b033e469fe706b07ee0b834", null ], + [ "reverse_iterator", "class_high_five_1_1_fixed_len_string_array.html#ae6a87abe9c866cb3009937e5c92534a9", null ], + [ "value_type", "class_high_five_1_1_fixed_len_string_array.html#ab7d8bfeb0fb6ac5369084f7cd7ee907c", null ], + [ "FixedLenStringArray", "class_high_five_1_1_fixed_len_string_array.html#abe5666a64c15fde7771c57f42c447d33", null ], + [ "FixedLenStringArray", "class_high_five_1_1_fixed_len_string_array.html#a1ce46702ecda8c52f8a04ab78eb7edde", null ], + [ "FixedLenStringArray", "class_high_five_1_1_fixed_len_string_array.html#aacb1f323d88e86e39c648eb56f63ae23", null ], + [ "FixedLenStringArray", "class_high_five_1_1_fixed_len_string_array.html#a328d0aa4879af0eec80efbc1f4c7491a", null ], + [ "FixedLenStringArray", "class_high_five_1_1_fixed_len_string_array.html#adc28fb9f211c154a23c49329bf9b24aa", null ], + [ "at", "class_high_five_1_1_fixed_len_string_array.html#a4f181ea68d6acaff1368236498aa4058", null ], + [ "back", "class_high_five_1_1_fixed_len_string_array.html#a575f76607299a2bfd870461532c42767", null ], + [ "begin", "class_high_five_1_1_fixed_len_string_array.html#a13ebd6706d31cb69d05a60ce814b06b7", null ], + [ "begin", "class_high_five_1_1_fixed_len_string_array.html#ac93fca9a8c1847e2ebcba946766e47fe", null ], + [ "cbegin", "class_high_five_1_1_fixed_len_string_array.html#adbd25ca7ba7ca704f7e2ae4f59521a98", null ], + [ "cend", "class_high_five_1_1_fixed_len_string_array.html#a0b2157856658953e64c39fb4c2711a59", null ], + [ "data", "class_high_five_1_1_fixed_len_string_array.html#a1f3bd411e653c928a3d852d38fd7ef31", null ], + [ "data", "class_high_five_1_1_fixed_len_string_array.html#a7f05997860932a452aaa786b77c0058d", null ], + [ "empty", "class_high_five_1_1_fixed_len_string_array.html#ae4e45b62e6aa12d7e1889250d347aca0", null ], + [ "end", "class_high_five_1_1_fixed_len_string_array.html#a4d71a772f55f81a5e9fa9a333e64899d", null ], + [ "end", "class_high_five_1_1_fixed_len_string_array.html#adbfe9953b715595267130ac4e46e0dfc", null ], + [ "front", "class_high_five_1_1_fixed_len_string_array.html#a00303ff83d040a9b165eac585f43770d", null ], + [ "getString", "class_high_five_1_1_fixed_len_string_array.html#ab48dc990ff82ec16e859d0b822a1d8aa", null ], + [ "operator[]", "class_high_five_1_1_fixed_len_string_array.html#ab7a0a37fe3363d2c1d445910fe53703e", null ], + [ "push_back", "class_high_five_1_1_fixed_len_string_array.html#a65300a3e825a318af0f831297b544629", null ], + [ "push_back", "class_high_five_1_1_fixed_len_string_array.html#ad19e9539073e41fafb9586df96294188", null ], + [ "rbegin", "class_high_five_1_1_fixed_len_string_array.html#a3ca19a69a2f0fdc0b47a9053f1924c7b", null ], + [ "rbegin", "class_high_five_1_1_fixed_len_string_array.html#a8c1a6768d29e8271552e2f6186387e58", null ], + [ "rend", "class_high_five_1_1_fixed_len_string_array.html#a10b20edebc19ebcc2742f4c27fb67a72", null ], + [ "rend", "class_high_five_1_1_fixed_len_string_array.html#a6947fd58b1ca1b33a3dc88f033f49bb0", null ], + [ "resize", "class_high_five_1_1_fixed_len_string_array.html#a87e51e420da9b9c061aaa57b3db0eb38", null ], + [ "size", "class_high_five_1_1_fixed_len_string_array.html#ac3097dafb2c4aa731fe154a746b937b5", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_fixed_length_string_type-members.html b/class_high_five_1_1_fixed_length_string_type-members.html new file mode 100644 index 000000000..7744da014 --- /dev/null +++ b/class_high_five_1_1_fixed_length_string_type-members.html @@ -0,0 +1,135 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::FixedLengthStringType Member List
+
+
+ +

This is the complete list of members for HighFive::FixedLengthStringType, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
asStringType() constHighFive::DataTypeinline
empty() const noexceptHighFive::DataTypeinline
FixedLengthStringType(size_t size, StringPadding padding, CharacterSet character_set=CharacterSet::Ascii)HighFive::FixedLengthStringTypeinline
getCharacterSet() constHighFive::StringTypeinline
getClass() constHighFive::DataTypeinline
getCreatePropertyList() constHighFive::DataTypeinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getPadding() constHighFive::StringTypeinline
getSize() constHighFive::DataTypeinline
getType() constHighFive::Objectinline
isFixedLenStr() constHighFive::DataTypeinline
isReference() constHighFive::DataTypeinline
isValid() const noexceptHighFive::Objectinline
isVariableStr() constHighFive::DataTypeinline
Object(Object &&other) noexceptHighFive::DataTypeinlineprotected
Object()HighFive::DataTypeinlineprotected
Object(const Object &other)HighFive::DataTypeinlineprotected
Object(hid_t)HighFive::DataTypeinlineexplicitprotected
operator!=(const DataType &other) constHighFive::DataTypeinline
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const DataType &other) constHighFive::DataTypeinline
HighFive::Object::operator==(const Object &other) const noexceptHighFive::Objectinline
string() constHighFive::DataTypeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_fixed_length_string_type.html b/class_high_five_1_1_fixed_length_string_type.html new file mode 100644 index 000000000..061a0029c --- /dev/null +++ b/class_high_five_1_1_fixed_length_string_type.html @@ -0,0 +1,281 @@ + + + + + + + +HighFive: HighFive::FixedLengthStringType Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::FixedLengthStringType Class Reference
+
+
+ +

#include <H5DataType.hpp>

+
+Inheritance diagram for HighFive::FixedLengthStringType:
+
+
Inheritance graph
+ + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::FixedLengthStringType:
+
+
Collaboration graph
+ + + + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FixedLengthStringType (size_t size, StringPadding padding, CharacterSet character_set=CharacterSet::Ascii)
 Create a fixed length string datatype.
 
- Public Member Functions inherited from HighFive::StringType
CharacterSet getCharacterSet () const
 For stings return the character set.
 
StringPadding getPadding () const
 For fixed length stings return the padding.
 
- Public Member Functions inherited from HighFive::DataType
bool operator== (const DataType &other) const
 
bool operator!= (const DataType &other) const
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
StringType asStringType () const
 Returns this datatype as a StringType.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
DataTypeCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this DataType.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from HighFive::DataType
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Constructor & Destructor Documentation

+ +

◆ FixedLengthStringType()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
HighFive::FixedLengthStringType::FixedLengthStringType (size_t size,
StringPadding padding,
CharacterSet character_set = CharacterSet::Ascii 
)
+
+inline
+
+ +

Create a fixed length string datatype.

+

The string will be size bytes long, regardless whether it's ASCII or UTF8. In particular, a string with n UFT8 characters in general requires 4*n bytes.

+

The string padding is subtle, essentially it's just a hint. A nullterminated string is guaranteed to have one ‘’\0'which marks the semantic end of the string. The length of the buffer must be at least sizebytes regardless. HDF5 will read or writesizebytes, irrespective of the when the\0` occurs.

+

Note that when writing passing StringPadding::NullTerminated is a guarantee to the reader that it contains a \0. Therefore, make sure that the string really is nullterminated. Otherwise prefer a null-padded string which only means states that the buffer is filled up with 0 or more \0.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_fixed_length_string_type.js b/class_high_five_1_1_fixed_length_string_type.js new file mode 100644 index 000000000..8eb9d6fd9 --- /dev/null +++ b/class_high_five_1_1_fixed_length_string_type.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_fixed_length_string_type = +[ + [ "FixedLengthStringType", "class_high_five_1_1_fixed_length_string_type.html#a861eb3227c2387d3c0754b795cde204e", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_fixed_length_string_type__coll__graph.map b/class_high_five_1_1_fixed_length_string_type__coll__graph.map new file mode 100644 index 000000000..6f34ef993 --- /dev/null +++ b/class_high_five_1_1_fixed_length_string_type__coll__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_fixed_length_string_type__coll__graph.md5 b/class_high_five_1_1_fixed_length_string_type__coll__graph.md5 new file mode 100644 index 000000000..df40798e3 --- /dev/null +++ b/class_high_five_1_1_fixed_length_string_type__coll__graph.md5 @@ -0,0 +1 @@ +f147c706097a0fa7e26a64ea3c83a348 \ No newline at end of file diff --git a/class_high_five_1_1_fixed_length_string_type__coll__graph.png b/class_high_five_1_1_fixed_length_string_type__coll__graph.png new file mode 100644 index 000000000..31763f08c Binary files /dev/null and b/class_high_five_1_1_fixed_length_string_type__coll__graph.png differ diff --git a/class_high_five_1_1_fixed_length_string_type__inherit__graph.map b/class_high_five_1_1_fixed_length_string_type__inherit__graph.map new file mode 100644 index 000000000..6f34ef993 --- /dev/null +++ b/class_high_five_1_1_fixed_length_string_type__inherit__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_fixed_length_string_type__inherit__graph.md5 b/class_high_five_1_1_fixed_length_string_type__inherit__graph.md5 new file mode 100644 index 000000000..df40798e3 --- /dev/null +++ b/class_high_five_1_1_fixed_length_string_type__inherit__graph.md5 @@ -0,0 +1 @@ +f147c706097a0fa7e26a64ea3c83a348 \ No newline at end of file diff --git a/class_high_five_1_1_fixed_length_string_type__inherit__graph.png b/class_high_five_1_1_fixed_length_string_type__inherit__graph.png new file mode 100644 index 000000000..31763f08c Binary files /dev/null and b/class_high_five_1_1_fixed_length_string_type__inherit__graph.png differ diff --git a/class_high_five_1_1_group-members.html b/class_high_five_1_1_group-members.html new file mode 100644 index 000000000..e3bc6f06a --- /dev/null +++ b/class_high_five_1_1_group-members.html @@ -0,0 +1,162 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Group Member List
+
+
+ +

This is the complete list of members for HighFive::Group, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_file_objHighFive::PathTraits< Group >protected
_hidHighFive::Objectprotected
createAttribute(const std::string &attribute_name, const DataSpace &space, const DataType &type)HighFive::AnnotateTraits< Group >inline
createAttribute(const std::string &attribute_name, const DataSpace &space)HighFive::AnnotateTraits< Group >inline
createAttribute(const std::string &attribute_name, const T &data)HighFive::AnnotateTraits< Group >inline
createDataSet(const std::string &dataset_name, const DataSpace &space, const DataType &type, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< Group >inline
createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< Group >inline
createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< Group >
createDataSet(const std::string &dataset_name, const T &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< Group >inline
createDataSet(const std::string &dataset_name, const FixedLenStringArray< N > &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< Group >inline
createExternalLink(const std::string &link_name, const std::string &h5_file, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)HighFive::NodeTraits< Group >inline
createGroup(const std::string &group_name, bool parents=true)HighFive::NodeTraits< Group >inline
createGroup(const std::string &group_name, const GroupCreateProps &createProps, bool parents=true)HighFive::NodeTraits< Group >inline
createHardLink(const std::string &link_name, const T &target_obj, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)HighFive::NodeTraits< Group >inline
createSoftLink(const std::string &linkName, const T &obj)HighFive::NodeTraits< Group >inline
createSoftLink(const std::string &link_name, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)HighFive::NodeTraits< Group >inline
deleteAttribute(const std::string &attribute_name)HighFive::AnnotateTraits< Group >inline
exist(const std::string &node_name) constHighFive::NodeTraits< Group >inline
FileHighFive::Groupfriend
getAttribute(const std::string &attribute_name) constHighFive::AnnotateTraits< Group >inline
getCreatePropertyList() constHighFive::Groupinline
getDataSet(const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps::Default()) constHighFive::NodeTraits< Group >inline
getDataType(const std::string &type_name, const DataTypeAccessProps &accessProps=DataTypeAccessProps::Default()) constHighFive::NodeTraits< Group >inline
getEstimatedLinkInfo() constHighFive::Groupinline
getFile() const noexceptHighFive::PathTraits< Group >inline
getGroup(const std::string &group_name) constHighFive::NodeTraits< Group >inline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getLinkType(const std::string &node_name) constHighFive::NodeTraits< Group >inline
getNumberAttributes() constHighFive::AnnotateTraits< Group >inline
getNumberObjects() constHighFive::NodeTraits< Group >inline
getObjectName(size_t index) constHighFive::NodeTraits< Group >inline
getObjectType(const std::string &node_name) constHighFive::NodeTraits< Group >inline
getPath() constHighFive::PathTraits< Group >inline
getType() constHighFive::Objectinline
Group()=defaultHighFive::Group
Group(Object &&o) noexceptHighFive::Groupinline
hasAttribute(const std::string &attr_name) constHighFive::AnnotateTraits< Group >inline
isValid() const noexceptHighFive::Objectinline
listAttributeNames() constHighFive::AnnotateTraits< Group >inline
listObjectNames(IndexType idx_type=IndexType::NAME) constHighFive::NodeTraits< Group >inline
Object(Object &&other) noexceptHighFive::Groupinlineprotected
Object()HighFive::Groupinlineprotected
Object(const Object &other)HighFive::Groupinlineprotected
Object(hid_t)HighFive::Groupinlineexplicitprotected
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
PathTraits()HighFive::PathTraits< Group >inline
ReferenceHighFive::Groupfriend
rename(const std::string &src_path, const std::string &dest_path, bool parents=true) constHighFive::NodeTraits< Group >inline
typeHighFive::Groupstatic
unlink(const std::string &node_name) constHighFive::NodeTraits< Group >inline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_group.html b/class_high_five_1_1_group.html new file mode 100644 index 000000000..e1813b558 --- /dev/null +++ b/class_high_five_1_1_group.html @@ -0,0 +1,603 @@ + + + + + + + +HighFive: HighFive::Group Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Group Class Reference
+
+
+ +

Represents an hdf5 group. + More...

+ +

#include <H5Group.hpp>

+
+Inheritance diagram for HighFive::Group:
+
+
Inheritance graph
+ + + + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::Group:
+
+
Collaboration graph
+ + + + + + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Group ()=default
 
std::pair< unsigned int, unsigned int > getEstimatedLinkInfo () const
 
GroupCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this group.
 
 Group (Object &&o) noexcept
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
- Public Member Functions inherited from HighFive::NodeTraits< Group >
DataSet createDataSet (const std::string &dataset_name, const DataSpace &space, const DataType &type, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 createDataSet Create a new dataset in the current file of datatype type and of size space
 
DataSet createDataSet (const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 createDataSet create a new dataset in the current file with a size specified by space
 
DataSet createDataSet (const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 
DataSet createDataSet (const std::string &dataset_name, const T &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 createDataSet create a new dataset in the current file and write to it, inferring the DataSpace from the data.
 
DataSet createDataSet (const std::string &dataset_name, const FixedLenStringArray< N > &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 
DataSet getDataSet (const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps::Default()) const
 get an existing dataset in the current file
 
Group createGroup (const std::string &group_name, bool parents=true)
 create a new group, and eventually intermediate groups
 
Group createGroup (const std::string &group_name, const GroupCreateProps &createProps, bool parents=true)
 create a new group, and eventually intermediate groups
 
Group getGroup (const std::string &group_name) const
 open an existing group with the name group_name
 
DataType getDataType (const std::string &type_name, const DataTypeAccessProps &accessProps=DataTypeAccessProps::Default()) const
 open a commited datatype with the name type_name
 
size_t getNumberObjects () const
 return the number of leaf objects of the node / group
 
std::string getObjectName (size_t index) const
 return the name of the object with the given index
 
bool rename (const std::string &src_path, const std::string &dest_path, bool parents=true) const
 moves an object and its content within an HDF5 file.
 
std::vector< std::string > listObjectNames (IndexType idx_type=IndexType::NAME) const
 list all leaf objects name of the node / group
 
bool exist (const std::string &node_name) const
 check a dataset or group exists in the current node / group
 
void unlink (const std::string &node_name) const
 unlink the given dataset or group
 
LinkType getLinkType (const std::string &node_name) const
 Returns the kind of link of the given name (soft, hard...)
 
ObjectType getObjectType (const std::string &node_name) const
 A shorthand to get the kind of object pointed to (group, dataset, type...)
 
void createSoftLink (const std::string &linkName, const T &obj)
 A shorthand to create softlink to any object which provides getPath The link will be created with default properties along with required parent groups.
 
void createSoftLink (const std::string &link_name, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
 Creates softlinks.
 
void createExternalLink (const std::string &link_name, const std::string &h5_file, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
 
void createHardLink (const std::string &link_name, const T &target_obj, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
 Creates hardlinks.
 
- Public Member Functions inherited from HighFive::AnnotateTraits< Group >
Attribute createAttribute (const std::string &attribute_name, const DataSpace &space, const DataType &type)
 create a new attribute with the name attribute_name
 
Attribute createAttribute (const std::string &attribute_name, const DataSpace &space)
 createAttribute create a new attribute on the current dataset with size specified by space
 
Attribute createAttribute (const std::string &attribute_name, const T &data)
 createAttribute create a new attribute on the current dataset and write to it, inferring the DataSpace from data.
 
void deleteAttribute (const std::string &attribute_name)
 deleteAttribute let you delete an attribute by its name.
 
Attribute getAttribute (const std::string &attribute_name) const
 open an existing attribute with the name attribute_name
 
size_t getNumberAttributes () const
 return the number of attributes of the node / group
 
std::vector< std::string > listAttributeNames () const
 list all attribute name of the node / group
 
bool hasAttribute (const std::string &attr_name) const
 checks an attribute exists
 
- Public Member Functions inherited from HighFive::PathTraits< Group >
 PathTraits ()
 
std::string getPath () const
 return the path to the current object
 
FilegetFile () const noexcept
 Return a reference to the File object this object belongs.
 
+ + + +

+Static Public Attributes

static const ObjectType type = ObjectType::Group
 
+ + + + + + + + + + + + + + + + + + +

+Protected Member Functions

 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
+ + + + + +

+Friends

class File
 
class Reference
 
+ + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
- Protected Attributes inherited from HighFive::PathTraits< Group >
std::shared_ptr< File_file_obj
 
+

Detailed Description

+

Represents an hdf5 group.

+

Constructor & Destructor Documentation

+ +

◆ Group() [1/2]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Group::Group ()
+
+default
+
+
Deprecated:
Default constructor creates unsafe uninitialized objects
+ +
+
+ +

◆ Group() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Group::Group (Object && o)
+
+inlinenoexcept
+
+ +
+
+

Member Function Documentation

+ +

◆ getCreatePropertyList()

+ +
+
+ + + + + +
+ + + + + + + +
GroupCreateProps HighFive::Group::getCreatePropertyList () const
+
+inline
+
+ +

Get the list of properties for creation of this group.

+ +
+
+ +

◆ getEstimatedLinkInfo()

+ +
+
+ + + + + +
+ + + + + + + +
std::pair< unsigned int, unsigned int > HighFive::Group::getEstimatedLinkInfo () const
+
+inline
+
+ +
+
+ +

◆ Object() [1/4]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Object::Object ()
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (const Objectother)
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (hid_t hid)
+
+inlineexplicitprotected
+
+ +
+
+ +

◆ Object() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (Object && other)
+
+inlineprotectednoexcept
+
+ +
+
+

Friends And Related Symbol Documentation

+ +

◆ File

+ +
+
+ + + + + +
+ + + + +
friend class File
+
+friend
+
+ +
+
+ +

◆ Reference

+ +
+
+ + + + + +
+ + + + +
friend class Reference
+
+friend
+
+ +
+
+

Member Data Documentation

+ +

◆ type

+ +
+
+ + + + + +
+ + + + +
const ObjectType HighFive::Group::type = ObjectType::Group
+
+static
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_group.js b/class_high_five_1_1_group.js new file mode 100644 index 000000000..954b996dc --- /dev/null +++ b/class_high_five_1_1_group.js @@ -0,0 +1,13 @@ +var class_high_five_1_1_group = +[ + [ "Group", "class_high_five_1_1_group.html#a64f8b882c1f7844570be07bb7b012f04", null ], + [ "Group", "class_high_five_1_1_group.html#aa5a251bd5db04d9f05b8c1df4c989b18", null ], + [ "getCreatePropertyList", "class_high_five_1_1_group.html#a74f31ef804cbebe13b36db113ef5f235", null ], + [ "getEstimatedLinkInfo", "class_high_five_1_1_group.html#aeca9409bc3a21e9934728293bc24d960", null ], + [ "Object", "class_high_five_1_1_group.html#a6bae41d04f273d04d2914406ab79da32", null ], + [ "Object", "class_high_five_1_1_group.html#ab87ee7d5e2beee6a50d60dec20d3dfe5", null ], + [ "Object", "class_high_five_1_1_group.html#a9fe361bc0bd9662c1fd96a4a6ec1133a", null ], + [ "Object", "class_high_five_1_1_group.html#aa42052fa5ec4ee691f6a7dd6467199f2", null ], + [ "File", "class_high_five_1_1_group.html#a68d15876ad188b7628261b12d0eac8aa", null ], + [ "Reference", "class_high_five_1_1_group.html#a75dfa92607f3d314070ecf242e028014", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_group__coll__graph.map b/class_high_five_1_1_group__coll__graph.map new file mode 100644 index 000000000..cd04bf24b --- /dev/null +++ b/class_high_five_1_1_group__coll__graph.map @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/class_high_five_1_1_group__coll__graph.md5 b/class_high_five_1_1_group__coll__graph.md5 new file mode 100644 index 000000000..bd89e8ce6 --- /dev/null +++ b/class_high_five_1_1_group__coll__graph.md5 @@ -0,0 +1 @@ +e387ecdfaad17d6328a1c1aff9a6d4de \ No newline at end of file diff --git a/class_high_five_1_1_group__coll__graph.png b/class_high_five_1_1_group__coll__graph.png new file mode 100644 index 000000000..cb9fdc83d Binary files /dev/null and b/class_high_five_1_1_group__coll__graph.png differ diff --git a/class_high_five_1_1_group__inherit__graph.map b/class_high_five_1_1_group__inherit__graph.map new file mode 100644 index 000000000..cd04bf24b --- /dev/null +++ b/class_high_five_1_1_group__inherit__graph.map @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/class_high_five_1_1_group__inherit__graph.md5 b/class_high_five_1_1_group__inherit__graph.md5 new file mode 100644 index 000000000..bd89e8ce6 --- /dev/null +++ b/class_high_five_1_1_group__inherit__graph.md5 @@ -0,0 +1 @@ +e387ecdfaad17d6328a1c1aff9a6d4de \ No newline at end of file diff --git a/class_high_five_1_1_group__inherit__graph.png b/class_high_five_1_1_group__inherit__graph.png new file mode 100644 index 000000000..cb9fdc83d Binary files /dev/null and b/class_high_five_1_1_group__inherit__graph.png differ diff --git a/class_high_five_1_1_group_exception-members.html b/class_high_five_1_1_group_exception-members.html new file mode 100644 index 000000000..2c8236bd3 --- /dev/null +++ b/class_high_five_1_1_group_exception-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::GroupException Member List
+
+
+ +

This is the complete list of members for HighFive::GroupException, including all inherited members.

+ + + + + + + + + + + + + +
_err_majorHighFive::Exceptionprotected
_err_minorHighFive::Exceptionprotected
_errmsgHighFive::Exceptionprotected
_nextHighFive::Exceptionprotected
Exception(const std::string &err_msg)HighFive::Exceptioninline
getErrMajor() constHighFive::Exceptioninline
getErrMinor() constHighFive::Exceptioninline
GroupException(const std::string &err_msg)HighFive::GroupExceptioninline
nextException() constHighFive::Exceptioninline
setErrorMsg(const std::string &errmsg)HighFive::Exceptioninlinevirtual
what() const overrideHighFive::Exceptioninline
~Exception()HighFive::Exceptioninlinevirtual
+
+ + + + diff --git a/class_high_five_1_1_group_exception.html b/class_high_five_1_1_group_exception.html new file mode 100644 index 000000000..51eacad1f --- /dev/null +++ b/class_high_five_1_1_group_exception.html @@ -0,0 +1,209 @@ + + + + + + + +HighFive: HighFive::GroupException Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::GroupException Class Reference
+
+
+ +

Exception specific to HighFive Group interface. + More...

+ +

#include <H5Exception.hpp>

+
+Inheritance diagram for HighFive::GroupException:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::GroupException:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 GroupException (const std::string &err_msg)
 
- Public Member Functions inherited from HighFive::Exception
 Exception (const std::string &err_msg)
 
virtual ~Exception () throw ()
 
const char * what () const override throw ()
 get the current exception error message
 
virtual void setErrorMsg (const std::string &errmsg)
 define the error message
 
ExceptionnextException () const
 nextException
 
hid_t getErrMajor () const
 HDF5 library error mapper.
 
hid_t getErrMinor () const
 HDF5 library error mapper.
 
+ + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Exception
std::string _errmsg
 
std::shared_ptr< Exception_next
 
hid_t _err_major
 
hid_t _err_minor
 
+

Detailed Description

+

Exception specific to HighFive Group interface.

+

Constructor & Destructor Documentation

+ +

◆ GroupException()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::GroupException::GroupException (const std::string & err_msg)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_group_exception.js b/class_high_five_1_1_group_exception.js new file mode 100644 index 000000000..dd7981d1a --- /dev/null +++ b/class_high_five_1_1_group_exception.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_group_exception = +[ + [ "GroupException", "class_high_five_1_1_group_exception.html#a3230fc495c7c0bbcab847dc12fbf09df", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_group_exception__coll__graph.map b/class_high_five_1_1_group_exception__coll__graph.map new file mode 100644 index 000000000..1f1faed99 --- /dev/null +++ b/class_high_five_1_1_group_exception__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_group_exception__coll__graph.md5 b/class_high_five_1_1_group_exception__coll__graph.md5 new file mode 100644 index 000000000..fe5e36385 --- /dev/null +++ b/class_high_five_1_1_group_exception__coll__graph.md5 @@ -0,0 +1 @@ +a6a236d9dab05a85a2a8a2dfa208fc30 \ No newline at end of file diff --git a/class_high_five_1_1_group_exception__coll__graph.png b/class_high_five_1_1_group_exception__coll__graph.png new file mode 100644 index 000000000..3f6827f41 Binary files /dev/null and b/class_high_five_1_1_group_exception__coll__graph.png differ diff --git a/class_high_five_1_1_group_exception__inherit__graph.map b/class_high_five_1_1_group_exception__inherit__graph.map new file mode 100644 index 000000000..1f1faed99 --- /dev/null +++ b/class_high_five_1_1_group_exception__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_group_exception__inherit__graph.md5 b/class_high_five_1_1_group_exception__inherit__graph.md5 new file mode 100644 index 000000000..fe5e36385 --- /dev/null +++ b/class_high_five_1_1_group_exception__inherit__graph.md5 @@ -0,0 +1 @@ +a6a236d9dab05a85a2a8a2dfa208fc30 \ No newline at end of file diff --git a/class_high_five_1_1_group_exception__inherit__graph.png b/class_high_five_1_1_group_exception__inherit__graph.png new file mode 100644 index 000000000..3f6827f41 Binary files /dev/null and b/class_high_five_1_1_group_exception__inherit__graph.png differ diff --git a/class_high_five_1_1_hyper_slab-members.html b/class_high_five_1_1_hyper_slab-members.html new file mode 100644 index 000000000..02e63c331 --- /dev/null +++ b/class_high_five_1_1_hyper_slab-members.html @@ -0,0 +1,120 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::HyperSlab Member List
+
+
+ +

This is the complete list of members for HighFive::HyperSlab, including all inherited members.

+ + + + + + + + + + + + +
apply(const DataSpace &space_) constHighFive::HyperSlabinline
HyperSlab()HighFive::HyperSlabinline
HyperSlab(const RegularHyperSlab &sel)HighFive::HyperSlabinlineexplicit
notA(const RegularHyperSlab &sel)HighFive::HyperSlabinline
notB(const RegularHyperSlab &sel)HighFive::HyperSlabinline
operator&(const RegularHyperSlab &sel) constHighFive::HyperSlabinline
operator&=(const RegularHyperSlab &sel)HighFive::HyperSlabinline
operator^(const RegularHyperSlab &sel) constHighFive::HyperSlabinline
operator^=(const RegularHyperSlab &sel)HighFive::HyperSlabinline
operator|(const RegularHyperSlab &sel) constHighFive::HyperSlabinline
operator|=(const RegularHyperSlab &sel)HighFive::HyperSlabinline
+
+ + + + diff --git a/class_high_five_1_1_hyper_slab.html b/class_high_five_1_1_hyper_slab.html new file mode 100644 index 000000000..fe880f7f1 --- /dev/null +++ b/class_high_five_1_1_hyper_slab.html @@ -0,0 +1,429 @@ + + + + + + + +HighFive: HighFive::HyperSlab Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::HyperSlab Class Reference
+
+
+ +

#include <H5Slice_traits.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 HyperSlab ()
 
 HyperSlab (const RegularHyperSlab &sel)
 
HyperSlab operator| (const RegularHyperSlab &sel) const
 
HyperSlaboperator|= (const RegularHyperSlab &sel)
 
HyperSlab operator& (const RegularHyperSlab &sel) const
 
HyperSlaboperator&= (const RegularHyperSlab &sel)
 
HyperSlab operator^ (const RegularHyperSlab &sel) const
 
HyperSlaboperator^= (const RegularHyperSlab &sel)
 
HyperSlabnotA (const RegularHyperSlab &sel)
 
HyperSlabnotB (const RegularHyperSlab &sel)
 
DataSpace apply (const DataSpace &space_) const
 
+

Constructor & Destructor Documentation

+ +

◆ HyperSlab() [1/2]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::HyperSlab::HyperSlab ()
+
+inline
+
+ +
+
+ +

◆ HyperSlab() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::HyperSlab::HyperSlab (const RegularHyperSlabsel)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ apply()

+ +
+
+ + + + + +
+ + + + + + + + +
DataSpace HighFive::HyperSlab::apply (const DataSpacespace_) const
+
+inline
+
+ +
+
+ +

◆ notA()

+ +
+
+ + + + + +
+ + + + + + + + +
HyperSlab & HighFive::HyperSlab::notA (const RegularHyperSlabsel)
+
+inline
+
+ +
+
+ +

◆ notB()

+ +
+
+ + + + + +
+ + + + + + + + +
HyperSlab & HighFive::HyperSlab::notB (const RegularHyperSlabsel)
+
+inline
+
+ +
+
+ +

◆ operator&()

+ +
+
+ + + + + +
+ + + + + + + + +
HyperSlab HighFive::HyperSlab::operator& (const RegularHyperSlabsel) const
+
+inline
+
+ +
+
+ +

◆ operator&=()

+ +
+
+ + + + + +
+ + + + + + + + +
HyperSlab & HighFive::HyperSlab::operator&= (const RegularHyperSlabsel)
+
+inline
+
+ +
+
+ +

◆ operator^()

+ +
+
+ + + + + +
+ + + + + + + + +
HyperSlab HighFive::HyperSlab::operator^ (const RegularHyperSlabsel) const
+
+inline
+
+ +
+
+ +

◆ operator^=()

+ +
+
+ + + + + +
+ + + + + + + + +
HyperSlab & HighFive::HyperSlab::operator^= (const RegularHyperSlabsel)
+
+inline
+
+ +
+
+ +

◆ operator|()

+ +
+
+ + + + + +
+ + + + + + + + +
HyperSlab HighFive::HyperSlab::operator| (const RegularHyperSlabsel) const
+
+inline
+
+ +
+
+ +

◆ operator|=()

+ +
+
+ + + + + +
+ + + + + + + + +
HyperSlab & HighFive::HyperSlab::operator|= (const RegularHyperSlabsel)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_hyper_slab.js b/class_high_five_1_1_hyper_slab.js new file mode 100644 index 000000000..a150d77e1 --- /dev/null +++ b/class_high_five_1_1_hyper_slab.js @@ -0,0 +1,14 @@ +var class_high_five_1_1_hyper_slab = +[ + [ "HyperSlab", "class_high_five_1_1_hyper_slab.html#a906f51584d65e1b6fc777d4bc2022553", null ], + [ "HyperSlab", "class_high_five_1_1_hyper_slab.html#adf8bf61c7a39ea30b73f0409c034e4aa", null ], + [ "apply", "class_high_five_1_1_hyper_slab.html#afecb4503d3ce92815710f03b3d0a85b8", null ], + [ "notA", "class_high_five_1_1_hyper_slab.html#a24205d10982c3affd39635caa090bf39", null ], + [ "notB", "class_high_five_1_1_hyper_slab.html#a429775b972d7d5eda1b4f6b63da982c8", null ], + [ "operator&", "class_high_five_1_1_hyper_slab.html#a4fbf1287c34074ca11b3da08c5d0e287", null ], + [ "operator&=", "class_high_five_1_1_hyper_slab.html#a8be464e1993e66453881fe9adb1a0d72", null ], + [ "operator^", "class_high_five_1_1_hyper_slab.html#a65b63a6b8ee96c0b3db1448f133d4208", null ], + [ "operator^=", "class_high_five_1_1_hyper_slab.html#ac18231b7d002a5497626d3cfe7f818e3", null ], + [ "operator|", "class_high_five_1_1_hyper_slab.html#a7fc861f1f4042fae034b358e63e8db71", null ], + [ "operator|=", "class_high_five_1_1_hyper_slab.html#afb1196fb8cfeaff643d4160046092ab6", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_link_creation_order-members.html b/class_high_five_1_1_link_creation_order-members.html new file mode 100644 index 000000000..c624c45e0 --- /dev/null +++ b/class_high_five_1_1_link_creation_order-members.html @@ -0,0 +1,114 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::LinkCreationOrder Member List
+
+
+ +

This is the complete list of members for HighFive::LinkCreationOrder, including all inherited members.

+ + + + + + +
fromPropertyList(hid_t hid)HighFive::LinkCreationOrderinlineprotected
getFlags() constHighFive::LinkCreationOrderinline
LinkCreationOrder(unsigned flags)HighFive::LinkCreationOrderinlineexplicit
LinkCreationOrder(const FileCreateProps &fcpl)HighFive::LinkCreationOrderinlineexplicit
LinkCreationOrder(const GroupCreateProps &gcpl)HighFive::LinkCreationOrderexplicit
+
+ + + + diff --git a/class_high_five_1_1_link_creation_order.html b/class_high_five_1_1_link_creation_order.html new file mode 100644 index 000000000..87d6f48dc --- /dev/null +++ b/class_high_five_1_1_link_creation_order.html @@ -0,0 +1,300 @@ + + + + + + + +HighFive: HighFive::LinkCreationOrder Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::LinkCreationOrder Class Reference
+
+
+ +

Track and index creation order time. + More...

+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::LinkCreationOrder:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::LinkCreationOrder:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + + +

+Public Member Functions

 LinkCreationOrder (unsigned flags)
 Create the property.
 
 LinkCreationOrder (const FileCreateProps &fcpl)
 
 LinkCreationOrder (const GroupCreateProps &gcpl)
 
unsigned getFlags () const
 
+ + + +

+Protected Member Functions

void fromPropertyList (hid_t hid)
 
+

Detailed Description

+

Track and index creation order time.

+

Let user retrieve objects by creation order time instead of name.

+

Constructor & Destructor Documentation

+ +

◆ LinkCreationOrder() [1/3]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::LinkCreationOrder::LinkCreationOrder (unsigned flags)
+
+inlineexplicit
+
+ +

Create the property.

+
Parameters
+ + +
flagsShould be a composition of HighFive::CreationOrder.
+
+
+ +
+
+ +

◆ LinkCreationOrder() [2/3]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::LinkCreationOrder::LinkCreationOrder (const FileCreatePropsfcpl)
+
+inlineexplicit
+
+ +
+
+ +

◆ LinkCreationOrder() [3/3]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::LinkCreationOrder::LinkCreationOrder (const GroupCreatePropsgcpl)
+
+explicit
+
+ +
+
+

Member Function Documentation

+ +

◆ fromPropertyList()

+ +
+
+ + + + + +
+ + + + + + + + +
void HighFive::LinkCreationOrder::fromPropertyList (hid_t hid)
+
+inlineprotected
+
+ +
+
+ +

◆ getFlags()

+ +
+
+ + + + + +
+ + + + + + + +
unsigned HighFive::LinkCreationOrder::getFlags () const
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_link_creation_order.js b/class_high_five_1_1_link_creation_order.js new file mode 100644 index 000000000..8243aad47 --- /dev/null +++ b/class_high_five_1_1_link_creation_order.js @@ -0,0 +1,8 @@ +var class_high_five_1_1_link_creation_order = +[ + [ "LinkCreationOrder", "class_high_five_1_1_link_creation_order.html#a5a0c8614e72358c1723153a06d2c11e6", null ], + [ "LinkCreationOrder", "class_high_five_1_1_link_creation_order.html#aff78af3c9313f37f86bb9aa172440377", null ], + [ "LinkCreationOrder", "class_high_five_1_1_link_creation_order.html#a1048f06282af8a1a5441e359fc5944f3", null ], + [ "fromPropertyList", "class_high_five_1_1_link_creation_order.html#a6bcc5d01c7a4aa1630b192aa62ff3dd9", null ], + [ "getFlags", "class_high_five_1_1_link_creation_order.html#ae4f83f749697446de9d56e593bc78a1a", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_link_creation_order__coll__graph.map b/class_high_five_1_1_link_creation_order__coll__graph.map new file mode 100644 index 000000000..605afc81b --- /dev/null +++ b/class_high_five_1_1_link_creation_order__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_link_creation_order__coll__graph.md5 b/class_high_five_1_1_link_creation_order__coll__graph.md5 new file mode 100644 index 000000000..edeee5136 --- /dev/null +++ b/class_high_five_1_1_link_creation_order__coll__graph.md5 @@ -0,0 +1 @@ +ce37f98e383a609115802afcadcb6932 \ No newline at end of file diff --git a/class_high_five_1_1_link_creation_order__coll__graph.png b/class_high_five_1_1_link_creation_order__coll__graph.png new file mode 100644 index 000000000..130b1e95e Binary files /dev/null and b/class_high_five_1_1_link_creation_order__coll__graph.png differ diff --git a/class_high_five_1_1_link_creation_order__inherit__graph.map b/class_high_five_1_1_link_creation_order__inherit__graph.map new file mode 100644 index 000000000..605afc81b --- /dev/null +++ b/class_high_five_1_1_link_creation_order__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_link_creation_order__inherit__graph.md5 b/class_high_five_1_1_link_creation_order__inherit__graph.md5 new file mode 100644 index 000000000..edeee5136 --- /dev/null +++ b/class_high_five_1_1_link_creation_order__inherit__graph.md5 @@ -0,0 +1 @@ +ce37f98e383a609115802afcadcb6932 \ No newline at end of file diff --git a/class_high_five_1_1_link_creation_order__inherit__graph.png b/class_high_five_1_1_link_creation_order__inherit__graph.png new file mode 100644 index 000000000..130b1e95e Binary files /dev/null and b/class_high_five_1_1_link_creation_order__inherit__graph.png differ diff --git a/class_high_five_1_1_logger-members.html b/class_high_five_1_1_logger-members.html new file mode 100644 index 000000000..15eb62c1d --- /dev/null +++ b/class_high_five_1_1_logger-members.html @@ -0,0 +1,118 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Logger Member List
+
+
+ +

This is the complete list of members for HighFive::Logger, including all inherited members.

+ + + + + + + + + + +
callback_type typedefHighFive::Logger
log(LogSeverity severity, const std::string &message, const std::string &file, int line)HighFive::Loggerinline
Logger()=deleteHighFive::Logger
Logger(const Logger &)=deleteHighFive::Logger
Logger(Logger &&)=deleteHighFive::Logger
Logger(callback_type cb)HighFive::Loggerinlineexplicit
operator=(const Logger &)=deleteHighFive::Logger
operator=(Logger &&)=deleteHighFive::Logger
set_logging_callback(callback_type cb)HighFive::Loggerinline
+
+ + + + diff --git a/class_high_five_1_1_logger.html b/class_high_five_1_1_logger.html new file mode 100644 index 000000000..339186c26 --- /dev/null +++ b/class_high_five_1_1_logger.html @@ -0,0 +1,400 @@ + + + + + + + +HighFive: HighFive::Logger Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Logger Class Reference
+
+
+ +

A logger with supporting basic functionality. + More...

+ +

#include <H5Utility.hpp>

+ + + + +

+Public Types

using callback_type = std::function< void(LogSeverity, const std::string &, const std::string &, int)>
 
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

 Logger ()=delete
 
 Logger (const Logger &)=delete
 
 Logger (Logger &&)=delete
 
 Logger (callback_type cb)
 
Loggeroperator= (const Logger &)=delete
 
Loggeroperator= (Logger &&)=delete
 
void log (LogSeverity severity, const std::string &message, const std::string &file, int line)
 
void set_logging_callback (callback_type cb)
 
+

Detailed Description

+

A logger with supporting basic functionality.

+

This logger delegates the logging task to a callback. This level of indirection enables using the default Python logger from C++; or integrating HighFive into some custom logging solution.

+

Using this class directly to log is not intended. Rather you should use

    +
  • HIGHFIVE_LOG_DEBUG{,_IF}
  • +
  • HIGHFIVE_LOG_INFO{,_IF}
  • +
  • HIGHFIVE_LOG_WARNING{,_IF}
  • +
  • HIGHFIVE_LOG_ERROR{,_IF}
  • +
+

This is intended to used as a singleton, via get_global_logger().

+

Member Typedef Documentation

+ +

◆ callback_type

+ +
+
+ + + + +
using HighFive::Logger::callback_type = std::function<void(LogSeverity, const std::string&, const std::string&, int)>
+
+ +
+
+

Constructor & Destructor Documentation

+ +

◆ Logger() [1/4]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Logger::Logger ()
+
+delete
+
+ +
+
+ +

◆ Logger() [2/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Logger::Logger (const Logger)
+
+delete
+
+ +
+
+ +

◆ Logger() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Logger::Logger (Logger && )
+
+delete
+
+ +
+
+ +

◆ Logger() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Logger::Logger (callback_type cb)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ log()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void HighFive::Logger::log (LogSeverity severity,
const std::string & message,
const std::string & file,
int line 
)
+
+inline
+
+ +
+
+ +

◆ operator=() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + +
Logger & HighFive::Logger::operator= (const Logger)
+
+delete
+
+ +
+
+ +

◆ operator=() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
Logger & HighFive::Logger::operator= (Logger && )
+
+delete
+
+ +
+
+ +

◆ set_logging_callback()

+ +
+
+ + + + + +
+ + + + + + + + +
void HighFive::Logger::set_logging_callback (callback_type cb)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_logger.js b/class_high_five_1_1_logger.js new file mode 100644 index 000000000..9e03cabed --- /dev/null +++ b/class_high_five_1_1_logger.js @@ -0,0 +1,12 @@ +var class_high_five_1_1_logger = +[ + [ "callback_type", "class_high_five_1_1_logger.html#a538145a3e19ae36b55a7637dcfe5f414", null ], + [ "Logger", "class_high_five_1_1_logger.html#ac6a56a0dea78afb911374249840cc01a", null ], + [ "Logger", "class_high_five_1_1_logger.html#a202182c21665e372d6e4585484fccae5", null ], + [ "Logger", "class_high_five_1_1_logger.html#aac5d99393c23b4f206a743864e80f7c8", null ], + [ "Logger", "class_high_five_1_1_logger.html#ac5aff73990e80aab9f83c798462115c3", null ], + [ "log", "class_high_five_1_1_logger.html#ae9138a12937186d1ebea1900a488b13c", null ], + [ "operator=", "class_high_five_1_1_logger.html#a3e8a6cd1370289fe31e268eeda19d271", null ], + [ "operator=", "class_high_five_1_1_logger.html#ad1fea19d9a24a52b09c3bdaf4e8a4288", null ], + [ "set_logging_callback", "class_high_five_1_1_logger.html#a9b42228f1091409f5fc4b09a25fed4fc", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_m_p_i_o_collective_metadata-members.html b/class_high_five_1_1_m_p_i_o_collective_metadata-members.html new file mode 100644 index 000000000..88816be2f --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_collective_metadata-members.html @@ -0,0 +1,113 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::MPIOCollectiveMetadata Member List
+
+
+ +

This is the complete list of members for HighFive::MPIOCollectiveMetadata, including all inherited members.

+ + + + + +
isCollectiveRead() constHighFive::MPIOCollectiveMetadatainline
isCollectiveWrite() constHighFive::MPIOCollectiveMetadatainline
MPIOCollectiveMetadata(bool collective=true)HighFive::MPIOCollectiveMetadatainlineexplicit
MPIOCollectiveMetadata(const FileAccessProps &plist)HighFive::MPIOCollectiveMetadatainlineexplicit
+
+ + + + diff --git a/class_high_five_1_1_m_p_i_o_collective_metadata.html b/class_high_five_1_1_m_p_i_o_collective_metadata.html new file mode 100644 index 000000000..5c9ea2517 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_collective_metadata.html @@ -0,0 +1,238 @@ + + + + + + + +HighFive: HighFive::MPIOCollectiveMetadata Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::MPIOCollectiveMetadata Class Reference
+
+
+ +

Use collective MPI-IO for metadata read and write. + More...

+ +

#include <H5PropertyList.hpp>

+ + + + + + + + + + +

+Public Member Functions

 MPIOCollectiveMetadata (bool collective=true)
 
 MPIOCollectiveMetadata (const FileAccessProps &plist)
 
bool isCollectiveRead () const
 
bool isCollectiveWrite () const
 
+

Detailed Description

+

Use collective MPI-IO for metadata read and write.

+

See MPIOCollectiveMetadataRead and MPIOCollectiveMetadataWrite.

+

Constructor & Destructor Documentation

+ +

◆ MPIOCollectiveMetadata() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::MPIOCollectiveMetadata::MPIOCollectiveMetadata (bool collective = true)
+
+inlineexplicit
+
+ +
+
+ +

◆ MPIOCollectiveMetadata() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::MPIOCollectiveMetadata::MPIOCollectiveMetadata (const FileAccessPropsplist)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ isCollectiveRead()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::MPIOCollectiveMetadata::isCollectiveRead () const
+
+inline
+
+ +
+
+ +

◆ isCollectiveWrite()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::MPIOCollectiveMetadata::isCollectiveWrite () const
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_m_p_i_o_collective_metadata.js b/class_high_five_1_1_m_p_i_o_collective_metadata.js new file mode 100644 index 000000000..a6330e7a5 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_collective_metadata.js @@ -0,0 +1,7 @@ +var class_high_five_1_1_m_p_i_o_collective_metadata = +[ + [ "MPIOCollectiveMetadata", "class_high_five_1_1_m_p_i_o_collective_metadata.html#aa273f14cc489a313724a59913bd8840d", null ], + [ "MPIOCollectiveMetadata", "class_high_five_1_1_m_p_i_o_collective_metadata.html#a716e7e59938e1525153101fdfa034e69", null ], + [ "isCollectiveRead", "class_high_five_1_1_m_p_i_o_collective_metadata.html#af3ebb2ba4ab6fb2d662a0b2ba8090241", null ], + [ "isCollectiveWrite", "class_high_five_1_1_m_p_i_o_collective_metadata.html#a9282c33bb738a814f8d33fdeecc12a5a", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_m_p_i_o_collective_metadata_read-members.html b/class_high_five_1_1_m_p_i_o_collective_metadata_read-members.html new file mode 100644 index 000000000..442df2f72 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_collective_metadata_read-members.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::MPIOCollectiveMetadataRead Member List
+
+
+ +

This is the complete list of members for HighFive::MPIOCollectiveMetadataRead, including all inherited members.

+ + + + +
isCollective() constHighFive::MPIOCollectiveMetadataReadinline
MPIOCollectiveMetadataRead(bool collective=true)HighFive::MPIOCollectiveMetadataReadinlineexplicit
MPIOCollectiveMetadataRead(const FileAccessProps &plist)HighFive::MPIOCollectiveMetadataReadinlineexplicit
+
+ + + + diff --git a/class_high_five_1_1_m_p_i_o_collective_metadata_read.html b/class_high_five_1_1_m_p_i_o_collective_metadata_read.html new file mode 100644 index 000000000..3eb1d1c85 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_collective_metadata_read.html @@ -0,0 +1,213 @@ + + + + + + + +HighFive: HighFive::MPIOCollectiveMetadataRead Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::MPIOCollectiveMetadataRead Class Reference
+
+
+ +

Use collective MPI-IO for metadata read? + More...

+ +

#include <H5PropertyList.hpp>

+ + + + + + + + +

+Public Member Functions

 MPIOCollectiveMetadataRead (bool collective=true)
 
 MPIOCollectiveMetadataRead (const FileAccessProps &plist)
 
bool isCollective () const
 
+

Detailed Description

+

Use collective MPI-IO for metadata read?

+

Note that when used in a file access property list, this will force all reads of meta data to be collective. HDF5 function may implicitly perform metadata reads. These functions would become collective. A list of functions that perform metadata reads can be found in the HDF5 documentation, e.g. https://docs.hdfgroup.org/hdf5/v1_12/group___g_a_c_p_l.html

+

In HighFive setting collective read is (currently) only supported on file level.

+

Please also consult upstream documentation of H5Pset_all_coll_metadata_ops.

+

Constructor & Destructor Documentation

+ +

◆ MPIOCollectiveMetadataRead() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::MPIOCollectiveMetadataRead::MPIOCollectiveMetadataRead (bool collective = true)
+
+inlineexplicit
+
+ +
+
+ +

◆ MPIOCollectiveMetadataRead() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::MPIOCollectiveMetadataRead::MPIOCollectiveMetadataRead (const FileAccessPropsplist)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ isCollective()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::MPIOCollectiveMetadataRead::isCollective () const
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_m_p_i_o_collective_metadata_read.js b/class_high_five_1_1_m_p_i_o_collective_metadata_read.js new file mode 100644 index 000000000..5c0324ed1 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_collective_metadata_read.js @@ -0,0 +1,6 @@ +var class_high_five_1_1_m_p_i_o_collective_metadata_read = +[ + [ "MPIOCollectiveMetadataRead", "class_high_five_1_1_m_p_i_o_collective_metadata_read.html#af8ac47ce64a701baf44b64d667a856f5", null ], + [ "MPIOCollectiveMetadataRead", "class_high_five_1_1_m_p_i_o_collective_metadata_read.html#ac2f4ca377bba5b754b234af54feef0fb", null ], + [ "isCollective", "class_high_five_1_1_m_p_i_o_collective_metadata_read.html#a4265828f973406654c64a83469aac0c7", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_m_p_i_o_collective_metadata_write-members.html b/class_high_five_1_1_m_p_i_o_collective_metadata_write-members.html new file mode 100644 index 000000000..62d2f6c6b --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_collective_metadata_write-members.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::MPIOCollectiveMetadataWrite Member List
+
+
+ +

This is the complete list of members for HighFive::MPIOCollectiveMetadataWrite, including all inherited members.

+ + + + +
isCollective() constHighFive::MPIOCollectiveMetadataWriteinline
MPIOCollectiveMetadataWrite(bool collective=true)HighFive::MPIOCollectiveMetadataWriteinlineexplicit
MPIOCollectiveMetadataWrite(const FileAccessProps &plist)HighFive::MPIOCollectiveMetadataWriteinlineexplicit
+
+ + + + diff --git a/class_high_five_1_1_m_p_i_o_collective_metadata_write.html b/class_high_five_1_1_m_p_i_o_collective_metadata_write.html new file mode 100644 index 000000000..4975f1671 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_collective_metadata_write.html @@ -0,0 +1,212 @@ + + + + + + + +HighFive: HighFive::MPIOCollectiveMetadataWrite Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::MPIOCollectiveMetadataWrite Class Reference
+
+
+ +

Use collective MPI-IO for metadata write? + More...

+ +

#include <H5PropertyList.hpp>

+ + + + + + + + +

+Public Member Functions

 MPIOCollectiveMetadataWrite (bool collective=true)
 
 MPIOCollectiveMetadataWrite (const FileAccessProps &plist)
 
bool isCollective () const
 
+

Detailed Description

+

Use collective MPI-IO for metadata write?

+

In order to keep the in-memory representation of the file structure consistent across MPI ranks, writing meta data is always a collective operation. Meaning all MPI ranks must participate. Passing this setting enables using MPI-IO collective operations for metadata writes.

+

Please also consult upstream documentation of H5Pset_coll_metadata_write.

+

Constructor & Destructor Documentation

+ +

◆ MPIOCollectiveMetadataWrite() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::MPIOCollectiveMetadataWrite::MPIOCollectiveMetadataWrite (bool collective = true)
+
+inlineexplicit
+
+ +
+
+ +

◆ MPIOCollectiveMetadataWrite() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::MPIOCollectiveMetadataWrite::MPIOCollectiveMetadataWrite (const FileAccessPropsplist)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ isCollective()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::MPIOCollectiveMetadataWrite::isCollective () const
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_m_p_i_o_collective_metadata_write.js b/class_high_five_1_1_m_p_i_o_collective_metadata_write.js new file mode 100644 index 000000000..bf7e5cb0c --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_collective_metadata_write.js @@ -0,0 +1,6 @@ +var class_high_five_1_1_m_p_i_o_collective_metadata_write = +[ + [ "MPIOCollectiveMetadataWrite", "class_high_five_1_1_m_p_i_o_collective_metadata_write.html#a46a964115d60428283787bba9a0e132c", null ], + [ "MPIOCollectiveMetadataWrite", "class_high_five_1_1_m_p_i_o_collective_metadata_write.html#ad06fd31a56e9437171af557649de8a2b", null ], + [ "isCollective", "class_high_five_1_1_m_p_i_o_collective_metadata_write.html#a15d145eb132a4009717cfde7a657c5e1", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_m_p_i_o_file_access-members.html b/class_high_five_1_1_m_p_i_o_file_access-members.html new file mode 100644 index 000000000..77c5fddcc --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_file_access-members.html @@ -0,0 +1,110 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::MPIOFileAccess Member List
+
+
+ +

This is the complete list of members for HighFive::MPIOFileAccess, including all inherited members.

+ + +
MPIOFileAccess(MPI_Comm comm, MPI_Info info)HighFive::MPIOFileAccessinline
+
+ + + + diff --git a/class_high_five_1_1_m_p_i_o_file_access.html b/class_high_five_1_1_m_p_i_o_file_access.html new file mode 100644 index 000000000..8d52d46c1 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_file_access.html @@ -0,0 +1,165 @@ + + + + + + + +HighFive: HighFive::MPIOFileAccess Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::MPIOFileAccess Class Reference
+
+
+ +

Configure MPI access for the file. + More...

+ +

#include <H5PropertyList.hpp>

+ + + + +

+Public Member Functions

 MPIOFileAccess (MPI_Comm comm, MPI_Info info)
 
+

Detailed Description

+

Configure MPI access for the file.

+

All further modifications to the structure of the file will have to be done with collective operations

+

Constructor & Destructor Documentation

+ +

◆ MPIOFileAccess()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::MPIOFileAccess::MPIOFileAccess (MPI_Comm comm,
MPI_Info info 
)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_m_p_i_o_file_access.js b/class_high_five_1_1_m_p_i_o_file_access.js new file mode 100644 index 000000000..fcd1fb74a --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_file_access.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_m_p_i_o_file_access = +[ + [ "MPIOFileAccess", "class_high_five_1_1_m_p_i_o_file_access.html#a45ed3e2138f4fcf8292a8f5bb01434c8", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_m_p_i_o_file_driver-members.html b/class_high_five_1_1_m_p_i_o_file_driver-members.html new file mode 100644 index 000000000..32ea49d31 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_file_driver-members.html @@ -0,0 +1,126 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::MPIOFileDriver Member List
+
+
+ +

This is the complete list of members for HighFive::MPIOFileDriver, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
_initializeIfNeeded()HighFive::PropertyList< T >inlineprotected
add(const P &property)HighFive::PropertyList< T >inline
Default() noexceptHighFive::PropertyList< T >inlinestatic
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getType() const noexceptHighFive::PropertyList< T >inline
isValid() const noexceptHighFive::Objectinline
MPIOFileDriver(MPI_Comm mpi_comm, MPI_Info mpi_info)HighFive::MPIOFileDriverinline
Object(Object &&other) noexceptHighFive::Objectinline
Object()HighFive::Objectinlineprotected
Object(const Object &other)HighFive::Objectinlineprotected
Object(hid_t)HighFive::Objectinlineexplicitprotected
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
PropertyListBase() noexceptHighFive::PropertyListBaseinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_m_p_i_o_file_driver.html b/class_high_five_1_1_m_p_i_o_file_driver.html new file mode 100644 index 000000000..64299edf2 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_file_driver.html @@ -0,0 +1,247 @@ + + + + + + + +HighFive: HighFive::MPIOFileDriver Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::MPIOFileDriver Class Reference
+
+
+ +

MPIIO Driver for Parallel HDF5. + More...

+ +

#include <H5FileDriver.hpp>

+
+Inheritance diagram for HighFive::MPIOFileDriver:
+
+
Inheritance graph
+ + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::MPIOFileDriver:
+
+
Collaboration graph
+ + + + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 MPIOFileDriver (MPI_Comm mpi_comm, MPI_Info mpi_info)
 
- Public Member Functions inherited from HighFive::PropertyList< T >
constexpr PropertyType getType () const noexcept
 return the type of this PropertyList
 
template<PropertyInterface P>
void add (const P &property)
 
- Public Member Functions inherited from HighFive::PropertyListBase
 PropertyListBase () noexcept
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from HighFive::PropertyList< T >
static const PropertyList< T > & Default () noexcept
 Return the Default property type object.
 
- Static Public Member Functions inherited from HighFive::PropertyListBase
static const PropertyListBaseDefault () noexcept
 
- Protected Member Functions inherited from HighFive::PropertyList< T >
void _initializeIfNeeded ()
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+

MPIIO Driver for Parallel HDF5.

+
Deprecated:
Add MPIOFileAccess directly to FileAccessProps
+

Constructor & Destructor Documentation

+ +

◆ MPIOFileDriver()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::MPIOFileDriver::MPIOFileDriver (MPI_Comm mpi_comm,
MPI_Info mpi_info 
)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_m_p_i_o_file_driver.js b/class_high_five_1_1_m_p_i_o_file_driver.js new file mode 100644 index 000000000..7973c8a7b --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_file_driver.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_m_p_i_o_file_driver = +[ + [ "MPIOFileDriver", "class_high_five_1_1_m_p_i_o_file_driver.html#a4659563e3c44c0361429df270b03e778", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_m_p_i_o_file_driver__coll__graph.map b/class_high_five_1_1_m_p_i_o_file_driver__coll__graph.map new file mode 100644 index 000000000..db42b9f73 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_file_driver__coll__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_m_p_i_o_file_driver__coll__graph.md5 b/class_high_five_1_1_m_p_i_o_file_driver__coll__graph.md5 new file mode 100644 index 000000000..067bb7039 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_file_driver__coll__graph.md5 @@ -0,0 +1 @@ +eca2b40405e6181333bb3a05af190c33 \ No newline at end of file diff --git a/class_high_five_1_1_m_p_i_o_file_driver__coll__graph.png b/class_high_five_1_1_m_p_i_o_file_driver__coll__graph.png new file mode 100644 index 000000000..c1c3135f7 Binary files /dev/null and b/class_high_five_1_1_m_p_i_o_file_driver__coll__graph.png differ diff --git a/class_high_five_1_1_m_p_i_o_file_driver__inherit__graph.map b/class_high_five_1_1_m_p_i_o_file_driver__inherit__graph.map new file mode 100644 index 000000000..db42b9f73 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_file_driver__inherit__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_m_p_i_o_file_driver__inherit__graph.md5 b/class_high_five_1_1_m_p_i_o_file_driver__inherit__graph.md5 new file mode 100644 index 000000000..067bb7039 --- /dev/null +++ b/class_high_five_1_1_m_p_i_o_file_driver__inherit__graph.md5 @@ -0,0 +1 @@ +eca2b40405e6181333bb3a05af190c33 \ No newline at end of file diff --git a/class_high_five_1_1_m_p_i_o_file_driver__inherit__graph.png b/class_high_five_1_1_m_p_i_o_file_driver__inherit__graph.png new file mode 100644 index 000000000..c1c3135f7 Binary files /dev/null and b/class_high_five_1_1_m_p_i_o_file_driver__inherit__graph.png differ diff --git a/class_high_five_1_1_metadata_block_size-members.html b/class_high_five_1_1_metadata_block_size-members.html new file mode 100644 index 000000000..1d425960c --- /dev/null +++ b/class_high_five_1_1_metadata_block_size-members.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::MetadataBlockSize Member List
+
+
+ +

This is the complete list of members for HighFive::MetadataBlockSize, including all inherited members.

+ + + + +
getSize() constHighFive::MetadataBlockSizeinline
MetadataBlockSize(hsize_t size)HighFive::MetadataBlockSizeinlineexplicit
MetadataBlockSize(const FileAccessProps &fapl)HighFive::MetadataBlockSizeinlineexplicit
+
+ + + + diff --git a/class_high_five_1_1_metadata_block_size.html b/class_high_five_1_1_metadata_block_size.html new file mode 100644 index 000000000..d193ec33d --- /dev/null +++ b/class_high_five_1_1_metadata_block_size.html @@ -0,0 +1,216 @@ + + + + + + + +HighFive: HighFive::MetadataBlockSize Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::MetadataBlockSize Class Reference
+
+
+ +

Configure the metadata block size to use writing to files. + More...

+ +

#include <H5PropertyList.hpp>

+ + + + + + + + +

+Public Member Functions

 MetadataBlockSize (hsize_t size)
 
 MetadataBlockSize (const FileAccessProps &fapl)
 
hsize_t getSize () const
 
+

Detailed Description

+

Configure the metadata block size to use writing to files.

+
Parameters
+ + +
sizeMetadata block size in bytes
+
+
+

Constructor & Destructor Documentation

+ +

◆ MetadataBlockSize() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::MetadataBlockSize::MetadataBlockSize (hsize_t size)
+
+inlineexplicit
+
+ +
+
+ +

◆ MetadataBlockSize() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::MetadataBlockSize::MetadataBlockSize (const FileAccessPropsfapl)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ getSize()

+ +
+
+ + + + + +
+ + + + + + + +
hsize_t HighFive::MetadataBlockSize::getSize () const
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_metadata_block_size.js b/class_high_five_1_1_metadata_block_size.js new file mode 100644 index 000000000..00fc7162d --- /dev/null +++ b/class_high_five_1_1_metadata_block_size.js @@ -0,0 +1,6 @@ +var class_high_five_1_1_metadata_block_size = +[ + [ "MetadataBlockSize", "class_high_five_1_1_metadata_block_size.html#a02efd5d5aa5311ecc74f44c4b8b82d78", null ], + [ "MetadataBlockSize", "class_high_five_1_1_metadata_block_size.html#a23661a48122522263bd7f3ec3f245101", null ], + [ "getSize", "class_high_five_1_1_metadata_block_size.html#aee2a49ebdc426f1794c154e3d1b2f871", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_mpio_no_collective_cause-members.html b/class_high_five_1_1_mpio_no_collective_cause-members.html new file mode 100644 index 000000000..d3e537cb9 --- /dev/null +++ b/class_high_five_1_1_mpio_no_collective_cause-members.html @@ -0,0 +1,114 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::MpioNoCollectiveCause Member List
+
+
+ +

This is the complete list of members for HighFive::MpioNoCollectiveCause, including all inherited members.

+ + + + + + +
getCause() constHighFive::MpioNoCollectiveCauseinline
getGlobalCause() constHighFive::MpioNoCollectiveCauseinline
getLocalCause() constHighFive::MpioNoCollectiveCauseinline
MpioNoCollectiveCause(const DataTransferProps &dxpl)HighFive::MpioNoCollectiveCauseinlineexplicit
wasCollective() constHighFive::MpioNoCollectiveCauseinline
+
+ + + + diff --git a/class_high_five_1_1_mpio_no_collective_cause.html b/class_high_five_1_1_mpio_no_collective_cause.html new file mode 100644 index 000000000..d267002c8 --- /dev/null +++ b/class_high_five_1_1_mpio_no_collective_cause.html @@ -0,0 +1,296 @@ + + + + + + + +HighFive: HighFive::MpioNoCollectiveCause Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::MpioNoCollectiveCause Class Reference
+
+
+ +

The cause for non-collective I/O. + More...

+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::MpioNoCollectiveCause:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::MpioNoCollectiveCause:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + + + + + + + +

+Public Member Functions

 MpioNoCollectiveCause (const DataTransferProps &dxpl)
 
bool wasCollective () const
 Was the datatransfer collective?
 
uint32_t getLocalCause () const
 The local cause for a non-collective I/O.
 
uint32_t getGlobalCause () const
 The global cause for a non-collective I/O.
 
std::pair< uint32_t, uint32_t > getCause () const
 A pair of the local and global cause for non-collective I/O.
 
+

Detailed Description

+

The cause for non-collective I/O.

+

The cause refers to the most recent I/O with data transfer property list dxpl at time of creation of this object. This object will not update automatically for later data transfers, i.e. H5Pget_mpio_no_collective_cause is called in the constructor, and not when fetching a value, such as wasCollective.

+

Constructor & Destructor Documentation

+ +

◆ MpioNoCollectiveCause()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::MpioNoCollectiveCause::MpioNoCollectiveCause (const DataTransferPropsdxpl)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ getCause()

+ +
+
+ + + + + +
+ + + + + + + +
std::pair< uint32_t, uint32_t > HighFive::MpioNoCollectiveCause::getCause () const
+
+inline
+
+ +

A pair of the local and global cause for non-collective I/O.

+ +
+
+ +

◆ getGlobalCause()

+ +
+
+ + + + + +
+ + + + + + + +
uint32_t HighFive::MpioNoCollectiveCause::getGlobalCause () const
+
+inline
+
+ +

The global cause for a non-collective I/O.

+ +
+
+ +

◆ getLocalCause()

+ +
+
+ + + + + +
+ + + + + + + +
uint32_t HighFive::MpioNoCollectiveCause::getLocalCause () const
+
+inline
+
+ +

The local cause for a non-collective I/O.

+ +
+
+ +

◆ wasCollective()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::MpioNoCollectiveCause::wasCollective () const
+
+inline
+
+ +

Was the datatransfer collective?

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_mpio_no_collective_cause.js b/class_high_five_1_1_mpio_no_collective_cause.js new file mode 100644 index 000000000..b3753035e --- /dev/null +++ b/class_high_five_1_1_mpio_no_collective_cause.js @@ -0,0 +1,8 @@ +var class_high_five_1_1_mpio_no_collective_cause = +[ + [ "MpioNoCollectiveCause", "class_high_five_1_1_mpio_no_collective_cause.html#a902c6632085083f0404d1542a1c267ca", null ], + [ "getCause", "class_high_five_1_1_mpio_no_collective_cause.html#a7b1b28211a950b4652a0336559f4be6d", null ], + [ "getGlobalCause", "class_high_five_1_1_mpio_no_collective_cause.html#a4b3a653e043b86ea0dfb3a7afdff2cb7", null ], + [ "getLocalCause", "class_high_five_1_1_mpio_no_collective_cause.html#affcbf437d343b3442cfda7da969f4d37", null ], + [ "wasCollective", "class_high_five_1_1_mpio_no_collective_cause.html#a6d388115bac6e233bec17c6833206425", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_mpio_no_collective_cause__coll__graph.map b/class_high_five_1_1_mpio_no_collective_cause__coll__graph.map new file mode 100644 index 000000000..2b0f7f977 --- /dev/null +++ b/class_high_five_1_1_mpio_no_collective_cause__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_mpio_no_collective_cause__coll__graph.md5 b/class_high_five_1_1_mpio_no_collective_cause__coll__graph.md5 new file mode 100644 index 000000000..ef5f86890 --- /dev/null +++ b/class_high_five_1_1_mpio_no_collective_cause__coll__graph.md5 @@ -0,0 +1 @@ +e46ca092c846a70719a29dd5e6052a71 \ No newline at end of file diff --git a/class_high_five_1_1_mpio_no_collective_cause__coll__graph.png b/class_high_five_1_1_mpio_no_collective_cause__coll__graph.png new file mode 100644 index 000000000..fb088625b Binary files /dev/null and b/class_high_five_1_1_mpio_no_collective_cause__coll__graph.png differ diff --git a/class_high_five_1_1_mpio_no_collective_cause__inherit__graph.map b/class_high_five_1_1_mpio_no_collective_cause__inherit__graph.map new file mode 100644 index 000000000..2b0f7f977 --- /dev/null +++ b/class_high_five_1_1_mpio_no_collective_cause__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_mpio_no_collective_cause__inherit__graph.md5 b/class_high_five_1_1_mpio_no_collective_cause__inherit__graph.md5 new file mode 100644 index 000000000..ef5f86890 --- /dev/null +++ b/class_high_five_1_1_mpio_no_collective_cause__inherit__graph.md5 @@ -0,0 +1 @@ +e46ca092c846a70719a29dd5e6052a71 \ No newline at end of file diff --git a/class_high_five_1_1_mpio_no_collective_cause__inherit__graph.png b/class_high_five_1_1_mpio_no_collective_cause__inherit__graph.png new file mode 100644 index 000000000..fb088625b Binary files /dev/null and b/class_high_five_1_1_mpio_no_collective_cause__inherit__graph.png differ diff --git a/class_high_five_1_1_node_traits-members.html b/class_high_five_1_1_node_traits-members.html new file mode 100644 index 000000000..77321fba0 --- /dev/null +++ b/class_high_five_1_1_node_traits-members.html @@ -0,0 +1,131 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::NodeTraits< Derivate > Member List
+
+
+ +

This is the complete list of members for HighFive::NodeTraits< Derivate >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + +
createDataSet(const std::string &dataset_name, const DataSpace &space, const DataType &type, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< Derivate >inline
createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< Derivate >inline
createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< Derivate >
createDataSet(const std::string &dataset_name, const T &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< Derivate >inline
createDataSet(const std::string &dataset_name, const FixedLenStringArray< N > &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)HighFive::NodeTraits< Derivate >inline
createExternalLink(const std::string &link_name, const std::string &h5_file, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)HighFive::NodeTraits< Derivate >inline
createGroup(const std::string &group_name, bool parents=true)HighFive::NodeTraits< Derivate >inline
createGroup(const std::string &group_name, const GroupCreateProps &createProps, bool parents=true)HighFive::NodeTraits< Derivate >inline
createHardLink(const std::string &link_name, const T &target_obj, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)HighFive::NodeTraits< Derivate >inline
createSoftLink(const std::string &linkName, const T &obj)HighFive::NodeTraits< Derivate >inline
createSoftLink(const std::string &link_name, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)HighFive::NodeTraits< Derivate >inline
exist(const std::string &node_name) constHighFive::NodeTraits< Derivate >inline
getDataSet(const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps::Default()) constHighFive::NodeTraits< Derivate >inline
getDataType(const std::string &type_name, const DataTypeAccessProps &accessProps=DataTypeAccessProps::Default()) constHighFive::NodeTraits< Derivate >inline
getGroup(const std::string &group_name) constHighFive::NodeTraits< Derivate >inline
getLinkType(const std::string &node_name) constHighFive::NodeTraits< Derivate >inline
getNumberObjects() constHighFive::NodeTraits< Derivate >inline
getObjectName(size_t index) constHighFive::NodeTraits< Derivate >inline
getObjectType(const std::string &node_name) constHighFive::NodeTraits< Derivate >inline
listObjectNames(IndexType idx_type=IndexType::NAME) constHighFive::NodeTraits< Derivate >inline
rename(const std::string &src_path, const std::string &dest_path, bool parents=true) constHighFive::NodeTraits< Derivate >inline
unlink(const std::string &node_name) constHighFive::NodeTraits< Derivate >inline
+
+ + + + diff --git a/class_high_five_1_1_node_traits.html b/class_high_five_1_1_node_traits.html new file mode 100644 index 000000000..09d4f2762 --- /dev/null +++ b/class_high_five_1_1_node_traits.html @@ -0,0 +1,1298 @@ + + + + + + + +HighFive: HighFive::NodeTraits< Derivate > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::NodeTraits< Derivate > Class Template Reference
+
+
+ +

NodeTraits: Base class for Group and File. + More...

+ +

#include <H5Node_traits.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

DataSet createDataSet (const std::string &dataset_name, const DataSpace &space, const DataType &type, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 createDataSet Create a new dataset in the current file of datatype type and of size space
 
template<typename T , typename std::enable_if< std::is_same< typename details::inspector< T >::base_type, details::Boolean >::value, int >::type * = nullptr>
DataSet createDataSet (const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 createDataSet create a new dataset in the current file with a size specified by space
 
template<typename T , typename std::enable_if< !std::is_same< typename details::inspector< T >::base_type, details::Boolean >::value, int >::type * = nullptr>
DataSet createDataSet (const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 
template<typename T >
DataSet createDataSet (const std::string &dataset_name, const T &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 createDataSet create a new dataset in the current file and write to it, inferring the DataSpace from the data.
 
template<std::size_t N>
DataSet createDataSet (const std::string &dataset_name, const FixedLenStringArray< N > &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)
 
DataSet getDataSet (const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps::Default()) const
 get an existing dataset in the current file
 
Group createGroup (const std::string &group_name, bool parents=true)
 create a new group, and eventually intermediate groups
 
Group createGroup (const std::string &group_name, const GroupCreateProps &createProps, bool parents=true)
 create a new group, and eventually intermediate groups
 
Group getGroup (const std::string &group_name) const
 open an existing group with the name group_name
 
DataType getDataType (const std::string &type_name, const DataTypeAccessProps &accessProps=DataTypeAccessProps::Default()) const
 open a commited datatype with the name type_name
 
size_t getNumberObjects () const
 return the number of leaf objects of the node / group
 
std::string getObjectName (size_t index) const
 return the name of the object with the given index
 
bool rename (const std::string &src_path, const std::string &dest_path, bool parents=true) const
 moves an object and its content within an HDF5 file.
 
std::vector< std::string > listObjectNames (IndexType idx_type=IndexType::NAME) const
 list all leaf objects name of the node / group
 
bool exist (const std::string &node_name) const
 check a dataset or group exists in the current node / group
 
void unlink (const std::string &node_name) const
 unlink the given dataset or group
 
LinkType getLinkType (const std::string &node_name) const
 Returns the kind of link of the given name (soft, hard...)
 
ObjectType getObjectType (const std::string &node_name) const
 A shorthand to get the kind of object pointed to (group, dataset, type...)
 
template<typename T , typename = decltype(&T::getPath)>
void createSoftLink (const std::string &linkName, const T &obj)
 A shorthand to create softlink to any object which provides getPath The link will be created with default properties along with required parent groups.
 
void createSoftLink (const std::string &link_name, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
 Creates softlinks.
 
void createExternalLink (const std::string &link_name, const std::string &h5_file, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
 
template<typename T , typename = decltype(&T::getPath)>
void createHardLink (const std::string &link_name, const T &target_obj, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)
 Creates hardlinks.
 
+

Detailed Description

+
template<typename Derivate>
+class HighFive::NodeTraits< Derivate >

NodeTraits: Base class for Group and File.

+

Member Function Documentation

+ +

◆ createDataSet() [1/5]

+ +
+
+
+template<typename Derivate >
+
+template<typename T , typename std::enable_if< !std::is_same< typename details::inspector< T >::base_type, details::Boolean >::value, int >::type * >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DataSet HighFive::NodeTraits< Derivate >::createDataSet (const std::string & dataset_name,
const DataSpacespace,
const DataSetCreatePropscreateProps = DataSetCreateProps::Default(),
const DataSetAccessPropsaccessProps = DataSetAccessProps::Default(),
bool parents = true 
)
+
+inline
+
+ +

createDataSet create a new dataset in the current file with a size specified by space

+
Parameters
+ + + + + + +
dataset_nameidentifier of the dataset
spaceAssociated DataSpace, see DataSpace for more information
createPropsA property list with data set creation properties
accessPropsA property list with data set access properties
parentsCreate intermediate groups if needed. Default: true.
+
+
+
Returns
DataSet Object
+ +
+
+ +

◆ createDataSet() [2/5]

+ +
+
+
+template<typename Derivate >
+
+template<typename T , typename std::enable_if< !std::is_same< typename details::inspector< T >::base_type, details::Boolean >::value, int >::type * = nullptr>
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DataSet HighFive::NodeTraits< Derivate >::createDataSet (const std::string & dataset_name,
const DataSpacespace,
const DataSetCreatePropscreateProps = DataSetCreateProps::Default(),
const DataSetAccessPropsaccessProps = DataSetAccessProps::Default(),
bool parents = true 
)
+
+ +
+
+ +

◆ createDataSet() [3/5]

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DataSet HighFive::NodeTraits< Derivate >::createDataSet (const std::string & dataset_name,
const DataSpacespace,
const DataTypetype,
const DataSetCreatePropscreateProps = DataSetCreateProps::Default(),
const DataSetAccessPropsaccessProps = DataSetAccessProps::Default(),
bool parents = true 
)
+
+inline
+
+ +

createDataSet Create a new dataset in the current file of datatype type and of size space

+
Parameters
+ + + + + + + +
dataset_nameidentifier of the dataset
spaceAssociated DataSpace, see DataSpace for more information
typeType of Data
createPropsA property list with data set creation properties
accessPropsA property list with data set access properties
parentsCreate intermediate groups if needed. Default: true.
+
+
+
Returns
DataSet Object
+ +
+
+ +

◆ createDataSet() [4/5]

+ +
+
+
+template<typename Derivate >
+
+template<std::size_t N>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DataSet HighFive::NodeTraits< Derivate >::createDataSet (const std::string & dataset_name,
const FixedLenStringArray< N > & data,
const DataSetCreatePropscreateProps = DataSetCreateProps::Default(),
const DataSetAccessPropsaccessProps = DataSetAccessProps::Default(),
bool parents = true 
)
+
+inline
+
+ +
+
+ +

◆ createDataSet() [5/5]

+ +
+
+
+template<typename Derivate >
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
DataSet HighFive::NodeTraits< Derivate >::createDataSet (const std::string & dataset_name,
const T & data,
const DataSetCreatePropscreateProps = DataSetCreateProps::Default(),
const DataSetAccessPropsaccessProps = DataSetAccessProps::Default(),
bool parents = true 
)
+
+inline
+
+ +

createDataSet create a new dataset in the current file and write to it, inferring the DataSpace from the data.

+
Parameters
+ + + + + + +
dataset_nameidentifier of the dataset
dataAssociated data, must support DataSpace::From, see DataSpace for more information
createPropsA property list with data set creation properties
accessPropsA property list with data set access properties
parentsCreate intermediate groups if needed. Default: true.
+
+
+
Returns
DataSet Object
+ +
+
+ +

◆ createExternalLink()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void HighFive::NodeTraits< Derivate >::createExternalLink (const std::string & link_name,
const std::string & h5_file,
const std::string & obj_path,
LinkCreateProps linkCreateProps = LinkCreateProps(),
const LinkAccessPropslinkAccessProps = LinkAccessProps(),
const bool parents = true 
)
+
+inline
+
+ +
+
+ +

◆ createGroup() [1/2]

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Group HighFive::NodeTraits< Derivate >::createGroup (const std::string & group_name,
bool parents = true 
)
+
+inline
+
+ +

create a new group, and eventually intermediate groups

+
Parameters
+ + + +
group_name
parentsCreate intermediate groups if needed. Default: true.
+
+
+
Returns
the group object
+ +
+
+ +

◆ createGroup() [2/2]

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Group HighFive::NodeTraits< Derivate >::createGroup (const std::string & group_name,
const GroupCreatePropscreateProps,
bool parents = true 
)
+
+inline
+
+ +

create a new group, and eventually intermediate groups

+
Parameters
+ + + + +
group_name
createPropsA property list with group creation properties
parentsCreate intermediate groups if needed. Default: true.
+
+
+
Returns
the group object
+ +
+
+ +

◆ createHardLink()

+ +
+
+
+template<typename Derivate >
+
+template<typename T , typename >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void HighFive::NodeTraits< Derivate >::createHardLink (const std::string & link_name,
const T & target_obj,
LinkCreateProps linkCreateProps = LinkCreateProps(),
const LinkAccessPropslinkAccessProps = LinkAccessProps(),
const bool parents = true 
)
+
+inline
+
+ +

Creates hardlinks.

+
Parameters
+ + + + + + +
link_nameThe name of the link
target_objThe target object
linkCreatePropsA Link_Create property list. Notice "parents=true" overrides
linkAccessPropsThe Link_Access property list
parentsWhether parent groups should be created: Default: true
+
+
+ +
+
+ +

◆ createSoftLink() [1/2]

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void HighFive::NodeTraits< Derivate >::createSoftLink (const std::string & link_name,
const std::string & obj_path,
LinkCreateProps linkCreateProps = LinkCreateProps(),
const LinkAccessPropslinkAccessProps = LinkAccessProps(),
const bool parents = true 
)
+
+inline
+
+ +

Creates softlinks.

+
Parameters
+ + + + + + +
link_nameThe name of the link
obj_pathThe target object path
linkCreatePropsA Link_Create property list. Notice "parents=true" overrides
linkAccessPropsThe Link_Access property list
parentsWhether parent groups should be created: Default: true
+
+
+ +
+
+ +

◆ createSoftLink() [2/2]

+ +
+
+
+template<typename Derivate >
+
+template<typename T , typename = decltype(&T::getPath)>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void HighFive::NodeTraits< Derivate >::createSoftLink (const std::string & linkName,
const T & obj 
)
+
+inline
+
+ +

A shorthand to create softlink to any object which provides getPath The link will be created with default properties along with required parent groups.

+ +
+
+ +

◆ exist()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
bool HighFive::NodeTraits< Derivate >::exist (const std::string & node_name) const
+
+inline
+
+ +

check a dataset or group exists in the current node / group

+
Parameters
+ + +
node_namedataset/group name to check
+
+
+
Returns
true if a dataset/group with the associated name exists, or false
+ +
+
+ +

◆ getDataSet()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
DataSet HighFive::NodeTraits< Derivate >::getDataSet (const std::string & dataset_name,
const DataSetAccessPropsaccessProps = DataSetAccessProps::Default() 
) const
+
+inline
+
+ +

get an existing dataset in the current file

+
Parameters
+ + + +
dataset_name
accessPropsproperty list to configure dataset chunk cache
+
+
+
Returns
return the named dataset, or throw exception if not found
+ +
+
+ +

◆ getDataType()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
DataType HighFive::NodeTraits< Derivate >::getDataType (const std::string & type_name,
const DataTypeAccessPropsaccessProps = DataTypeAccessProps::Default() 
) const
+
+inline
+
+ +

open a commited datatype with the name type_name

+
Parameters
+ + +
type_name
+
+
+
Returns
the datatype object
+ +
+
+ +

◆ getGroup()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
Group HighFive::NodeTraits< Derivate >::getGroup (const std::string & group_name) const
+
+inline
+
+ +

open an existing group with the name group_name

+
Parameters
+ + +
group_name
+
+
+
Returns
the group object
+ +
+
+ +

◆ getLinkType()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
LinkType HighFive::NodeTraits< Derivate >::getLinkType (const std::string & node_name) const
+
+inline
+
+ +

Returns the kind of link of the given name (soft, hard...)

+
Parameters
+ + +
node_nameThe entry to check, path relative to the current group
+
+
+ +
+
+ +

◆ getNumberObjects()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + +
size_t HighFive::NodeTraits< Derivate >::getNumberObjects () const
+
+inline
+
+ +

return the number of leaf objects of the node / group

+
Returns
number of leaf objects
+ +
+
+ +

◆ getObjectName()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
std::string HighFive::NodeTraits< Derivate >::getObjectName (size_t index) const
+
+inline
+
+ +

return the name of the object with the given index

+
Returns
the name of the object
+ +
+
+ +

◆ getObjectType()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
ObjectType HighFive::NodeTraits< Derivate >::getObjectType (const std::string & node_name) const
+
+inline
+
+ +

A shorthand to get the kind of object pointed to (group, dataset, type...)

+
Parameters
+ + +
node_nameThe entry to check, path relative to the current group
+
+
+ +
+
+ +

◆ listObjectNames()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
std::vector< std::string > HighFive::NodeTraits< Derivate >::listObjectNames (IndexType idx_type = IndexType::NAME) const
+
+inline
+
+ +

list all leaf objects name of the node / group

+
Parameters
+ + +
idx_typetell if the list should be ordered by Name or CreationOrderTime. CreationOrderTime can be use only if the file/group has been created with the HighFive::LinkCreationTime property.
+
+
+
Returns
number of leaf objects
+ +
+
+ +

◆ rename()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool HighFive::NodeTraits< Derivate >::rename (const std::string & src_path,
const std::string & dest_path,
bool parents = true 
) const
+
+inline
+
+ +

moves an object and its content within an HDF5 file.

+
Parameters
+ + + + +
src_pathrelative path of the object to current File/Group
dest_pathnew relative path of the object to current File/Group
parentsCreate intermediate groups if needed. Default: true.
+
+
+
Returns
boolean that is true if the move was successful
+ +
+
+ +

◆ unlink()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
void HighFive::NodeTraits< Derivate >::unlink (const std::string & node_name) const
+
+inline
+
+ +

unlink the given dataset or group

+
Parameters
+ + +
node_namedataset/group name to unlink
+
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_node_traits.js b/class_high_five_1_1_node_traits.js new file mode 100644 index 000000000..e0c8b1f3f --- /dev/null +++ b/class_high_five_1_1_node_traits.js @@ -0,0 +1,25 @@ +var class_high_five_1_1_node_traits = +[ + [ "createDataSet", "class_high_five_1_1_node_traits.html#afe17f9c1eb52c53679594f80b0d1bb8d", null ], + [ "createDataSet", "class_high_five_1_1_node_traits.html#afe17f9c1eb52c53679594f80b0d1bb8d", null ], + [ "createDataSet", "class_high_five_1_1_node_traits.html#a941a8deb4c9971d27af7b7b73a534709", null ], + [ "createDataSet", "class_high_five_1_1_node_traits.html#a3adbf1f9a4c0bb6a5824cd1e4dc0a181", null ], + [ "createDataSet", "class_high_five_1_1_node_traits.html#ac53402ee0dc01b86ac475dfa8db172c3", null ], + [ "createExternalLink", "class_high_five_1_1_node_traits.html#a4f63ab185617fac1597087e8079a0989", null ], + [ "createGroup", "class_high_five_1_1_node_traits.html#a8b966c4e5ee90aa9d86421646f2ecb99", null ], + [ "createGroup", "class_high_five_1_1_node_traits.html#a3da8ee379234a7d0d18e0abbd6019196", null ], + [ "createHardLink", "class_high_five_1_1_node_traits.html#a7f11136752f9a2ec632e0b2f94fb475e", null ], + [ "createSoftLink", "class_high_five_1_1_node_traits.html#a44f7cc437ed68cb9d534f2fe2ffe3c79", null ], + [ "createSoftLink", "class_high_five_1_1_node_traits.html#a6f4f9127e6626fdc9d3456a77899217b", null ], + [ "exist", "class_high_five_1_1_node_traits.html#aa3c8c4e09ebba6d997768ad72bc3bf82", null ], + [ "getDataSet", "class_high_five_1_1_node_traits.html#a6d42bb7aa92a8be5567a42a2f134115f", null ], + [ "getDataType", "class_high_five_1_1_node_traits.html#a5b618ebe1b03f24194b5a8ed1b9c59b6", null ], + [ "getGroup", "class_high_five_1_1_node_traits.html#a286d9f9c2232c25abc5876bdc9d66edd", null ], + [ "getLinkType", "class_high_five_1_1_node_traits.html#aeab19b9f1fef90db036e1ea6238ef4eb", null ], + [ "getNumberObjects", "class_high_five_1_1_node_traits.html#ad90f036b55bd3e155c73ece61233210e", null ], + [ "getObjectName", "class_high_five_1_1_node_traits.html#ae10cb4bd9e20c651c136b284f3d8cd46", null ], + [ "getObjectType", "class_high_five_1_1_node_traits.html#abc2c385a18e2caaae71366139b57d8f2", null ], + [ "listObjectNames", "class_high_five_1_1_node_traits.html#a30bd43382f4e1f77bc6358ad5f7ed7ce", null ], + [ "rename", "class_high_five_1_1_node_traits.html#a9732221be5949023649d2d5af9305a30", null ], + [ "unlink", "class_high_five_1_1_node_traits.html#a37ed4a7bc21f02b14d1f71e097b3d4bf", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_object-members.html b/class_high_five_1_1_object-members.html new file mode 100644 index 000000000..7515ec5a9 --- /dev/null +++ b/class_high_five_1_1_object-members.html @@ -0,0 +1,123 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Object Member List
+
+
+ +

This is the complete list of members for HighFive::Object, including all inherited members.

+ + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
CompoundTypeHighFive::Objectfriend
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getType() constHighFive::Objectinline
isValid() const noexceptHighFive::Objectinline
Object(Object &&other) noexceptHighFive::Objectinline
Object()HighFive::Objectinlineprotected
Object(const Object &other)HighFive::Objectinlineprotected
Object(hid_t)HighFive::Objectinlineexplicitprotected
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
ReferenceHighFive::Objectfriend
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_object.html b/class_high_five_1_1_object.html new file mode 100644 index 000000000..067ecd743 --- /dev/null +++ b/class_high_five_1_1_object.html @@ -0,0 +1,578 @@ + + + + + + + +HighFive: HighFive::Object Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Object Class Reference
+
+
+ +

#include <H5Object.hpp>

+
+Inheritance diagram for HighFive::Object:
+
+
Inheritance graph
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + +

+Protected Member Functions

 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
+ + + +

+Protected Attributes

hid_t _hid
 
+ + + + + +

+Friends

class Reference
 
class CompoundType
 
+

Constructor & Destructor Documentation

+ +

◆ Object() [1/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (Object && other)
+
+inlinenoexcept
+
+ +
+
+ +

◆ ~Object()

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Object::~Object ()
+
+inline
+
+ +
+
+ +

◆ Object() [2/4]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Object::Object ()
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [3/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (const Objectother)
+
+inlineprotected
+
+ +
+
+ +

◆ Object() [4/4]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Object::Object (hid_t hid)
+
+inlineexplicitprotected
+
+ +
+
+

Member Function Documentation

+ +

◆ getId()

+ +
+
+ + + + + +
+ + + + + + + +
hid_t HighFive::Object::getId () const
+
+inlinenoexcept
+
+ +

getId

+
Returns
internal HDF5 id to the object provided for C API compatibility
+ +
+
+ +

◆ getInfo()

+ +
+
+ + + + + +
+ + + + + + + +
ObjectInfo HighFive::Object::getInfo () const
+
+inline
+
+ +

Retrieve several infos about the current object (address, dates, etc)

+ +
+
+ +

◆ getType()

+ +
+
+ + + + + +
+ + + + + + + +
ObjectType HighFive::Object::getType () const
+
+inline
+
+ +

Gets the fundamental type of the object (dataset, group, etc)

+
Exceptions
+ + +
ObjectExceptionwhen the _hid is negative or the type is custom and not registered yet
+
+
+ +
+
+ +

◆ isValid()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::Object::isValid () const
+
+inlinenoexcept
+
+ +

isValid

+
Returns
true if current Object is a valid HDF5Object
+ +
+
+ +

◆ operator=()

+ +
+
+ + + + + +
+ + + + + + + + +
Object & HighFive::Object::operator= (const Objectother)
+
+inlineprotected
+
+ +
+
+ +

◆ operator==()

+ +
+
+ + + + + +
+ + + + + + + + +
bool HighFive::Object::operator== (const Objectother) const
+
+inlinenoexcept
+
+ +
+
+

Friends And Related Symbol Documentation

+ +

◆ CompoundType

+ +
+
+ + + + + +
+ + + + +
friend class CompoundType
+
+friend
+
+ +
+
+ +

◆ Reference

+ +
+
+ + + + + +
+ + + + +
friend class Reference
+
+friend
+
+ +
+
+

Member Data Documentation

+ +

◆ _hid

+ +
+
+ + + + + +
+ + + + +
hid_t HighFive::Object::_hid
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_object.js b/class_high_five_1_1_object.js new file mode 100644 index 000000000..4a7f76779 --- /dev/null +++ b/class_high_five_1_1_object.js @@ -0,0 +1,17 @@ +var class_high_five_1_1_object = +[ + [ "Object", "class_high_five_1_1_object.html#aa42052fa5ec4ee691f6a7dd6467199f2", null ], + [ "~Object", "class_high_five_1_1_object.html#a26aecd6a0812960b13eff054fe3a78aa", null ], + [ "Object", "class_high_five_1_1_object.html#a6bae41d04f273d04d2914406ab79da32", null ], + [ "Object", "class_high_five_1_1_object.html#ab87ee7d5e2beee6a50d60dec20d3dfe5", null ], + [ "Object", "class_high_five_1_1_object.html#a9fe361bc0bd9662c1fd96a4a6ec1133a", null ], + [ "getId", "class_high_five_1_1_object.html#a0efb623a7ceb36777ce81e215995a3bc", null ], + [ "getInfo", "class_high_five_1_1_object.html#a134549df53c4c0a04f728db983b2f947", null ], + [ "getType", "class_high_five_1_1_object.html#a60a33f44d524aae5936131770811bd58", null ], + [ "isValid", "class_high_five_1_1_object.html#a7b4b75cd26da783a0ad21ca7f2a593d3", null ], + [ "operator=", "class_high_five_1_1_object.html#acbdb7087cba8bb804f7ec82c56c28ace", null ], + [ "operator==", "class_high_five_1_1_object.html#ad838f47662c1b9d240bd26d8710aa7d9", null ], + [ "CompoundType", "class_high_five_1_1_object.html#a9531936c7f60cc4739426e6a25f23e7e", null ], + [ "Reference", "class_high_five_1_1_object.html#a75dfa92607f3d314070ecf242e028014", null ], + [ "_hid", "class_high_five_1_1_object.html#a8e28f684d63a33646aa107a41d9cf521", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_object__inherit__graph.map b/class_high_five_1_1_object__inherit__graph.map new file mode 100644 index 000000000..5309f631f --- /dev/null +++ b/class_high_five_1_1_object__inherit__graph.map @@ -0,0 +1,43 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/class_high_five_1_1_object__inherit__graph.md5 b/class_high_five_1_1_object__inherit__graph.md5 new file mode 100644 index 000000000..db33b11eb --- /dev/null +++ b/class_high_five_1_1_object__inherit__graph.md5 @@ -0,0 +1 @@ +0b8fabcb255f0c8157d091aa035d75a9 \ No newline at end of file diff --git a/class_high_five_1_1_object__inherit__graph.png b/class_high_five_1_1_object__inherit__graph.png new file mode 100644 index 000000000..bc31c7141 Binary files /dev/null and b/class_high_five_1_1_object__inherit__graph.png differ diff --git a/class_high_five_1_1_object_exception-members.html b/class_high_five_1_1_object_exception-members.html new file mode 100644 index 000000000..f7aed0ee9 --- /dev/null +++ b/class_high_five_1_1_object_exception-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::ObjectException Member List
+
+
+ +

This is the complete list of members for HighFive::ObjectException, including all inherited members.

+ + + + + + + + + + + + + +
_err_majorHighFive::Exceptionprotected
_err_minorHighFive::Exceptionprotected
_errmsgHighFive::Exceptionprotected
_nextHighFive::Exceptionprotected
Exception(const std::string &err_msg)HighFive::Exceptioninline
getErrMajor() constHighFive::Exceptioninline
getErrMinor() constHighFive::Exceptioninline
nextException() constHighFive::Exceptioninline
ObjectException(const std::string &err_msg)HighFive::ObjectExceptioninline
setErrorMsg(const std::string &errmsg)HighFive::Exceptioninlinevirtual
what() const overrideHighFive::Exceptioninline
~Exception()HighFive::Exceptioninlinevirtual
+
+ + + + diff --git a/class_high_five_1_1_object_exception.html b/class_high_five_1_1_object_exception.html new file mode 100644 index 000000000..2c16a410a --- /dev/null +++ b/class_high_five_1_1_object_exception.html @@ -0,0 +1,209 @@ + + + + + + + +HighFive: HighFive::ObjectException Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::ObjectException Class Reference
+
+
+ +

Exception specific to HighFive Object interface. + More...

+ +

#include <H5Exception.hpp>

+
+Inheritance diagram for HighFive::ObjectException:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::ObjectException:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 ObjectException (const std::string &err_msg)
 
- Public Member Functions inherited from HighFive::Exception
 Exception (const std::string &err_msg)
 
virtual ~Exception () throw ()
 
const char * what () const override throw ()
 get the current exception error message
 
virtual void setErrorMsg (const std::string &errmsg)
 define the error message
 
ExceptionnextException () const
 nextException
 
hid_t getErrMajor () const
 HDF5 library error mapper.
 
hid_t getErrMinor () const
 HDF5 library error mapper.
 
+ + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Exception
std::string _errmsg
 
std::shared_ptr< Exception_next
 
hid_t _err_major
 
hid_t _err_minor
 
+

Detailed Description

+

Exception specific to HighFive Object interface.

+

Constructor & Destructor Documentation

+ +

◆ ObjectException()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::ObjectException::ObjectException (const std::string & err_msg)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_object_exception.js b/class_high_five_1_1_object_exception.js new file mode 100644 index 000000000..1376dfcdc --- /dev/null +++ b/class_high_five_1_1_object_exception.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_object_exception = +[ + [ "ObjectException", "class_high_five_1_1_object_exception.html#aa9d63e59797518ba24516336d562041e", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_object_exception__coll__graph.map b/class_high_five_1_1_object_exception__coll__graph.map new file mode 100644 index 000000000..823c3702b --- /dev/null +++ b/class_high_five_1_1_object_exception__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_object_exception__coll__graph.md5 b/class_high_five_1_1_object_exception__coll__graph.md5 new file mode 100644 index 000000000..a2204844a --- /dev/null +++ b/class_high_five_1_1_object_exception__coll__graph.md5 @@ -0,0 +1 @@ +610d90db1fc665df997febd026206bf5 \ No newline at end of file diff --git a/class_high_five_1_1_object_exception__coll__graph.png b/class_high_five_1_1_object_exception__coll__graph.png new file mode 100644 index 000000000..db939800a Binary files /dev/null and b/class_high_five_1_1_object_exception__coll__graph.png differ diff --git a/class_high_five_1_1_object_exception__inherit__graph.map b/class_high_five_1_1_object_exception__inherit__graph.map new file mode 100644 index 000000000..823c3702b --- /dev/null +++ b/class_high_five_1_1_object_exception__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_object_exception__inherit__graph.md5 b/class_high_five_1_1_object_exception__inherit__graph.md5 new file mode 100644 index 000000000..a2204844a --- /dev/null +++ b/class_high_five_1_1_object_exception__inherit__graph.md5 @@ -0,0 +1 @@ +610d90db1fc665df997febd026206bf5 \ No newline at end of file diff --git a/class_high_five_1_1_object_exception__inherit__graph.png b/class_high_five_1_1_object_exception__inherit__graph.png new file mode 100644 index 000000000..db939800a Binary files /dev/null and b/class_high_five_1_1_object_exception__inherit__graph.png differ diff --git a/class_high_five_1_1_object_info-members.html b/class_high_five_1_1_object_info-members.html new file mode 100644 index 000000000..2bb893bc2 --- /dev/null +++ b/class_high_five_1_1_object_info-members.html @@ -0,0 +1,115 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::ObjectInfo Member List
+
+
+ +

This is the complete list of members for HighFive::ObjectInfo, including all inherited members.

+ + + + + + + +
getAddress() const noexceptHighFive::ObjectInfoinline
getCreationTime() const noexceptHighFive::ObjectInfoinline
getModificationTime() const noexceptHighFive::ObjectInfoinline
getRefCount() const noexceptHighFive::ObjectInfoinline
ObjectHighFive::ObjectInfofriend
raw_infoHighFive::ObjectInfoprotected
+
+ + + + diff --git a/class_high_five_1_1_object_info.html b/class_high_five_1_1_object_info.html new file mode 100644 index 000000000..f0f9c00e1 --- /dev/null +++ b/class_high_five_1_1_object_info.html @@ -0,0 +1,305 @@ + + + + + + + +HighFive: HighFive::ObjectInfo Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::ObjectInfo Class Reference
+
+
+ +

A class for accessing hdf5 objects info. + More...

+ +

#include <H5Object.hpp>

+ + + + + + + + + + + + + + +

+Public Member Functions

haddr_t getAddress () const noexcept
 Retrieve the address of the object (within its file)
 
size_t getRefCount () const noexcept
 Retrieve the number of references to this object.
 
time_t getCreationTime () const noexcept
 Retrieve the object's creation time.
 
time_t getModificationTime () const noexcept
 Retrieve the object's last modification time.
 
+ + + +

+Protected Attributes

H5O_info_t raw_info
 
+ + + +

+Friends

class Object
 
+

Detailed Description

+

A class for accessing hdf5 objects info.

+

Member Function Documentation

+ +

◆ getAddress()

+ +
+
+ + + + + +
+ + + + + + + +
haddr_t HighFive::ObjectInfo::getAddress () const
+
+inlinenoexcept
+
+ +

Retrieve the address of the object (within its file)

+
Deprecated:
Deprecated since HighFive 2.2. Soon supporting VOL tokens
+ +
+
+ +

◆ getCreationTime()

+ +
+
+ + + + + +
+ + + + + + + +
time_t HighFive::ObjectInfo::getCreationTime () const
+
+inlinenoexcept
+
+ +

Retrieve the object's creation time.

+ +
+
+ +

◆ getModificationTime()

+ +
+
+ + + + + +
+ + + + + + + +
time_t HighFive::ObjectInfo::getModificationTime () const
+
+inlinenoexcept
+
+ +

Retrieve the object's last modification time.

+ +
+
+ +

◆ getRefCount()

+ +
+
+ + + + + +
+ + + + + + + +
size_t HighFive::ObjectInfo::getRefCount () const
+
+inlinenoexcept
+
+ +

Retrieve the number of references to this object.

+ +
+
+

Friends And Related Symbol Documentation

+ +

◆ Object

+ +
+
+ + + + + +
+ + + + +
friend class Object
+
+friend
+
+ +
+
+

Member Data Documentation

+ +

◆ raw_info

+ +
+
+ + + + + +
+ + + + +
H5O_info_t HighFive::ObjectInfo::raw_info
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_object_info.js b/class_high_five_1_1_object_info.js new file mode 100644 index 000000000..c7bbb30c1 --- /dev/null +++ b/class_high_five_1_1_object_info.js @@ -0,0 +1,9 @@ +var class_high_five_1_1_object_info = +[ + [ "getAddress", "class_high_five_1_1_object_info.html#a9275887ab016ce89fc24938f8d86aa11", null ], + [ "getCreationTime", "class_high_five_1_1_object_info.html#a3afa78a1134a890934ade597a171b482", null ], + [ "getModificationTime", "class_high_five_1_1_object_info.html#ad9e7a6bfd1b5f046745fab423f40750e", null ], + [ "getRefCount", "class_high_five_1_1_object_info.html#aa43efa7e90bebf6f39769d7cd56f8bbe", null ], + [ "Object", "class_high_five_1_1_object_info.html#a0720b5f434e636e22a3ed34f847eec57", null ], + [ "raw_info", "class_high_five_1_1_object_info.html#ac39a80ef1e2113268e6bb20f9145a204", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_path_traits-members.html b/class_high_five_1_1_path_traits-members.html new file mode 100644 index 000000000..0e797c858 --- /dev/null +++ b/class_high_five_1_1_path_traits-members.html @@ -0,0 +1,113 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::PathTraits< Derivate > Member List
+
+
+ +

This is the complete list of members for HighFive::PathTraits< Derivate >, including all inherited members.

+ + + + + +
_file_objHighFive::PathTraits< Derivate >protected
getFile() const noexceptHighFive::PathTraits< Derivate >inline
getPath() constHighFive::PathTraits< Derivate >inline
PathTraits()HighFive::PathTraits< Derivate >inline
+
+ + + + diff --git a/class_high_five_1_1_path_traits.html b/class_high_five_1_1_path_traits.html new file mode 100644 index 000000000..680230a8d --- /dev/null +++ b/class_high_five_1_1_path_traits.html @@ -0,0 +1,248 @@ + + + + + + + +HighFive: HighFive::PathTraits< Derivate > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::PathTraits< Derivate > Class Template Reference
+
+
+ +

#include <H5Path_traits.hpp>

+ + + + + + + + + + +

+Public Member Functions

 PathTraits ()
 
std::string getPath () const
 return the path to the current object
 
FilegetFile () const noexcept
 Return a reference to the File object this object belongs.
 
+ + + +

+Protected Attributes

std::shared_ptr< File_file_obj
 
+

Constructor & Destructor Documentation

+ +

◆ PathTraits()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + +
HighFive::PathTraits< Derivate >::PathTraits ()
+
+inline
+
+ +
+
+

Member Function Documentation

+ +

◆ getFile()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + +
File & HighFive::PathTraits< Derivate >::getFile () const
+
+inlinenoexcept
+
+ +

Return a reference to the File object this object belongs.

+
Returns
the File object ref
+ +
+
+ +

◆ getPath()

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + +
std::string HighFive::PathTraits< Derivate >::getPath () const
+
+inline
+
+ +

return the path to the current object

+
Returns
the path to the object
+ +
+
+

Member Data Documentation

+ +

◆ _file_obj

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + +
std::shared_ptr<File> HighFive::PathTraits< Derivate >::_file_obj
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_path_traits.js b/class_high_five_1_1_path_traits.js new file mode 100644 index 000000000..9120e0b62 --- /dev/null +++ b/class_high_five_1_1_path_traits.js @@ -0,0 +1,7 @@ +var class_high_five_1_1_path_traits = +[ + [ "PathTraits", "class_high_five_1_1_path_traits.html#a49601ba2947e519784814a9d7a90f7f5", null ], + [ "getFile", "class_high_five_1_1_path_traits.html#a9d741a5f2d404314287b18b119136abf", null ], + [ "getPath", "class_high_five_1_1_path_traits.html#aca32b01b8c7eb54d398daeaac0b64399", null ], + [ "_file_obj", "class_high_five_1_1_path_traits.html#a9d0db67d0c4a3d1afacdb4fc9f17a302", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_property_exception-members.html b/class_high_five_1_1_property_exception-members.html new file mode 100644 index 000000000..db490b430 --- /dev/null +++ b/class_high_five_1_1_property_exception-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::PropertyException Member List
+
+
+ +

This is the complete list of members for HighFive::PropertyException, including all inherited members.

+ + + + + + + + + + + + + +
_err_majorHighFive::Exceptionprotected
_err_minorHighFive::Exceptionprotected
_errmsgHighFive::Exceptionprotected
_nextHighFive::Exceptionprotected
Exception(const std::string &err_msg)HighFive::Exceptioninline
getErrMajor() constHighFive::Exceptioninline
getErrMinor() constHighFive::Exceptioninline
nextException() constHighFive::Exceptioninline
PropertyException(const std::string &err_msg)HighFive::PropertyExceptioninline
setErrorMsg(const std::string &errmsg)HighFive::Exceptioninlinevirtual
what() const overrideHighFive::Exceptioninline
~Exception()HighFive::Exceptioninlinevirtual
+
+ + + + diff --git a/class_high_five_1_1_property_exception.html b/class_high_five_1_1_property_exception.html new file mode 100644 index 000000000..ca221225d --- /dev/null +++ b/class_high_five_1_1_property_exception.html @@ -0,0 +1,209 @@ + + + + + + + +HighFive: HighFive::PropertyException Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::PropertyException Class Reference
+
+
+ +

Exception specific to HighFive Property interface. + More...

+ +

#include <H5Exception.hpp>

+
+Inheritance diagram for HighFive::PropertyException:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::PropertyException:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 PropertyException (const std::string &err_msg)
 
- Public Member Functions inherited from HighFive::Exception
 Exception (const std::string &err_msg)
 
virtual ~Exception () throw ()
 
const char * what () const override throw ()
 get the current exception error message
 
virtual void setErrorMsg (const std::string &errmsg)
 define the error message
 
ExceptionnextException () const
 nextException
 
hid_t getErrMajor () const
 HDF5 library error mapper.
 
hid_t getErrMinor () const
 HDF5 library error mapper.
 
+ + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Exception
std::string _errmsg
 
std::shared_ptr< Exception_next
 
hid_t _err_major
 
hid_t _err_minor
 
+

Detailed Description

+

Exception specific to HighFive Property interface.

+

Constructor & Destructor Documentation

+ +

◆ PropertyException()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::PropertyException::PropertyException (const std::string & err_msg)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_property_exception.js b/class_high_five_1_1_property_exception.js new file mode 100644 index 000000000..085faafec --- /dev/null +++ b/class_high_five_1_1_property_exception.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_property_exception = +[ + [ "PropertyException", "class_high_five_1_1_property_exception.html#a3b98bbf8140308b1b76305eb5fa86ba0", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_property_exception__coll__graph.map b/class_high_five_1_1_property_exception__coll__graph.map new file mode 100644 index 000000000..a5ef233d2 --- /dev/null +++ b/class_high_five_1_1_property_exception__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_property_exception__coll__graph.md5 b/class_high_five_1_1_property_exception__coll__graph.md5 new file mode 100644 index 000000000..4a85d3b30 --- /dev/null +++ b/class_high_five_1_1_property_exception__coll__graph.md5 @@ -0,0 +1 @@ +f7665890c3bdd0bd353cbda25a3e2a88 \ No newline at end of file diff --git a/class_high_five_1_1_property_exception__coll__graph.png b/class_high_five_1_1_property_exception__coll__graph.png new file mode 100644 index 000000000..2bd3d1bee Binary files /dev/null and b/class_high_five_1_1_property_exception__coll__graph.png differ diff --git a/class_high_five_1_1_property_exception__inherit__graph.map b/class_high_five_1_1_property_exception__inherit__graph.map new file mode 100644 index 000000000..a5ef233d2 --- /dev/null +++ b/class_high_five_1_1_property_exception__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_property_exception__inherit__graph.md5 b/class_high_five_1_1_property_exception__inherit__graph.md5 new file mode 100644 index 000000000..4a85d3b30 --- /dev/null +++ b/class_high_five_1_1_property_exception__inherit__graph.md5 @@ -0,0 +1 @@ +f7665890c3bdd0bd353cbda25a3e2a88 \ No newline at end of file diff --git a/class_high_five_1_1_property_exception__inherit__graph.png b/class_high_five_1_1_property_exception__inherit__graph.png new file mode 100644 index 000000000..2bd3d1bee Binary files /dev/null and b/class_high_five_1_1_property_exception__inherit__graph.png differ diff --git a/class_high_five_1_1_property_list-members.html b/class_high_five_1_1_property_list-members.html new file mode 100644 index 000000000..912e58f4c --- /dev/null +++ b/class_high_five_1_1_property_list-members.html @@ -0,0 +1,125 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::PropertyList< T > Member List
+
+
+ +

This is the complete list of members for HighFive::PropertyList< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
_initializeIfNeeded()HighFive::PropertyList< T >inlineprotected
add(const P &property)HighFive::PropertyList< T >inline
Default() noexceptHighFive::PropertyList< T >inlinestatic
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getType() const noexceptHighFive::PropertyList< T >inline
isValid() const noexceptHighFive::Objectinline
Object(Object &&other) noexceptHighFive::Objectinline
Object()HighFive::Objectinlineprotected
Object(const Object &other)HighFive::Objectinlineprotected
Object(hid_t)HighFive::Objectinlineexplicitprotected
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
PropertyListBase() noexceptHighFive::PropertyListBaseinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_property_list.html b/class_high_five_1_1_property_list.html new file mode 100644 index 000000000..8eae88664 --- /dev/null +++ b/class_high_five_1_1_property_list.html @@ -0,0 +1,338 @@ + + + + + + + +HighFive: HighFive::PropertyList< T > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::PropertyList< T > Class Template Reference
+
+
+ +

HDF5 property Lists. + More...

+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::PropertyList< T >:
+
+
Inheritance graph
+ + + + + + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::PropertyList< T >:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

constexpr PropertyType getType () const noexcept
 return the type of this PropertyList
 
template<PropertyInterface P>
void add (const P &property)
 
- Public Member Functions inherited from HighFive::PropertyListBase
 PropertyListBase () noexcept
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + +

+Static Public Member Functions

static const PropertyList< T > & Default () noexcept
 Return the Default property type object.
 
- Static Public Member Functions inherited from HighFive::PropertyListBase
static const PropertyListBaseDefault () noexcept
 
+ + + + + + + + + + + + +

+Protected Member Functions

void _initializeIfNeeded ()
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
+ + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+
template<PropertyType T>
+class HighFive::PropertyList< T >

HDF5 property Lists.

+

Member Function Documentation

+ +

◆ _initializeIfNeeded()

+ +
+
+
+template<PropertyType T>
+ + + + + +
+ + + + + + + +
void HighFive::PropertyList< T >::_initializeIfNeeded ()
+
+inlineprotected
+
+ +
+
+ +

◆ add()

+ +
+
+
+template<PropertyType T>
+
+template<PropertyInterface P>
+ + + + + +
+ + + + + + + + +
void HighFive::PropertyList< T >::add (const P & property)
+
+inline
+
+

Add a property to this property list. A property is an object which is expected to have a method with the following signature void apply(hid_t hid) const

Template Parameters
+ + +
PropertyInterface
+
+
+ +
+
+ +

◆ Default()

+ +
+
+
+template<PropertyType T>
+ + + + + +
+ + + + + + + +
static const PropertyList< T > & HighFive::PropertyList< T >::Default ()
+
+inlinestaticnoexcept
+
+ +

Return the Default property type object.

+ +
+
+ +

◆ getType()

+ +
+
+
+template<PropertyType T>
+ + + + + +
+ + + + + + + +
constexpr PropertyType HighFive::PropertyList< T >::getType () const
+
+inlineconstexprnoexcept
+
+ +

return the type of this PropertyList

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_property_list.js b/class_high_five_1_1_property_list.js new file mode 100644 index 000000000..b6803c96f --- /dev/null +++ b/class_high_five_1_1_property_list.js @@ -0,0 +1,6 @@ +var class_high_five_1_1_property_list = +[ + [ "_initializeIfNeeded", "class_high_five_1_1_property_list.html#a532f2e881eb1cb05da42d687c1d5e97e", null ], + [ "add", "class_high_five_1_1_property_list.html#af982152b36c4216bdcdf60dbf10f0a1d", null ], + [ "getType", "class_high_five_1_1_property_list.html#ac5be2be6430f56234db215589ebdee5e", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_property_list__coll__graph.map b/class_high_five_1_1_property_list__coll__graph.map new file mode 100644 index 000000000..6dd537a10 --- /dev/null +++ b/class_high_five_1_1_property_list__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_property_list__coll__graph.md5 b/class_high_five_1_1_property_list__coll__graph.md5 new file mode 100644 index 000000000..9eeae8c72 --- /dev/null +++ b/class_high_five_1_1_property_list__coll__graph.md5 @@ -0,0 +1 @@ +8dc78c15dce001d31f253afc33a2bf1e \ No newline at end of file diff --git a/class_high_five_1_1_property_list__coll__graph.png b/class_high_five_1_1_property_list__coll__graph.png new file mode 100644 index 000000000..917dc233b Binary files /dev/null and b/class_high_five_1_1_property_list__coll__graph.png differ diff --git a/class_high_five_1_1_property_list__inherit__graph.map b/class_high_five_1_1_property_list__inherit__graph.map new file mode 100644 index 000000000..3a791934a --- /dev/null +++ b/class_high_five_1_1_property_list__inherit__graph.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/class_high_five_1_1_property_list__inherit__graph.md5 b/class_high_five_1_1_property_list__inherit__graph.md5 new file mode 100644 index 000000000..0ab55d977 --- /dev/null +++ b/class_high_five_1_1_property_list__inherit__graph.md5 @@ -0,0 +1 @@ +090c03278f95b5b5759c9539cf089fad \ No newline at end of file diff --git a/class_high_five_1_1_property_list__inherit__graph.png b/class_high_five_1_1_property_list__inherit__graph.png new file mode 100644 index 000000000..00cf1b21c Binary files /dev/null and b/class_high_five_1_1_property_list__inherit__graph.png differ diff --git a/class_high_five_1_1_property_list_base-members.html b/class_high_five_1_1_property_list_base-members.html new file mode 100644 index 000000000..049dee433 --- /dev/null +++ b/class_high_five_1_1_property_list_base-members.html @@ -0,0 +1,123 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::PropertyListBase Member List
+
+
+ +

This is the complete list of members for HighFive::PropertyListBase, including all inherited members.

+ + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
Default() noexceptHighFive::PropertyListBaseinlinestatic
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getType() constHighFive::Objectinline
isValid() const noexceptHighFive::Objectinline
Object(Object &&other) noexceptHighFive::Objectinline
Object()HighFive::Objectinlineprotected
Object(const Object &other)HighFive::Objectinlineprotected
Object(hid_t)HighFive::Objectinlineexplicitprotected
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
PropertyListBase() noexceptHighFive::PropertyListBaseinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_property_list_base.html b/class_high_five_1_1_property_list_base.html new file mode 100644 index 000000000..8371d74ea --- /dev/null +++ b/class_high_five_1_1_property_list_base.html @@ -0,0 +1,247 @@ + + + + + + + +HighFive: HighFive::PropertyListBase Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::PropertyListBase Class Reference
+
+
+ +

Base Class for Property lists, providing global default. + More...

+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::PropertyListBase:
+
+
Inheritance graph
+ + + + + + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::PropertyListBase:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 PropertyListBase () noexcept
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + +

+Static Public Member Functions

static const PropertyListBaseDefault () noexcept
 
+ + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+

Base Class for Property lists, providing global default.

+

Constructor & Destructor Documentation

+ +

◆ PropertyListBase()

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::PropertyListBase::PropertyListBase ()
+
+inlinenoexcept
+
+ +
+
+

Member Function Documentation

+ +

◆ Default()

+ +
+
+ + + + + +
+ + + + + + + +
static const PropertyListBase & HighFive::PropertyListBase::Default ()
+
+inlinestaticnoexcept
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_property_list_base.js b/class_high_five_1_1_property_list_base.js new file mode 100644 index 000000000..67a8bed40 --- /dev/null +++ b/class_high_five_1_1_property_list_base.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_property_list_base = +[ + [ "PropertyListBase", "class_high_five_1_1_property_list_base.html#a3dc12a0e8dc4dedbeea62b626d13e13a", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_property_list_base__coll__graph.map b/class_high_five_1_1_property_list_base__coll__graph.map new file mode 100644 index 000000000..245b3db52 --- /dev/null +++ b/class_high_five_1_1_property_list_base__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_property_list_base__coll__graph.md5 b/class_high_five_1_1_property_list_base__coll__graph.md5 new file mode 100644 index 000000000..fc5dc1e2f --- /dev/null +++ b/class_high_five_1_1_property_list_base__coll__graph.md5 @@ -0,0 +1 @@ +709f4ce5721a2cf5edbe10896c0a1bd4 \ No newline at end of file diff --git a/class_high_five_1_1_property_list_base__coll__graph.png b/class_high_five_1_1_property_list_base__coll__graph.png new file mode 100644 index 000000000..0b1601c9d Binary files /dev/null and b/class_high_five_1_1_property_list_base__coll__graph.png differ diff --git a/class_high_five_1_1_property_list_base__inherit__graph.map b/class_high_five_1_1_property_list_base__inherit__graph.map new file mode 100644 index 000000000..8245b6f30 --- /dev/null +++ b/class_high_five_1_1_property_list_base__inherit__graph.map @@ -0,0 +1,13 @@ + + + + + + + + + + + + + diff --git a/class_high_five_1_1_property_list_base__inherit__graph.md5 b/class_high_five_1_1_property_list_base__inherit__graph.md5 new file mode 100644 index 000000000..d66f4ab36 --- /dev/null +++ b/class_high_five_1_1_property_list_base__inherit__graph.md5 @@ -0,0 +1 @@ +51a27baecac4a65cb61fa4831e478ced \ No newline at end of file diff --git a/class_high_five_1_1_property_list_base__inherit__graph.png b/class_high_five_1_1_property_list_base__inherit__graph.png new file mode 100644 index 000000000..4879285c1 Binary files /dev/null and b/class_high_five_1_1_property_list_base__inherit__graph.png differ diff --git a/class_high_five_1_1_raw_property_list-members.html b/class_high_five_1_1_raw_property_list-members.html new file mode 100644 index 000000000..da4d942d9 --- /dev/null +++ b/class_high_five_1_1_raw_property_list-members.html @@ -0,0 +1,126 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::RawPropertyList< T > Member List
+
+
+ +

This is the complete list of members for HighFive::RawPropertyList< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
_initializeIfNeeded()HighFive::PropertyList< T >inlineprotected
add(const F &funct, const Args &... args)HighFive::RawPropertyList< T >inline
HighFive::PropertyList::add(const P &property)HighFive::PropertyList< T >inline
Default() noexceptHighFive::PropertyList< T >inlinestatic
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getType() const noexceptHighFive::PropertyList< T >inline
isValid() const noexceptHighFive::Objectinline
Object(Object &&other) noexceptHighFive::Objectinline
Object()HighFive::Objectinlineprotected
Object(const Object &other)HighFive::Objectinlineprotected
Object(hid_t)HighFive::Objectinlineexplicitprotected
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const Object &other) const noexceptHighFive::Objectinline
PropertyListBase() noexceptHighFive::PropertyListBaseinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_raw_property_list.html b/class_high_five_1_1_raw_property_list.html new file mode 100644 index 000000000..5e5f8f4ff --- /dev/null +++ b/class_high_five_1_1_raw_property_list.html @@ -0,0 +1,249 @@ + + + + + + + +HighFive: HighFive::RawPropertyList< T > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::RawPropertyList< T > Class Template Reference
+
+
+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::RawPropertyList< T >:
+
+
Inheritance graph
+ + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::RawPropertyList< T >:
+
+
Collaboration graph
+ + + + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

template<typename F , typename... Args>
void add (const F &funct, const Args &... args)
 
- Public Member Functions inherited from HighFive::PropertyList< T >
constexpr PropertyType getType () const noexcept
 return the type of this PropertyList
 
template<PropertyInterface P>
void add (const P &property)
 
- Public Member Functions inherited from HighFive::PropertyListBase
 PropertyListBase () noexcept
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from HighFive::PropertyList< T >
static const PropertyList< T > & Default () noexcept
 Return the Default property type object.
 
- Static Public Member Functions inherited from HighFive::PropertyListBase
static const PropertyListBaseDefault () noexcept
 
- Protected Member Functions inherited from HighFive::PropertyList< T >
void _initializeIfNeeded ()
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Detailed Description

+
template<PropertyType T>
+class HighFive::RawPropertyList< T >

RawPropertyLists are to be used when advanced H5 properties are desired and are not part of the HighFive API. Therefore this class is mainly for internal use.

+

Member Function Documentation

+ +

◆ add()

+ +
+
+
+template<PropertyType T>
+
+template<typename F , typename... Args>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void HighFive::RawPropertyList< T >::add (const F & funct,
const Args &... args 
)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_raw_property_list.js b/class_high_five_1_1_raw_property_list.js new file mode 100644 index 000000000..00e0eb163 --- /dev/null +++ b/class_high_five_1_1_raw_property_list.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_raw_property_list = +[ + [ "add", "class_high_five_1_1_raw_property_list.html#a7f1ab49326895254c10c8d39724aa944", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_raw_property_list__coll__graph.map b/class_high_five_1_1_raw_property_list__coll__graph.map new file mode 100644 index 000000000..1ebd94e84 --- /dev/null +++ b/class_high_five_1_1_raw_property_list__coll__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_raw_property_list__coll__graph.md5 b/class_high_five_1_1_raw_property_list__coll__graph.md5 new file mode 100644 index 000000000..53adb8f74 --- /dev/null +++ b/class_high_five_1_1_raw_property_list__coll__graph.md5 @@ -0,0 +1 @@ +f565206baa46e63327e074900a7a80b5 \ No newline at end of file diff --git a/class_high_five_1_1_raw_property_list__coll__graph.png b/class_high_five_1_1_raw_property_list__coll__graph.png new file mode 100644 index 000000000..b53ae19a7 Binary files /dev/null and b/class_high_five_1_1_raw_property_list__coll__graph.png differ diff --git a/class_high_five_1_1_raw_property_list__inherit__graph.map b/class_high_five_1_1_raw_property_list__inherit__graph.map new file mode 100644 index 000000000..1ebd94e84 --- /dev/null +++ b/class_high_five_1_1_raw_property_list__inherit__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_raw_property_list__inherit__graph.md5 b/class_high_five_1_1_raw_property_list__inherit__graph.md5 new file mode 100644 index 000000000..53adb8f74 --- /dev/null +++ b/class_high_five_1_1_raw_property_list__inherit__graph.md5 @@ -0,0 +1 @@ +f565206baa46e63327e074900a7a80b5 \ No newline at end of file diff --git a/class_high_five_1_1_raw_property_list__inherit__graph.png b/class_high_five_1_1_raw_property_list__inherit__graph.png new file mode 100644 index 000000000..b53ae19a7 Binary files /dev/null and b/class_high_five_1_1_raw_property_list__inherit__graph.png differ diff --git a/class_high_five_1_1_reference-members.html b/class_high_five_1_1_reference-members.html new file mode 100644 index 000000000..363c53601 --- /dev/null +++ b/class_high_five_1_1_reference-members.html @@ -0,0 +1,115 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Reference Member List
+
+
+ +

This is the complete list of members for HighFive::Reference, including all inherited members.

+ + + + + + + +
create_ref(hobj_ref_t *refptr) constHighFive::Referenceinlineprotected
dereference(const Object &location) constHighFive::Referenceinline
getType(const Object &location) constHighFive::Referenceinline
Reference()=defaultHighFive::Reference
Reference(const Object &location, const Object &object)HighFive::Referenceinline
Reference(const hobj_ref_t h5_ref)HighFive::Referenceinlineexplicitprotected
+
+ + + + diff --git a/class_high_five_1_1_reference.html b/class_high_five_1_1_reference.html new file mode 100644 index 000000000..42b7ba689 --- /dev/null +++ b/class_high_five_1_1_reference.html @@ -0,0 +1,363 @@ + + + + + + + +HighFive: HighFive::Reference Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Reference Class Reference
+
+
+ +

An HDF5 (object) reference type. + More...

+ +

#include <H5Reference.hpp>

+ + + + + + + + + + + + + + + +

+Public Member Functions

 Reference ()=default
 Create an empty Reference to be initialized later.
 
 Reference (const Object &location, const Object &object)
 Create a Reference to an object residing at a given location.
 
template<typename T >
dereference (const Object &location) const
 Retrieve the Object being referenced by the Reference.
 
ObjectType getType (const Object &location) const
 Get only the type of the referenced Object.
 
+ + + + + + + +

+Protected Member Functions

 Reference (const hobj_ref_t h5_ref)
 Create a Reference from a low-level HDF5 object reference.
 
void create_ref (hobj_ref_t *refptr) const
 Create the low-level reference and store it at refptr.
 
+

Detailed Description

+

An HDF5 (object) reference type.

+

HDF5 object references allow pointing to groups, datasets (and compound types). They differ from links in their ability to be stored and retrieved as data from the HDF5 file in datasets themselves.

+

Constructor & Destructor Documentation

+ +

◆ Reference() [1/3]

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Reference::Reference ()
+
+default
+
+ +

Create an empty Reference to be initialized later.

+ +
+
+ +

◆ Reference() [2/3]

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::Reference::Reference (const Objectlocation,
const Objectobject 
)
+
+inline
+
+ +

Create a Reference to an object residing at a given location.

+
Parameters
+ + + +
locationA File or Group where the object being referenced to resides
objectA Dataset or Group to be referenced
+
+
+ +
+
+ +

◆ Reference() [3/3]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::Reference::Reference (const hobj_ref_t h5_ref)
+
+inlineexplicitprotected
+
+ +

Create a Reference from a low-level HDF5 object reference.

+ +
+
+

Member Function Documentation

+ +

◆ create_ref()

+ +
+
+ + + + + +
+ + + + + + + + +
void HighFive::Reference::create_ref (hobj_ref_t * refptr) const
+
+inlineprotected
+
+ +

Create the low-level reference and store it at refptr.

+
Parameters
+ + +
refptrPointer to a memory location where the created HDF5 reference will be stored
+
+
+ +
+
+ +

◆ dereference()

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T HighFive::Reference::dereference (const Objectlocation) const
+
+inline
+
+ +

Retrieve the Object being referenced by the Reference.

+
Template Parameters
+ + +
Tthe appropriate HighFive Container (either DataSet or Group)
+
+
+
Parameters
+ + +
locationthe location where the referenced object is to be found (a File)
+
+
+
Returns
the dereferenced Object (either a Group or DataSet)
+ +
+
+ +

◆ getType()

+ +
+
+ + + + + +
+ + + + + + + + +
ObjectType HighFive::Reference::getType (const Objectlocation) const
+
+inline
+
+ +

Get only the type of the referenced Object.

+
Parameters
+ + +
locationthe location where the referenced object is to be found (a File)
+
+
+
Returns
the ObjectType of the referenced object
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_reference.js b/class_high_five_1_1_reference.js new file mode 100644 index 000000000..3e5a6b61c --- /dev/null +++ b/class_high_five_1_1_reference.js @@ -0,0 +1,9 @@ +var class_high_five_1_1_reference = +[ + [ "Reference", "class_high_five_1_1_reference.html#a8130903e051ab98f6affbb36627bcfda", null ], + [ "Reference", "class_high_five_1_1_reference.html#a68e53f37f2b5975e23e0fd78b57f0533", null ], + [ "Reference", "class_high_five_1_1_reference.html#a0eebda40272f370b15111fe2f88fd495", null ], + [ "create_ref", "class_high_five_1_1_reference.html#af33dd1870b37db8c90287df4f0c7d622", null ], + [ "dereference", "class_high_five_1_1_reference.html#a083d46fbe580304f8416f73e57a5b414", null ], + [ "getType", "class_high_five_1_1_reference.html#ab5596af0210db020de67f3e04a22da31", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_reference_exception-members.html b/class_high_five_1_1_reference_exception-members.html new file mode 100644 index 000000000..e7e674042 --- /dev/null +++ b/class_high_five_1_1_reference_exception-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::ReferenceException Member List
+
+
+ +

This is the complete list of members for HighFive::ReferenceException, including all inherited members.

+ + + + + + + + + + + + + +
_err_majorHighFive::Exceptionprotected
_err_minorHighFive::Exceptionprotected
_errmsgHighFive::Exceptionprotected
_nextHighFive::Exceptionprotected
Exception(const std::string &err_msg)HighFive::Exceptioninline
getErrMajor() constHighFive::Exceptioninline
getErrMinor() constHighFive::Exceptioninline
nextException() constHighFive::Exceptioninline
ReferenceException(const std::string &err_msg)HighFive::ReferenceExceptioninline
setErrorMsg(const std::string &errmsg)HighFive::Exceptioninlinevirtual
what() const overrideHighFive::Exceptioninline
~Exception()HighFive::Exceptioninlinevirtual
+
+ + + + diff --git a/class_high_five_1_1_reference_exception.html b/class_high_five_1_1_reference_exception.html new file mode 100644 index 000000000..0538dc44b --- /dev/null +++ b/class_high_five_1_1_reference_exception.html @@ -0,0 +1,209 @@ + + + + + + + +HighFive: HighFive::ReferenceException Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::ReferenceException Class Reference
+
+
+ +

Exception specific to HighFive Reference interface. + More...

+ +

#include <H5Exception.hpp>

+
+Inheritance diagram for HighFive::ReferenceException:
+
+
Inheritance graph
+ + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::ReferenceException:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 ReferenceException (const std::string &err_msg)
 
- Public Member Functions inherited from HighFive::Exception
 Exception (const std::string &err_msg)
 
virtual ~Exception () throw ()
 
const char * what () const override throw ()
 get the current exception error message
 
virtual void setErrorMsg (const std::string &errmsg)
 define the error message
 
ExceptionnextException () const
 nextException
 
hid_t getErrMajor () const
 HDF5 library error mapper.
 
hid_t getErrMinor () const
 HDF5 library error mapper.
 
+ + + + + + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from HighFive::Exception
std::string _errmsg
 
std::shared_ptr< Exception_next
 
hid_t _err_major
 
hid_t _err_minor
 
+

Detailed Description

+

Exception specific to HighFive Reference interface.

+

Constructor & Destructor Documentation

+ +

◆ ReferenceException()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::ReferenceException::ReferenceException (const std::string & err_msg)
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_reference_exception.js b/class_high_five_1_1_reference_exception.js new file mode 100644 index 000000000..fd7ca7b0d --- /dev/null +++ b/class_high_five_1_1_reference_exception.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_reference_exception = +[ + [ "ReferenceException", "class_high_five_1_1_reference_exception.html#a345ca1ae87323f0e8af38a6e59921890", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_reference_exception__coll__graph.map b/class_high_five_1_1_reference_exception__coll__graph.map new file mode 100644 index 000000000..518ecd38b --- /dev/null +++ b/class_high_five_1_1_reference_exception__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_reference_exception__coll__graph.md5 b/class_high_five_1_1_reference_exception__coll__graph.md5 new file mode 100644 index 000000000..fc9625124 --- /dev/null +++ b/class_high_five_1_1_reference_exception__coll__graph.md5 @@ -0,0 +1 @@ +7a02afc343582669980133e94c98dc98 \ No newline at end of file diff --git a/class_high_five_1_1_reference_exception__coll__graph.png b/class_high_five_1_1_reference_exception__coll__graph.png new file mode 100644 index 000000000..0b6722b0f Binary files /dev/null and b/class_high_five_1_1_reference_exception__coll__graph.png differ diff --git a/class_high_five_1_1_reference_exception__inherit__graph.map b/class_high_five_1_1_reference_exception__inherit__graph.map new file mode 100644 index 000000000..518ecd38b --- /dev/null +++ b/class_high_five_1_1_reference_exception__inherit__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_reference_exception__inherit__graph.md5 b/class_high_five_1_1_reference_exception__inherit__graph.md5 new file mode 100644 index 000000000..fc9625124 --- /dev/null +++ b/class_high_five_1_1_reference_exception__inherit__graph.md5 @@ -0,0 +1 @@ +7a02afc343582669980133e94c98dc98 \ No newline at end of file diff --git a/class_high_five_1_1_reference_exception__inherit__graph.png b/class_high_five_1_1_reference_exception__inherit__graph.png new file mode 100644 index 000000000..0b6722b0f Binary files /dev/null and b/class_high_five_1_1_reference_exception__inherit__graph.png differ diff --git a/class_high_five_1_1_selection-members.html b/class_high_five_1_1_selection-members.html new file mode 100644 index 000000000..9b3af9408 --- /dev/null +++ b/class_high_five_1_1_selection-members.html @@ -0,0 +1,127 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Selection Member List
+
+
+ +

This is the complete list of members for HighFive::Selection, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
getDataset() noexceptHighFive::Selectioninline
getDataset() const noexceptHighFive::Selectioninline
getDataType() constHighFive::Selectioninline
getMemSpace() const noexceptHighFive::Selectioninline
getSpace() const noexceptHighFive::Selectioninline
read(const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< Selection >inline
read(T &array, const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< Selection >inline
read(T *array, const DataType &dtype, const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< Selection >inline
read(T *array, const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< Selection >inline
select(const HyperSlab &hyperslab) constHighFive::SliceTraits< Selection >inline
select(const HyperSlab &hyperslab, const DataSpace &memspace) constHighFive::SliceTraits< Selection >inline
select(const std::vector< size_t > &offset, const std::vector< size_t > &count, const std::vector< size_t > &stride={}, const std::vector< size_t > &block={}) constHighFive::SliceTraits< Selection >inline
select(const std::vector< size_t > &columns) constHighFive::SliceTraits< Selection >inline
select(const ElementSet &elements) constHighFive::SliceTraits< Selection >inline
Selection(const DataSpace &memspace, const DataSpace &file_space, const DataSet &set)HighFive::Selectioninlineprotected
write(const T &buffer, const DataTransferProps &xfer_props=DataTransferProps())HighFive::SliceTraits< Selection >inline
write_raw(const T *buffer, const DataType &mem_datatype, const DataTransferProps &xfer_props=DataTransferProps())HighFive::SliceTraits< Selection >inline
write_raw(const T *buffer, const DataTransferProps &xfer_props=DataTransferProps())HighFive::SliceTraits< Selection >inline
+
+ + + + diff --git a/class_high_five_1_1_selection.html b/class_high_five_1_1_selection.html new file mode 100644 index 000000000..53078b0d9 --- /dev/null +++ b/class_high_five_1_1_selection.html @@ -0,0 +1,377 @@ + + + + + + + +HighFive: HighFive::Selection Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Selection Class Reference
+
+
+ +

Selection: represent a view on a slice/part of a dataset. + More...

+ +

#include <H5Selection.hpp>

+
+Inheritance diagram for HighFive::Selection:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::Selection:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

DataSpace getSpace () const noexcept
 getSpace
 
DataSpace getMemSpace () const noexcept
 getMemSpace
 
DataSetgetDataset () noexcept
 getDataSet
 
const DataSetgetDataset () const noexcept
 
const DataType getDataType () const
 return the datatype of the selection
 
- Public Member Functions inherited from HighFive::SliceTraits< Selection >
Selection select (const HyperSlab &hyperslab) const
 Select an hyperslab in the current Slice/Dataset.
 
Selection select (const HyperSlab &hyperslab, const DataSpace &memspace) const
 Select an hyperslab in the current Slice/Dataset.
 
Selection select (const std::vector< size_t > &offset, const std::vector< size_t > &count, const std::vector< size_t > &stride={}, const std::vector< size_t > &block={}) const
 Select a region in the current Slice/Dataset of count points at offset separated by stride. If strides are not provided they will default to 1 in all dimensions.
 
Selection select (const std::vector< size_t > &columns) const
 Select a set of columns in the last dimension of this dataset.
 
Selection select (const ElementSet &elements) const
 Select a region in the current Slice/Dataset out of a list of elements.
 
read (const DataTransferProps &xfer_props=DataTransferProps()) const
 
void read (T &array, const DataTransferProps &xfer_props=DataTransferProps()) const
 
void read (T *array, const DataType &dtype, const DataTransferProps &xfer_props=DataTransferProps()) const
 
void read (T *array, const DataTransferProps &xfer_props=DataTransferProps()) const
 
void write (const T &buffer, const DataTransferProps &xfer_props=DataTransferProps())
 
void write_raw (const T *buffer, const DataType &mem_datatype, const DataTransferProps &xfer_props=DataTransferProps())
 
void write_raw (const T *buffer, const DataTransferProps &xfer_props=DataTransferProps())
 
+ + + +

+Protected Member Functions

 Selection (const DataSpace &memspace, const DataSpace &file_space, const DataSet &set)
 
+

Detailed Description

+

Selection: represent a view on a slice/part of a dataset.

+

A Selection is valid only if its parent dataset is valid

+

Constructor & Destructor Documentation

+ +

◆ Selection()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
HighFive::Selection::Selection (const DataSpacememspace,
const DataSpacefile_space,
const DataSetset 
)
+
+inlineprotected
+
+ +
+
+

Member Function Documentation

+ +

◆ getDataset() [1/2]

+ +
+
+ + + + + +
+ + + + + + + +
const DataSet & HighFive::Selection::getDataset () const
+
+inlinenoexcept
+
+ +
+
+ +

◆ getDataset() [2/2]

+ +
+
+ + + + + +
+ + + + + + + +
DataSet & HighFive::Selection::getDataset ()
+
+inlinenoexcept
+
+ +

getDataSet

+
Returns
parent dataset of this selection
+ +
+
+ +

◆ getDataType()

+ +
+
+ + + + + +
+ + + + + + + +
const DataType HighFive::Selection::getDataType () const
+
+inline
+
+ +

return the datatype of the selection

+
Returns
return the datatype of the selection
+ +
+
+ +

◆ getMemSpace()

+ +
+
+ + + + + +
+ + + + + + + +
DataSpace HighFive::Selection::getMemSpace () const
+
+inlinenoexcept
+
+ +

getMemSpace

+
Returns
Dataspace associated with the memory representation of this selection
+ +
+
+ +

◆ getSpace()

+ +
+
+ + + + + +
+ + + + + + + +
DataSpace HighFive::Selection::getSpace () const
+
+inlinenoexcept
+
+ +

getSpace

+
Returns
Dataspace associated with this selection
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_selection.js b/class_high_five_1_1_selection.js new file mode 100644 index 000000000..32f112754 --- /dev/null +++ b/class_high_five_1_1_selection.js @@ -0,0 +1,9 @@ +var class_high_five_1_1_selection = +[ + [ "Selection", "class_high_five_1_1_selection.html#ae5ffe93f0e0a4d6e04d531420fd63e29", null ], + [ "getDataset", "class_high_five_1_1_selection.html#a883952cb62d668308d875bfbcc121fc8", null ], + [ "getDataset", "class_high_five_1_1_selection.html#a99180045db6986a3aa99aa19b0b97c07", null ], + [ "getDataType", "class_high_five_1_1_selection.html#a32e87dff815356a9fa9546a0c09f1d39", null ], + [ "getMemSpace", "class_high_five_1_1_selection.html#a0a1461d53a4d91d265a696a6da0fc57c", null ], + [ "getSpace", "class_high_five_1_1_selection.html#ae9f659387f72554c7747fc80ddfce280", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_selection__coll__graph.map b/class_high_five_1_1_selection__coll__graph.map new file mode 100644 index 000000000..03c4ba398 --- /dev/null +++ b/class_high_five_1_1_selection__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_selection__coll__graph.md5 b/class_high_five_1_1_selection__coll__graph.md5 new file mode 100644 index 000000000..5038eb57f --- /dev/null +++ b/class_high_five_1_1_selection__coll__graph.md5 @@ -0,0 +1 @@ +862297664c9b5e46ce8f7003550775e1 \ No newline at end of file diff --git a/class_high_five_1_1_selection__coll__graph.png b/class_high_five_1_1_selection__coll__graph.png new file mode 100644 index 000000000..4f3caa668 Binary files /dev/null and b/class_high_five_1_1_selection__coll__graph.png differ diff --git a/class_high_five_1_1_selection__inherit__graph.map b/class_high_five_1_1_selection__inherit__graph.map new file mode 100644 index 000000000..03c4ba398 --- /dev/null +++ b/class_high_five_1_1_selection__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_selection__inherit__graph.md5 b/class_high_five_1_1_selection__inherit__graph.md5 new file mode 100644 index 000000000..5038eb57f --- /dev/null +++ b/class_high_five_1_1_selection__inherit__graph.md5 @@ -0,0 +1 @@ +862297664c9b5e46ce8f7003550775e1 \ No newline at end of file diff --git a/class_high_five_1_1_selection__inherit__graph.png b/class_high_five_1_1_selection__inherit__graph.png new file mode 100644 index 000000000..4f3caa668 Binary files /dev/null and b/class_high_five_1_1_selection__inherit__graph.png differ diff --git a/class_high_five_1_1_shuffle-members.html b/class_high_five_1_1_shuffle-members.html new file mode 100644 index 000000000..a3e65915b --- /dev/null +++ b/class_high_five_1_1_shuffle-members.html @@ -0,0 +1,110 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Shuffle Member List
+
+
+ +

This is the complete list of members for HighFive::Shuffle, including all inherited members.

+ + +
Shuffle()=defaultHighFive::Shuffle
+
+ + + + diff --git a/class_high_five_1_1_shuffle.html b/class_high_five_1_1_shuffle.html new file mode 100644 index 000000000..6e80d7769 --- /dev/null +++ b/class_high_five_1_1_shuffle.html @@ -0,0 +1,168 @@ + + + + + + + +HighFive: HighFive::Shuffle Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Shuffle Class Reference
+
+
+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::Shuffle:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::Shuffle:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + +

+Public Member Functions

 Shuffle ()=default
 
+

Constructor & Destructor Documentation

+ +

◆ Shuffle()

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::Shuffle::Shuffle ()
+
+default
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_shuffle.js b/class_high_five_1_1_shuffle.js new file mode 100644 index 000000000..313ed1ffc --- /dev/null +++ b/class_high_five_1_1_shuffle.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_shuffle = +[ + [ "Shuffle", "class_high_five_1_1_shuffle.html#a7fc2632a04860fee90b30867afb43f46", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_shuffle__coll__graph.map b/class_high_five_1_1_shuffle__coll__graph.map new file mode 100644 index 000000000..79abbb974 --- /dev/null +++ b/class_high_five_1_1_shuffle__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_shuffle__coll__graph.md5 b/class_high_five_1_1_shuffle__coll__graph.md5 new file mode 100644 index 000000000..cd5ae645b --- /dev/null +++ b/class_high_five_1_1_shuffle__coll__graph.md5 @@ -0,0 +1 @@ +f665ca39ee22384fd4ed1fbb3f4459ef \ No newline at end of file diff --git a/class_high_five_1_1_shuffle__coll__graph.png b/class_high_five_1_1_shuffle__coll__graph.png new file mode 100644 index 000000000..d9904c175 Binary files /dev/null and b/class_high_five_1_1_shuffle__coll__graph.png differ diff --git a/class_high_five_1_1_shuffle__inherit__graph.map b/class_high_five_1_1_shuffle__inherit__graph.map new file mode 100644 index 000000000..79abbb974 --- /dev/null +++ b/class_high_five_1_1_shuffle__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_shuffle__inherit__graph.md5 b/class_high_five_1_1_shuffle__inherit__graph.md5 new file mode 100644 index 000000000..cd5ae645b --- /dev/null +++ b/class_high_five_1_1_shuffle__inherit__graph.md5 @@ -0,0 +1 @@ +f665ca39ee22384fd4ed1fbb3f4459ef \ No newline at end of file diff --git a/class_high_five_1_1_shuffle__inherit__graph.png b/class_high_five_1_1_shuffle__inherit__graph.png new file mode 100644 index 000000000..d9904c175 Binary files /dev/null and b/class_high_five_1_1_shuffle__inherit__graph.png differ diff --git a/class_high_five_1_1_silence_h_d_f5-members.html b/class_high_five_1_1_silence_h_d_f5-members.html new file mode 100644 index 000000000..63c567b5d --- /dev/null +++ b/class_high_five_1_1_silence_h_d_f5-members.html @@ -0,0 +1,111 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::SilenceHDF5 Member List
+
+
+ +

This is the complete list of members for HighFive::SilenceHDF5, including all inherited members.

+ + + +
SilenceHDF5(bool enable=true)HighFive::SilenceHDF5inline
~SilenceHDF5()HighFive::SilenceHDF5inline
+
+ + + + diff --git a/class_high_five_1_1_silence_h_d_f5.html b/class_high_five_1_1_silence_h_d_f5.html new file mode 100644 index 000000000..5fe9b1bc1 --- /dev/null +++ b/class_high_five_1_1_silence_h_d_f5.html @@ -0,0 +1,180 @@ + + + + + + + +HighFive: HighFive::SilenceHDF5 Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::SilenceHDF5 Class Reference
+
+
+ +

Utility class to disable HDF5 stack printing inside a scope. + More...

+ +

#include <H5Utility.hpp>

+ + + + + + +

+Public Member Functions

 SilenceHDF5 (bool enable=true)
 
 ~SilenceHDF5 ()
 
+

Detailed Description

+

Utility class to disable HDF5 stack printing inside a scope.

+

Constructor & Destructor Documentation

+ +

◆ SilenceHDF5()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::SilenceHDF5::SilenceHDF5 (bool enable = true)
+
+inline
+
+ +
+
+ +

◆ ~SilenceHDF5()

+ +
+
+ + + + + +
+ + + + + + + +
HighFive::SilenceHDF5::~SilenceHDF5 ()
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following file: +
+
+ + + + diff --git a/class_high_five_1_1_silence_h_d_f5.js b/class_high_five_1_1_silence_h_d_f5.js new file mode 100644 index 000000000..bb4addb30 --- /dev/null +++ b/class_high_five_1_1_silence_h_d_f5.js @@ -0,0 +1,5 @@ +var class_high_five_1_1_silence_h_d_f5 = +[ + [ "SilenceHDF5", "class_high_five_1_1_silence_h_d_f5.html#a87e3b628feb913044cf4859fce72e9b5", null ], + [ "~SilenceHDF5", "class_high_five_1_1_silence_h_d_f5.html#a56bfc9798ec749255cdd7960a73409a0", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_slice_traits-members.html b/class_high_five_1_1_slice_traits-members.html new file mode 100644 index 000000000..1c2fb75b7 --- /dev/null +++ b/class_high_five_1_1_slice_traits-members.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::SliceTraits< Derivate > Member List
+
+
+ +

This is the complete list of members for HighFive::SliceTraits< Derivate >, including all inherited members.

+ + + + + + + + + + + + + +
read(const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< Derivate >inline
read(T &array, const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< Derivate >inline
read(T *array, const DataType &dtype, const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< Derivate >inline
read(T *array, const DataTransferProps &xfer_props=DataTransferProps()) constHighFive::SliceTraits< Derivate >inline
select(const HyperSlab &hyperslab) constHighFive::SliceTraits< Derivate >inline
select(const HyperSlab &hyperslab, const DataSpace &memspace) constHighFive::SliceTraits< Derivate >inline
select(const std::vector< size_t > &offset, const std::vector< size_t > &count, const std::vector< size_t > &stride={}, const std::vector< size_t > &block={}) constHighFive::SliceTraits< Derivate >inline
select(const std::vector< size_t > &columns) constHighFive::SliceTraits< Derivate >inline
select(const ElementSet &elements) constHighFive::SliceTraits< Derivate >inline
write(const T &buffer, const DataTransferProps &xfer_props=DataTransferProps())HighFive::SliceTraits< Derivate >inline
write_raw(const T *buffer, const DataType &mem_datatype, const DataTransferProps &xfer_props=DataTransferProps())HighFive::SliceTraits< Derivate >inline
write_raw(const T *buffer, const DataTransferProps &xfer_props=DataTransferProps())HighFive::SliceTraits< Derivate >inline
+
+ + + + diff --git a/class_high_five_1_1_slice_traits.html b/class_high_five_1_1_slice_traits.html new file mode 100644 index 000000000..f6217a534 --- /dev/null +++ b/class_high_five_1_1_slice_traits.html @@ -0,0 +1,661 @@ + + + + + + + +HighFive: HighFive::SliceTraits< Derivate > Class Template Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::SliceTraits< Derivate > Class Template Reference
+
+
+ +

#include <H5Slice_traits.hpp>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

Selection select (const HyperSlab &hyperslab) const
 Select an hyperslab in the current Slice/Dataset.
 
Selection select (const HyperSlab &hyperslab, const DataSpace &memspace) const
 Select an hyperslab in the current Slice/Dataset.
 
Selection select (const std::vector< size_t > &offset, const std::vector< size_t > &count, const std::vector< size_t > &stride={}, const std::vector< size_t > &block={}) const
 Select a region in the current Slice/Dataset of count points at offset separated by stride. If strides are not provided they will default to 1 in all dimensions.
 
Selection select (const std::vector< size_t > &columns) const
 Select a set of columns in the last dimension of this dataset.
 
Selection select (const ElementSet &elements) const
 Select a region in the current Slice/Dataset out of a list of elements.
 
template<typename T >
read (const DataTransferProps &xfer_props=DataTransferProps()) const
 
template<typename T >
void read (T &array, const DataTransferProps &xfer_props=DataTransferProps()) const
 
template<typename T >
void read (T *array, const DataType &dtype, const DataTransferProps &xfer_props=DataTransferProps()) const
 
template<typename T >
void read (T *array, const DataTransferProps &xfer_props=DataTransferProps()) const
 
template<typename T >
void write (const T &buffer, const DataTransferProps &xfer_props=DataTransferProps())
 
template<typename T >
void write_raw (const T *buffer, const DataType &mem_datatype, const DataTransferProps &xfer_props=DataTransferProps())
 
template<typename T >
void write_raw (const T *buffer, const DataTransferProps &xfer_props=DataTransferProps())
 
+

Member Function Documentation

+ +

◆ read() [1/4]

+ +
+
+
+template<typename Derivate >
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T HighFive::SliceTraits< Derivate >::read (const DataTransferPropsxfer_props = DataTransferProps()) const
+
+inline
+
+ +
+
+ +

◆ read() [2/4]

+ +
+
+
+template<typename Derivate >
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void HighFive::SliceTraits< Derivate >::read (T & array,
const DataTransferPropsxfer_props = DataTransferProps() 
) const
+
+inline
+
+

Read the entire dataset into a buffer An exception is raised is if the numbers of dimension of the buffer and of the dataset are different.

+

The array type can be a N-pointer or a N-vector. For plain pointers not dimensionality checking will be performed, it is the user's responsibility to ensure that the right amount of space has been allocated.

+ +
+
+ +

◆ read() [3/4]

+ +
+
+
+template<typename Derivate >
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void HighFive::SliceTraits< Derivate >::read (T * array,
const DataTransferPropsxfer_props = DataTransferProps() 
) const
+
+inline
+
+

Read the entire dataset into a raw buffer

+

Same as read(T*, const DataType&, const DataTransferProps&). However, this overload deduces the HDF5 datatype of the element of array from T. Note, that the file datatype is already fixed.

+
Parameters
+ + + +
arrayA buffer containing enough space for the data
xfer_propsData Transfer properties
+
+
+ +
+
+ +

◆ read() [4/4]

+ +
+
+
+template<typename Derivate >
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void HighFive::SliceTraits< Derivate >::read (T * array,
const DataTypedtype,
const DataTransferPropsxfer_props = DataTransferProps() 
) const
+
+inline
+
+

Read the entire dataset into a raw buffer

+

No dimensionality checks will be performed, it is the user's responsibility to ensure that the right amount of space has been allocated.

Parameters
+ + + + +
arrayA buffer containing enough space for the data
dtypeThe type of the data, in case it cannot be automatically guessed
xfer_propsData Transfer properties
+
+
+ +
+
+ +

◆ select() [1/5]

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
Selection HighFive::SliceTraits< Derivate >::select (const ElementSetelements) const
+
+inline
+
+ +

Select a region in the current Slice/Dataset out of a list of elements.

+ +
+
+ +

◆ select() [2/5]

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
Selection HighFive::SliceTraits< Derivate >::select (const HyperSlabhyperslab) const
+
+inline
+
+ +

Select an hyperslab in the current Slice/Dataset.

+

HyperSlabs can be either regular or irregular. Irregular hyperslabs are typically generated by taking the union of regular hyperslabs. An irregular hyperslab, in general, does not fit nicely into a multi-dimensional array, but only a subset of such an array.

+

Therefore, the only memspaces supported for general hyperslabs are one-dimensional arrays.

+ +
+
+ +

◆ select() [3/5]

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Selection HighFive::SliceTraits< Derivate >::select (const HyperSlabhyperslab,
const DataSpacememspace 
) const
+
+inline
+
+ +

Select an hyperslab in the current Slice/Dataset.

+

If the selection can be read into a simple, multi-dimensional dataspace, then this overload enable specifying the shape of the memory dataspace with memspace. Note, that simple implies no offsets, strides or number of blocks, just the size of the block in each dimension.

+ +
+
+ +

◆ select() [4/5]

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + +
Selection HighFive::SliceTraits< Derivate >::select (const std::vector< size_t > & columns) const
+
+inline
+
+ +

Select a set of columns in the last dimension of this dataset.

+

The column indices must be smaller than the dimension size.

+ +
+
+ +

◆ select() [5/5]

+ +
+
+
+template<typename Derivate >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Selection HighFive::SliceTraits< Derivate >::select (const std::vector< size_t > & offset,
const std::vector< size_t > & count,
const std::vector< size_t > & stride = {},
const std::vector< size_t > & block = {} 
) const
+
+inline
+
+ +

Select a region in the current Slice/Dataset of count points at offset separated by stride. If strides are not provided they will default to 1 in all dimensions.

+

vector offset and count have to be from the same dimension

+ +
+
+ +

◆ write()

+ +
+
+
+template<typename Derivate >
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void HighFive::SliceTraits< Derivate >::write (const T & buffer,
const DataTransferPropsxfer_props = DataTransferProps() 
)
+
+inline
+
+

Write the integrality N-dimension buffer to this dataset An exception is raised is if the numbers of dimension of the buffer and of the dataset are different

+

The array type can be a N-pointer or a N-vector ( e.g int** integer two dimensional array )

+ +
+
+ +

◆ write_raw() [1/2]

+ +
+
+
+template<typename Derivate >
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void HighFive::SliceTraits< Derivate >::write_raw (const T * buffer,
const DataTransferPropsxfer_props = DataTransferProps() 
)
+
+inline
+
+

Write from a raw pointer into this dataset.

+

Same as write_raw(const T*, const DataTransferProps&). However, this overload attempts to guess the data type of buffer, i.e. the memory datatype. Note that the file datatype is already fixed.

+ +
+
+ +

◆ write_raw() [2/2]

+ +
+
+
+template<typename Derivate >
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void HighFive::SliceTraits< Derivate >::write_raw (const T * buffer,
const DataTypemem_datatype,
const DataTransferPropsxfer_props = DataTransferProps() 
)
+
+inline
+
+

Write from a raw pointer into this dataset.

+

No dimensionality checks will be performed, it is the user's responsibility to ensure that the buffer holds the right amount of elements. For n-dimensional matrices the buffer layout follows H5 default conventions.

+

Note, this is the shallowest wrapper around H5Dwrite and should be used if full control is needed. Generally prefer write.

+
Parameters
+ + + + +
bufferA buffer containing the data to be written
dtypeThe datatype of buffer, i.e. the memory data type.
xfer_propsThe HDF5 data transfer properties, e.g. collective MPI-IO.
+
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_slice_traits.js b/class_high_five_1_1_slice_traits.js new file mode 100644 index 000000000..0138ec706 --- /dev/null +++ b/class_high_five_1_1_slice_traits.js @@ -0,0 +1,15 @@ +var class_high_five_1_1_slice_traits = +[ + [ "read", "class_high_five_1_1_slice_traits.html#a1301abe3b9745470576986a1cbf7f0c9", null ], + [ "read", "class_high_five_1_1_slice_traits.html#af62a6a1f6c52da1c8ef501067ed948c8", null ], + [ "read", "class_high_five_1_1_slice_traits.html#a8c5a039f4728158ae7ea39b806660090", null ], + [ "read", "class_high_five_1_1_slice_traits.html#a308151100e49985c077608619302c6c0", null ], + [ "select", "class_high_five_1_1_slice_traits.html#aa67c235ff1633d91f77b4f3fd911da75", null ], + [ "select", "class_high_five_1_1_slice_traits.html#aa11ef45e433e18ce8f4706f17a8d7463", null ], + [ "select", "class_high_five_1_1_slice_traits.html#a71175dfcf7e9fa5ca5d5e2919163dece", null ], + [ "select", "class_high_five_1_1_slice_traits.html#a52c44cc1bdfac24890b999e902099c83", null ], + [ "select", "class_high_five_1_1_slice_traits.html#a6a76a20247d0e8f8629b81c17425d73c", null ], + [ "write", "class_high_five_1_1_slice_traits.html#a307d4d8539a69feda2bbf11bf8622e60", null ], + [ "write_raw", "class_high_five_1_1_slice_traits.html#a4396e0774fd015f081dcc3eb12efe97c", null ], + [ "write_raw", "class_high_five_1_1_slice_traits.html#aeac937f71ee942fafac7d19fb658721a", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_string_type-members.html b/class_high_five_1_1_string_type-members.html new file mode 100644 index 000000000..62750914b --- /dev/null +++ b/class_high_five_1_1_string_type-members.html @@ -0,0 +1,135 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::StringType Member List
+
+
+ +

This is the complete list of members for HighFive::StringType, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
asStringType() constHighFive::DataTypeinline
DataTypeHighFive::StringTypefriend
empty() const noexceptHighFive::DataTypeinline
getCharacterSet() constHighFive::StringTypeinline
getClass() constHighFive::DataTypeinline
getCreatePropertyList() constHighFive::DataTypeinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getPadding() constHighFive::StringTypeinline
getSize() constHighFive::DataTypeinline
getType() constHighFive::Objectinline
isFixedLenStr() constHighFive::DataTypeinline
isReference() constHighFive::DataTypeinline
isValid() const noexceptHighFive::Objectinline
isVariableStr() constHighFive::DataTypeinline
Object(Object &&other) noexceptHighFive::DataTypeinlineprotected
Object()HighFive::DataTypeinlineprotected
Object(const Object &other)HighFive::DataTypeinlineprotected
Object(hid_t)HighFive::DataTypeinlineexplicitprotected
operator!=(const DataType &other) constHighFive::DataTypeinline
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const DataType &other) constHighFive::DataTypeinline
HighFive::Object::operator==(const Object &other) const noexceptHighFive::Objectinline
string() constHighFive::DataTypeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_string_type.html b/class_high_five_1_1_string_type.html new file mode 100644 index 000000000..431cc9bcd --- /dev/null +++ b/class_high_five_1_1_string_type.html @@ -0,0 +1,313 @@ + + + + + + + +HighFive: HighFive::StringType Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::StringType Class Reference
+
+
+ +

#include <H5DataType.hpp>

+
+Inheritance diagram for HighFive::StringType:
+
+
Inheritance graph
+ + + + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::StringType:
+
+
Collaboration graph
+ + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

CharacterSet getCharacterSet () const
 For stings return the character set.
 
StringPadding getPadding () const
 For fixed length stings return the padding.
 
- Public Member Functions inherited from HighFive::DataType
bool operator== (const DataType &other) const
 
bool operator!= (const DataType &other) const
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
StringType asStringType () const
 Returns this datatype as a StringType.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
DataTypeCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this DataType.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + +

+Friends

class DataType
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from HighFive::DataType
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Member Function Documentation

+ +

◆ getCharacterSet()

+ +
+
+ + + + + +
+ + + + + + + +
CharacterSet HighFive::StringType::getCharacterSet () const
+
+inline
+
+ +

For stings return the character set.

+ +
+
+ +

◆ getPadding()

+ +
+
+ + + + + +
+ + + + + + + +
StringPadding HighFive::StringType::getPadding () const
+
+inline
+
+ +

For fixed length stings return the padding.

+ +
+
+

Friends And Related Symbol Documentation

+ +

◆ DataType

+ +
+
+ + + + + +
+ + + + +
friend class DataType
+
+friend
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_string_type.js b/class_high_five_1_1_string_type.js new file mode 100644 index 000000000..f46e48d07 --- /dev/null +++ b/class_high_five_1_1_string_type.js @@ -0,0 +1,6 @@ +var class_high_five_1_1_string_type = +[ + [ "getCharacterSet", "class_high_five_1_1_string_type.html#a81ae2382aeeccb15d53d70d04496fcab", null ], + [ "getPadding", "class_high_five_1_1_string_type.html#a4f914467563cab045807517baee82c2d", null ], + [ "DataType", "class_high_five_1_1_string_type.html#a3891af67cf0b0e58640245a7ba31176f", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_string_type__coll__graph.map b/class_high_five_1_1_string_type__coll__graph.map new file mode 100644 index 000000000..6e7fa5338 --- /dev/null +++ b/class_high_five_1_1_string_type__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/class_high_five_1_1_string_type__coll__graph.md5 b/class_high_five_1_1_string_type__coll__graph.md5 new file mode 100644 index 000000000..f7096d912 --- /dev/null +++ b/class_high_five_1_1_string_type__coll__graph.md5 @@ -0,0 +1 @@ +202951c97a97e5c8cda56ae6736dce65 \ No newline at end of file diff --git a/class_high_five_1_1_string_type__coll__graph.png b/class_high_five_1_1_string_type__coll__graph.png new file mode 100644 index 000000000..0666d7d38 Binary files /dev/null and b/class_high_five_1_1_string_type__coll__graph.png differ diff --git a/class_high_five_1_1_string_type__inherit__graph.map b/class_high_five_1_1_string_type__inherit__graph.map new file mode 100644 index 000000000..c54f76c51 --- /dev/null +++ b/class_high_five_1_1_string_type__inherit__graph.map @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/class_high_five_1_1_string_type__inherit__graph.md5 b/class_high_five_1_1_string_type__inherit__graph.md5 new file mode 100644 index 000000000..52ad0fc7f --- /dev/null +++ b/class_high_five_1_1_string_type__inherit__graph.md5 @@ -0,0 +1 @@ +f24ce487ff30470a5f23d3fc940954c9 \ No newline at end of file diff --git a/class_high_five_1_1_string_type__inherit__graph.png b/class_high_five_1_1_string_type__inherit__graph.png new file mode 100644 index 000000000..0099bc4e2 Binary files /dev/null and b/class_high_five_1_1_string_type__inherit__graph.png differ diff --git a/class_high_five_1_1_szip-members.html b/class_high_five_1_1_szip-members.html new file mode 100644 index 000000000..f57b39926 --- /dev/null +++ b/class_high_five_1_1_szip-members.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::Szip Member List
+
+
+ +

This is the complete list of members for HighFive::Szip, including all inherited members.

+ + + + +
getOptionsMask() constHighFive::Szipinline
getPixelsPerBlock() constHighFive::Szipinline
Szip(unsigned options_mask=H5_SZIP_EC_OPTION_MASK, unsigned pixels_per_block=H5_SZIP_MAX_PIXELS_PER_BLOCK)HighFive::Szipinlineexplicit
+
+ + + + diff --git a/class_high_five_1_1_szip.html b/class_high_five_1_1_szip.html new file mode 100644 index 000000000..1fd9bdd25 --- /dev/null +++ b/class_high_five_1_1_szip.html @@ -0,0 +1,234 @@ + + + + + + + +HighFive: HighFive::Szip Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::Szip Class Reference
+
+
+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::Szip:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::Szip:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + +

+Public Member Functions

 Szip (unsigned options_mask=H5_SZIP_EC_OPTION_MASK, unsigned pixels_per_block=H5_SZIP_MAX_PIXELS_PER_BLOCK)
 
unsigned getOptionsMask () const
 
unsigned getPixelsPerBlock () const
 
+

Constructor & Destructor Documentation

+ +

◆ Szip()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
HighFive::Szip::Szip (unsigned options_mask = H5_SZIP_EC_OPTION_MASK,
unsigned pixels_per_block = H5_SZIP_MAX_PIXELS_PER_BLOCK 
)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ getOptionsMask()

+ +
+
+ + + + + +
+ + + + + + + +
unsigned HighFive::Szip::getOptionsMask () const
+
+inline
+
+ +
+
+ +

◆ getPixelsPerBlock()

+ +
+
+ + + + + +
+ + + + + + + +
unsigned HighFive::Szip::getPixelsPerBlock () const
+
+inline
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_szip.js b/class_high_five_1_1_szip.js new file mode 100644 index 000000000..3f105f455 --- /dev/null +++ b/class_high_five_1_1_szip.js @@ -0,0 +1,6 @@ +var class_high_five_1_1_szip = +[ + [ "Szip", "class_high_five_1_1_szip.html#a2857efb608427dbfcea9356fbd0f1cea", null ], + [ "getOptionsMask", "class_high_five_1_1_szip.html#ae2a9cc8055aad910598e3f03c4bba3c0", null ], + [ "getPixelsPerBlock", "class_high_five_1_1_szip.html#a9ad6b7b8022b89ac1a30bf2cfdbd7cf0", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_szip__coll__graph.map b/class_high_five_1_1_szip__coll__graph.map new file mode 100644 index 000000000..5396b6395 --- /dev/null +++ b/class_high_five_1_1_szip__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_szip__coll__graph.md5 b/class_high_five_1_1_szip__coll__graph.md5 new file mode 100644 index 000000000..3e617b139 --- /dev/null +++ b/class_high_five_1_1_szip__coll__graph.md5 @@ -0,0 +1 @@ +dcc61507a84edc2d2de97159677174c4 \ No newline at end of file diff --git a/class_high_five_1_1_szip__coll__graph.png b/class_high_five_1_1_szip__coll__graph.png new file mode 100644 index 000000000..58301f7d3 Binary files /dev/null and b/class_high_five_1_1_szip__coll__graph.png differ diff --git a/class_high_five_1_1_szip__inherit__graph.map b/class_high_five_1_1_szip__inherit__graph.map new file mode 100644 index 000000000..5396b6395 --- /dev/null +++ b/class_high_five_1_1_szip__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_szip__inherit__graph.md5 b/class_high_five_1_1_szip__inherit__graph.md5 new file mode 100644 index 000000000..3e617b139 --- /dev/null +++ b/class_high_five_1_1_szip__inherit__graph.md5 @@ -0,0 +1 @@ +dcc61507a84edc2d2de97159677174c4 \ No newline at end of file diff --git a/class_high_five_1_1_szip__inherit__graph.png b/class_high_five_1_1_szip__inherit__graph.png new file mode 100644 index 000000000..58301f7d3 Binary files /dev/null and b/class_high_five_1_1_szip__inherit__graph.png differ diff --git a/class_high_five_1_1_use_collective_i_o-members.html b/class_high_five_1_1_use_collective_i_o-members.html new file mode 100644 index 000000000..37fb8945d --- /dev/null +++ b/class_high_five_1_1_use_collective_i_o-members.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::UseCollectiveIO Member List
+
+
+ +

This is the complete list of members for HighFive::UseCollectiveIO, including all inherited members.

+ + + + +
isCollective() constHighFive::UseCollectiveIOinline
UseCollectiveIO(bool enable=true)HighFive::UseCollectiveIOinlineexplicit
UseCollectiveIO(const DataTransferProps &dxpl)HighFive::UseCollectiveIOinlineexplicit
+
+ + + + diff --git a/class_high_five_1_1_use_collective_i_o.html b/class_high_five_1_1_use_collective_i_o.html new file mode 100644 index 000000000..53a911046 --- /dev/null +++ b/class_high_five_1_1_use_collective_i_o.html @@ -0,0 +1,228 @@ + + + + + + + +HighFive: HighFive::UseCollectiveIO Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::UseCollectiveIO Class Reference
+
+
+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for HighFive::UseCollectiveIO:
+
+
Inheritance graph
+ + + + + +
[legend]
+
+Collaboration diagram for HighFive::UseCollectiveIO:
+
+
Collaboration graph
+ + + + + +
[legend]
+ + + + + + + + + +

+Public Member Functions

 UseCollectiveIO (bool enable=true)
 
 UseCollectiveIO (const DataTransferProps &dxpl)
 
bool isCollective () const
 Does the property request collective IO?
 
+

Constructor & Destructor Documentation

+ +

◆ UseCollectiveIO() [1/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::UseCollectiveIO::UseCollectiveIO (bool enable = true)
+
+inlineexplicit
+
+ +
+
+ +

◆ UseCollectiveIO() [2/2]

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::UseCollectiveIO::UseCollectiveIO (const DataTransferPropsdxpl)
+
+inlineexplicit
+
+ +
+
+

Member Function Documentation

+ +

◆ isCollective()

+ +
+
+ + + + + +
+ + + + + + + +
bool HighFive::UseCollectiveIO::isCollective () const
+
+inline
+
+ +

Does the property request collective IO?

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_use_collective_i_o.js b/class_high_five_1_1_use_collective_i_o.js new file mode 100644 index 000000000..33d90aa7e --- /dev/null +++ b/class_high_five_1_1_use_collective_i_o.js @@ -0,0 +1,6 @@ +var class_high_five_1_1_use_collective_i_o = +[ + [ "UseCollectiveIO", "class_high_five_1_1_use_collective_i_o.html#a2e69f2c3f51af01f979094e5f8624327", null ], + [ "UseCollectiveIO", "class_high_five_1_1_use_collective_i_o.html#a91ea36587502d39431c7fbb565e9debe", null ], + [ "isCollective", "class_high_five_1_1_use_collective_i_o.html#a2c5a378080dd17e736bd0f6b0ae81e1c", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_use_collective_i_o__coll__graph.map b/class_high_five_1_1_use_collective_i_o__coll__graph.map new file mode 100644 index 000000000..01e757950 --- /dev/null +++ b/class_high_five_1_1_use_collective_i_o__coll__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_use_collective_i_o__coll__graph.md5 b/class_high_five_1_1_use_collective_i_o__coll__graph.md5 new file mode 100644 index 000000000..e4186200b --- /dev/null +++ b/class_high_five_1_1_use_collective_i_o__coll__graph.md5 @@ -0,0 +1 @@ +a01179a873a1cfd0cc02ea424eff26b0 \ No newline at end of file diff --git a/class_high_five_1_1_use_collective_i_o__coll__graph.png b/class_high_five_1_1_use_collective_i_o__coll__graph.png new file mode 100644 index 000000000..34b569d77 Binary files /dev/null and b/class_high_five_1_1_use_collective_i_o__coll__graph.png differ diff --git a/class_high_five_1_1_use_collective_i_o__inherit__graph.map b/class_high_five_1_1_use_collective_i_o__inherit__graph.map new file mode 100644 index 000000000..01e757950 --- /dev/null +++ b/class_high_five_1_1_use_collective_i_o__inherit__graph.map @@ -0,0 +1,5 @@ + + + + + diff --git a/class_high_five_1_1_use_collective_i_o__inherit__graph.md5 b/class_high_five_1_1_use_collective_i_o__inherit__graph.md5 new file mode 100644 index 000000000..e4186200b --- /dev/null +++ b/class_high_five_1_1_use_collective_i_o__inherit__graph.md5 @@ -0,0 +1 @@ +a01179a873a1cfd0cc02ea424eff26b0 \ No newline at end of file diff --git a/class_high_five_1_1_use_collective_i_o__inherit__graph.png b/class_high_five_1_1_use_collective_i_o__inherit__graph.png new file mode 100644 index 000000000..34b569d77 Binary files /dev/null and b/class_high_five_1_1_use_collective_i_o__inherit__graph.png differ diff --git a/class_high_five_1_1_variable_length_string_type-members.html b/class_high_five_1_1_variable_length_string_type-members.html new file mode 100644 index 000000000..246afcb83 --- /dev/null +++ b/class_high_five_1_1_variable_length_string_type-members.html @@ -0,0 +1,135 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive::VariableLengthStringType Member List
+
+
+ +

This is the complete list of members for HighFive::VariableLengthStringType, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
_hidHighFive::Objectprotected
asStringType() constHighFive::DataTypeinline
empty() const noexceptHighFive::DataTypeinline
getCharacterSet() constHighFive::StringTypeinline
getClass() constHighFive::DataTypeinline
getCreatePropertyList() constHighFive::DataTypeinline
getId() const noexceptHighFive::Objectinline
getInfo() constHighFive::Objectinline
getPadding() constHighFive::StringTypeinline
getSize() constHighFive::DataTypeinline
getType() constHighFive::Objectinline
isFixedLenStr() constHighFive::DataTypeinline
isReference() constHighFive::DataTypeinline
isValid() const noexceptHighFive::Objectinline
isVariableStr() constHighFive::DataTypeinline
Object(Object &&other) noexceptHighFive::DataTypeinlineprotected
Object()HighFive::DataTypeinlineprotected
Object(const Object &other)HighFive::DataTypeinlineprotected
Object(hid_t)HighFive::DataTypeinlineexplicitprotected
operator!=(const DataType &other) constHighFive::DataTypeinline
operator=(const Object &other)HighFive::Objectinlineprotected
operator==(const DataType &other) constHighFive::DataTypeinline
HighFive::Object::operator==(const Object &other) const noexceptHighFive::Objectinline
string() constHighFive::DataTypeinline
VariableLengthStringType(CharacterSet character_set=CharacterSet::Ascii)HighFive::VariableLengthStringTypeinline
~Object()HighFive::Objectinline
+
+ + + + diff --git a/class_high_five_1_1_variable_length_string_type.html b/class_high_five_1_1_variable_length_string_type.html new file mode 100644 index 000000000..89fb4b47f --- /dev/null +++ b/class_high_five_1_1_variable_length_string_type.html @@ -0,0 +1,262 @@ + + + + + + + +HighFive: HighFive::VariableLengthStringType Class Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
HighFive::VariableLengthStringType Class Reference
+
+
+ +

#include <H5DataType.hpp>

+
+Inheritance diagram for HighFive::VariableLengthStringType:
+
+
Inheritance graph
+ + + + + + + + + +
[legend]
+
+Collaboration diagram for HighFive::VariableLengthStringType:
+
+
Collaboration graph
+ + + + + + + + + +
[legend]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 VariableLengthStringType (CharacterSet character_set=CharacterSet::Ascii)
 Create a variable length string HDF5 datatype.
 
- Public Member Functions inherited from HighFive::StringType
CharacterSet getCharacterSet () const
 For stings return the character set.
 
StringPadding getPadding () const
 For fixed length stings return the padding.
 
- Public Member Functions inherited from HighFive::DataType
bool operator== (const DataType &other) const
 
bool operator!= (const DataType &other) const
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
StringType asStringType () const
 Returns this datatype as a StringType.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
DataTypeCreateProps getCreatePropertyList () const
 Get the list of properties for creation of this DataType.
 
- Public Member Functions inherited from HighFive::Object
 Object (Object &&other) noexcept
 
 ~Object ()
 
bool isValid () const noexcept
 isValid
 
hid_t getId () const noexcept
 getId
 
ObjectInfo getInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getType () const
 Gets the fundamental type of the object (dataset, group, etc)
 
bool operator== (const Object &other) const noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from HighFive::DataType
 Object (Object &&other) noexcept
 
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
 Object (hid_t)
 
Objectoperator= (const Object &other)
 
- Protected Attributes inherited from HighFive::Object
hid_t _hid
 
+

Constructor & Destructor Documentation

+ +

◆ VariableLengthStringType()

+ +
+
+ + + + + +
+ + + + + + + + +
HighFive::VariableLengthStringType::VariableLengthStringType (CharacterSet character_set = CharacterSet::Ascii)
+
+inline
+
+ +

Create a variable length string HDF5 datatype.

+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/class_high_five_1_1_variable_length_string_type.js b/class_high_five_1_1_variable_length_string_type.js new file mode 100644 index 000000000..ae0e71504 --- /dev/null +++ b/class_high_five_1_1_variable_length_string_type.js @@ -0,0 +1,4 @@ +var class_high_five_1_1_variable_length_string_type = +[ + [ "VariableLengthStringType", "class_high_five_1_1_variable_length_string_type.html#acc03c514d450d31741a103765de509de", null ] +]; \ No newline at end of file diff --git a/class_high_five_1_1_variable_length_string_type__coll__graph.map b/class_high_five_1_1_variable_length_string_type__coll__graph.map new file mode 100644 index 000000000..4a5589349 --- /dev/null +++ b/class_high_five_1_1_variable_length_string_type__coll__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_variable_length_string_type__coll__graph.md5 b/class_high_five_1_1_variable_length_string_type__coll__graph.md5 new file mode 100644 index 000000000..f539c7dff --- /dev/null +++ b/class_high_five_1_1_variable_length_string_type__coll__graph.md5 @@ -0,0 +1 @@ +9e04830acc3f84acd256a79595fd48f8 \ No newline at end of file diff --git a/class_high_five_1_1_variable_length_string_type__coll__graph.png b/class_high_five_1_1_variable_length_string_type__coll__graph.png new file mode 100644 index 000000000..bbc389e00 Binary files /dev/null and b/class_high_five_1_1_variable_length_string_type__coll__graph.png differ diff --git a/class_high_five_1_1_variable_length_string_type__inherit__graph.map b/class_high_five_1_1_variable_length_string_type__inherit__graph.map new file mode 100644 index 000000000..4a5589349 --- /dev/null +++ b/class_high_five_1_1_variable_length_string_type__inherit__graph.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/class_high_five_1_1_variable_length_string_type__inherit__graph.md5 b/class_high_five_1_1_variable_length_string_type__inherit__graph.md5 new file mode 100644 index 000000000..f539c7dff --- /dev/null +++ b/class_high_five_1_1_variable_length_string_type__inherit__graph.md5 @@ -0,0 +1 @@ +9e04830acc3f84acd256a79595fd48f8 \ No newline at end of file diff --git a/class_high_five_1_1_variable_length_string_type__inherit__graph.png b/class_high_five_1_1_variable_length_string_type__inherit__graph.png new file mode 100644 index 000000000..bbc389e00 Binary files /dev/null and b/class_high_five_1_1_variable_length_string_type__inherit__graph.png differ diff --git a/classes.html b/classes.html new file mode 100644 index 000000000..b085a7a28 --- /dev/null +++ b/classes.html @@ -0,0 +1,157 @@ + + + + + + + +HighFive: Class Index + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Class Index
+
+
+
A | C | D | E | F | G | H | L | M | N | O | P | R | S | U | V
+
+
+
A
+
AllocationTime (HighFive)
AnnotateTraits (HighFive)
AtomicType (HighFive)
AtomicType< char[StrLen]> (HighFive)
AtomicType< FixedLenStringArray< StrLen > > (HighFive)
AtomicType< std::complex< T > > (HighFive)
Attribute (HighFive)
AttributeException (HighFive)
AttributePhaseChange (HighFive)
+
+
C
+
Caching (HighFive)
Chunking (HighFive)
CompoundType (HighFive)
Compression (H5Easy)
CreateIntermediateGroup (HighFive)
CreationOrder (HighFive)
+
+
D
+
DataSet (HighFive)
DataSetException (HighFive)
DataSpace (HighFive)
DataSpaceException (HighFive)
DataType (HighFive)
DataTypeException (HighFive)
Deflate (HighFive)
DumpOptions (H5Easy)
+
+
E
+
ElementSet (HighFive)
EnumType (HighFive)
EstimatedLinkInfo (HighFive)
Exception (HighFive)
+
+
F
+
File (HighFive)
FileDriver (HighFive)
FileException (HighFive)
FileVersionBounds (HighFive)
FixedLengthStringType (HighFive)
FixedLenStringArray (HighFive)
+
+
G
+
Group (HighFive)
GroupException (HighFive)
+
+
H
+
HDF5ErrMapper (HighFive)
HyperSlab (HighFive)
+
+
L
+
LinkCreationOrder (HighFive)
Logger (HighFive)
+
+
M
+
CompoundType::member_def (HighFive)
EnumType::member_def (HighFive)
MetadataBlockSize (HighFive)
MPIOCollectiveMetadata (HighFive)
MPIOCollectiveMetadataRead (HighFive)
MPIOCollectiveMetadataWrite (HighFive)
MPIOFileAccess (HighFive)
MPIOFileDriver (HighFive)
MpioNoCollectiveCause (HighFive)
+
+
N
+
NodeTraits (HighFive)
+
+
O
+
Object (HighFive)
ObjectException (HighFive)
ObjectInfo (HighFive)
+
+
P
+
PathTraits (HighFive)
PropertyException (HighFive)
PropertyInterface
PropertyList (HighFive)
PropertyListBase (HighFive)
+
+
R
+
RawPropertyList (HighFive)
Reference (HighFive)
ReferenceException (HighFive)
RegularHyperSlab (HighFive)
+
+
S
+
Selection (HighFive)
Shuffle (HighFive)
SilenceHDF5 (HighFive)
SliceTraits (HighFive)
StringType (HighFive)
Szip (HighFive)
+
+
U
+
UseCollectiveIO (HighFive)
+
+
V
+
VariableLengthStringType (HighFive)
+
+
+
+ + + + diff --git a/closed.png b/closed.png new file mode 100644 index 000000000..98cc2c909 Binary files /dev/null and b/closed.png differ diff --git a/deprecated.html b/deprecated.html new file mode 100644 index 000000000..84aaed806 --- /dev/null +++ b/deprecated.html @@ -0,0 +1,119 @@ + + + + + + + +HighFive: Deprecated List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Deprecated List
+
+
+
+
Member HighFive::DataSet::DataSet ()=default
+
Default constructor creates unsafe uninitialized objects
+
Class HighFive::FileDriver
+
Use FileAccessProps directly
+
Member HighFive::Group::Group ()=default
+
Default constructor creates unsafe uninitialized objects
+
Class HighFive::MPIOFileDriver
+
Add MPIOFileAccess directly to FileAccessProps
+
Member HighFive::ObjectInfo::getAddress () const noexcept
+
Deprecated since HighFive 2.2. Soon supporting VOL tokens
+
+
+
+
+ + + + diff --git a/developer__guide_8md.html b/developer__guide_8md.html new file mode 100644 index 000000000..27673e05a --- /dev/null +++ b/developer__guide_8md.html @@ -0,0 +1,107 @@ + + + + + + + +HighFive: /home/runner/work/HighFive/HighFive/doc/developer_guide.md File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
/home/runner/work/HighFive/HighFive/doc/developer_guide.md File Reference
+
+
+
+
+ + + + diff --git a/dir_000003_000000.html b/dir_000003_000000.html new file mode 100644 index 000000000..9424418d6 --- /dev/null +++ b/dir_000003_000000.html @@ -0,0 +1,104 @@ + + + + + + + +HighFive: highfive -> bits Relation + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+

highfive → bits Relation

File in highfiveIncludes file in highfive/bits
H5Attribute.hppH5Friends.hpp
H5Attribute.hppH5Path_traits.hpp
H5DataSet.hppH5_definitions.hpp
H5DataSet.hppH5Annotate_traits.hpp
H5DataSet.hppH5Path_traits.hpp
H5DataSet.hppH5Slice_traits.hpp
H5DataSpace.hppH5_definitions.hpp
H5DataSpace.hppH5Dataspace_misc.hpp
H5DataType.hppH5DataType_misc.hpp
H5DataType.hppH5Utils.hpp
H5DataType.hppstring_padding.hpp
H5Exception.hppH5Exception_misc.hpp
H5File.hppH5Annotate_traits.hpp
H5File.hppH5Annotate_traits_misc.hpp
H5File.hppH5File_misc.hpp
H5File.hppH5Node_traits.hpp
H5File.hppH5Node_traits_misc.hpp
H5File.hppH5Path_traits_misc.hpp
H5FileDriver.hppH5_definitions.hpp
H5FileDriver.hppH5FileDriver_misc.hpp
H5Group.hppH5_definitions.hpp
H5Group.hppH5Annotate_traits.hpp
H5Group.hppH5Friends.hpp
H5Group.hppH5Node_traits.hpp
H5Group.hppH5Path_traits.hpp
H5Object.hppH5_definitions.hpp
H5Object.hppH5Friends.hpp
H5Object.hppH5Object_misc.hpp
H5PropertyList.hppH5PropertyList_misc.hpp
H5Reference.hppH5_definitions.hpp
H5Reference.hppH5Reference_misc.hpp
H5Selection.hppH5Friends.hpp
H5Selection.hppH5Slice_traits.hpp
H5Utility.hppH5Friends.hpp
+
+ + + + diff --git a/dir_000003_000002.html b/dir_000003_000002.html new file mode 100644 index 000000000..70b64d05f --- /dev/null +++ b/dir_000003_000002.html @@ -0,0 +1,104 @@ + + + + + + + +HighFive: highfive -> h5easy_bits Relation + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+

highfive → h5easy_bits Relation

File in highfiveIncludes file in highfive/h5easy_bits
H5Easy.hppH5Easy_Eigen.hpp
H5Easy.hppH5Easy_misc.hpp
H5Easy.hppH5Easy_opencv.hpp
H5Easy.hppH5Easy_public.hpp
H5Easy.hppH5Easy_scalar.hpp
H5Easy.hppH5Easy_vector.hpp
H5Easy.hppH5Easy_xtensor.hpp
+
+ + + + diff --git a/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0.html b/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0.html new file mode 100644 index 000000000..d475c0b2a --- /dev/null +++ b/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0.html @@ -0,0 +1,174 @@ + + + + + + + +HighFive: highfive/bits Directory Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
bits Directory Reference
+
+
+
+Directory dependency graph for bits:
+
+
highfive/bits
+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

 H5_definitions.hpp
 
 H5Annotate_traits.hpp
 
 H5Annotate_traits_misc.hpp
 
 H5Attribute_misc.hpp
 
 H5Converter_misc.hpp
 
 H5DataSet_misc.hpp
 
 H5Dataspace_misc.hpp
 
 H5DataType_misc.hpp
 
 H5Exception_misc.hpp
 
 H5File_misc.hpp
 
 H5FileDriver_misc.hpp
 
 H5Friends.hpp
 
 H5Inspector_misc.hpp
 
 H5Iterables_misc.hpp
 
 H5Node_traits.hpp
 
 H5Node_traits_misc.hpp
 
 H5Object_misc.hpp
 
 H5Path_traits.hpp
 
 H5Path_traits_misc.hpp
 
 H5PropertyList_misc.hpp
 
 H5ReadWrite_misc.hpp
 
 H5Reference_misc.hpp
 
 H5Selection_misc.hpp
 
 H5Slice_traits.hpp
 
 H5Slice_traits_misc.hpp
 
 H5Utils.hpp
 
 string_padding.hpp
 
+
+
+ + + + diff --git a/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0.js b/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0.js new file mode 100644 index 000000000..712e09933 --- /dev/null +++ b/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0.js @@ -0,0 +1,30 @@ +var dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0 = +[ + [ "H5_definitions.hpp", "_h5__definitions_8hpp.html", "_h5__definitions_8hpp" ], + [ "H5Annotate_traits.hpp", "_h5_annotate__traits_8hpp.html", "_h5_annotate__traits_8hpp" ], + [ "H5Annotate_traits_misc.hpp", "_h5_annotate__traits__misc_8hpp.html", null ], + [ "H5Attribute_misc.hpp", "_h5_attribute__misc_8hpp.html", null ], + [ "H5Converter_misc.hpp", "_h5_converter__misc_8hpp.html", null ], + [ "H5DataSet_misc.hpp", "_h5_data_set__misc_8hpp.html", null ], + [ "H5Dataspace_misc.hpp", "_h5_dataspace__misc_8hpp.html", null ], + [ "H5DataType_misc.hpp", "_h5_data_type__misc_8hpp.html", "_h5_data_type__misc_8hpp" ], + [ "H5Exception_misc.hpp", "_h5_exception__misc_8hpp.html", "_h5_exception__misc_8hpp" ], + [ "H5File_misc.hpp", "_h5_file__misc_8hpp.html", null ], + [ "H5FileDriver_misc.hpp", "_h5_file_driver__misc_8hpp.html", null ], + [ "H5Friends.hpp", "_h5_friends_8hpp.html", null ], + [ "H5Inspector_misc.hpp", "_h5_inspector__misc_8hpp.html", "_h5_inspector__misc_8hpp" ], + [ "H5Iterables_misc.hpp", "_h5_iterables__misc_8hpp.html", null ], + [ "H5Node_traits.hpp", "_h5_node__traits_8hpp.html", "_h5_node__traits_8hpp" ], + [ "H5Node_traits_misc.hpp", "_h5_node__traits__misc_8hpp.html", null ], + [ "H5Object_misc.hpp", "_h5_object__misc_8hpp.html", null ], + [ "H5Path_traits.hpp", "_h5_path__traits_8hpp.html", "_h5_path__traits_8hpp" ], + [ "H5Path_traits_misc.hpp", "_h5_path__traits__misc_8hpp.html", null ], + [ "H5PropertyList_misc.hpp", "_h5_property_list__misc_8hpp.html", null ], + [ "H5ReadWrite_misc.hpp", "_h5_read_write__misc_8hpp.html", null ], + [ "H5Reference_misc.hpp", "_h5_reference__misc_8hpp.html", null ], + [ "H5Selection_misc.hpp", "_h5_selection__misc_8hpp.html", null ], + [ "H5Slice_traits.hpp", "_h5_slice__traits_8hpp.html", "_h5_slice__traits_8hpp" ], + [ "H5Slice_traits_misc.hpp", "_h5_slice__traits__misc_8hpp.html", null ], + [ "H5Utils.hpp", "_h5_utils_8hpp.html", null ], + [ "string_padding.hpp", "string__padding_8hpp.html", "string__padding_8hpp" ] +]; \ No newline at end of file diff --git a/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0_dep.map b/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0_dep.map new file mode 100644 index 000000000..3d76e4b15 --- /dev/null +++ b/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0_dep.map @@ -0,0 +1,4 @@ + + + + diff --git a/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0_dep.md5 b/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0_dep.md5 new file mode 100644 index 000000000..e52f3c092 --- /dev/null +++ b/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0_dep.md5 @@ -0,0 +1 @@ +60fbe5ccc688039b36f27f587f2ce3b2 \ No newline at end of file diff --git a/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0_dep.png b/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0_dep.png new file mode 100644 index 000000000..ed1427d99 Binary files /dev/null and b/dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0_dep.png differ diff --git a/dir_59f157d0a2e2d139c92ad8277d62d3e2.html b/dir_59f157d0a2e2d139c92ad8277d62d3e2.html new file mode 100644 index 000000000..02381049f --- /dev/null +++ b/dir_59f157d0a2e2d139c92ad8277d62d3e2.html @@ -0,0 +1,164 @@ + + + + + + + +HighFive: highfive Directory Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
highfive Directory Reference
+
+
+
+Directory dependency graph for highfive:
+
+
highfive
+ + + + + + + + + +
+ + + + + + +

+Directories

 bits
 
 h5easy_bits
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

 H5Attribute.hpp
 
 H5DataSet.hpp
 
 H5DataSpace.hpp
 
 H5DataType.hpp
 
 H5Easy.hpp
 
 H5Exception.hpp
 
 H5File.hpp
 
 H5FileDriver.hpp
 
 H5Group.hpp
 
 H5Object.hpp
 
 H5PropertyList.hpp
 
 H5Reference.hpp
 
 H5Selection.hpp
 
 H5Utility.hpp
 
 H5Version.hpp
 
 highfive.hpp
 
+
+
+ + + + diff --git a/dir_59f157d0a2e2d139c92ad8277d62d3e2.js b/dir_59f157d0a2e2d139c92ad8277d62d3e2.js new file mode 100644 index 000000000..4195605ab --- /dev/null +++ b/dir_59f157d0a2e2d139c92ad8277d62d3e2.js @@ -0,0 +1,21 @@ +var dir_59f157d0a2e2d139c92ad8277d62d3e2 = +[ + [ "bits", "dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0.html", "dir_1d6aeb27bb4ae09e14bf6b9e21ff19e0" ], + [ "h5easy_bits", "dir_eced565d6e1e1da7c55d194ee737dc53.html", "dir_eced565d6e1e1da7c55d194ee737dc53" ], + [ "H5Attribute.hpp", "_h5_attribute_8hpp.html", "_h5_attribute_8hpp" ], + [ "H5DataSet.hpp", "_h5_data_set_8hpp.html", "_h5_data_set_8hpp" ], + [ "H5DataSpace.hpp", "_h5_data_space_8hpp.html", "_h5_data_space_8hpp" ], + [ "H5DataType.hpp", "_h5_data_type_8hpp.html", "_h5_data_type_8hpp" ], + [ "H5Easy.hpp", "_h5_easy_8hpp.html", "_h5_easy_8hpp" ], + [ "H5Exception.hpp", "_h5_exception_8hpp.html", "_h5_exception_8hpp" ], + [ "H5File.hpp", "_h5_file_8hpp.html", "_h5_file_8hpp" ], + [ "H5FileDriver.hpp", "_h5_file_driver_8hpp.html", "_h5_file_driver_8hpp" ], + [ "H5Group.hpp", "_h5_group_8hpp.html", "_h5_group_8hpp" ], + [ "H5Object.hpp", "_h5_object_8hpp.html", "_h5_object_8hpp" ], + [ "H5PropertyList.hpp", "_h5_property_list_8hpp.html", "_h5_property_list_8hpp" ], + [ "H5Reference.hpp", "_h5_reference_8hpp.html", "_h5_reference_8hpp" ], + [ "H5Selection.hpp", "_h5_selection_8hpp.html", "_h5_selection_8hpp" ], + [ "H5Utility.hpp", "_h5_utility_8hpp.html", "_h5_utility_8hpp" ], + [ "H5Version.hpp", "_h5_version_8hpp.html", "_h5_version_8hpp" ], + [ "highfive.hpp", "highfive_8hpp.html", null ] +]; \ No newline at end of file diff --git a/dir_59f157d0a2e2d139c92ad8277d62d3e2_dep.map b/dir_59f157d0a2e2d139c92ad8277d62d3e2_dep.map new file mode 100644 index 000000000..632c82805 --- /dev/null +++ b/dir_59f157d0a2e2d139c92ad8277d62d3e2_dep.map @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/dir_59f157d0a2e2d139c92ad8277d62d3e2_dep.md5 b/dir_59f157d0a2e2d139c92ad8277d62d3e2_dep.md5 new file mode 100644 index 000000000..5fc7071db --- /dev/null +++ b/dir_59f157d0a2e2d139c92ad8277d62d3e2_dep.md5 @@ -0,0 +1 @@ +dcd0236b1767a44f0ec48b5d4e1b9813 \ No newline at end of file diff --git a/dir_59f157d0a2e2d139c92ad8277d62d3e2_dep.png b/dir_59f157d0a2e2d139c92ad8277d62d3e2_dep.png new file mode 100644 index 000000000..497999d65 Binary files /dev/null and b/dir_59f157d0a2e2d139c92ad8277d62d3e2_dep.png differ diff --git a/dir_e68e8157741866f444e17edd764ebbae.html b/dir_e68e8157741866f444e17edd764ebbae.html new file mode 100644 index 000000000..578e4748a --- /dev/null +++ b/dir_e68e8157741866f444e17edd764ebbae.html @@ -0,0 +1,107 @@ + + + + + + + +HighFive: /home/runner/work/HighFive/HighFive/doc Directory Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
doc Directory Reference
+
+
+
+
+ + + + diff --git a/dir_eced565d6e1e1da7c55d194ee737dc53.html b/dir_eced565d6e1e1da7c55d194ee737dc53.html new file mode 100644 index 000000000..56d2fcb1c --- /dev/null +++ b/dir_eced565d6e1e1da7c55d194ee737dc53.html @@ -0,0 +1,134 @@ + + + + + + + +HighFive: highfive/h5easy_bits Directory Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
h5easy_bits Directory Reference
+
+
+
+Directory dependency graph for h5easy_bits:
+
+
highfive/h5easy_bits
+ + + + +
+ + + + + + + + + + + + + + + + +

+Files

 H5Easy_Eigen.hpp
 
 H5Easy_misc.hpp
 
 H5Easy_opencv.hpp
 
 H5Easy_public.hpp
 
 H5Easy_scalar.hpp
 
 H5Easy_vector.hpp
 
 H5Easy_xtensor.hpp
 
+
+
+ + + + diff --git a/dir_eced565d6e1e1da7c55d194ee737dc53.js b/dir_eced565d6e1e1da7c55d194ee737dc53.js new file mode 100644 index 000000000..ceaabf6be --- /dev/null +++ b/dir_eced565d6e1e1da7c55d194ee737dc53.js @@ -0,0 +1,10 @@ +var dir_eced565d6e1e1da7c55d194ee737dc53 = +[ + [ "H5Easy_Eigen.hpp", "_h5_easy___eigen_8hpp.html", null ], + [ "H5Easy_misc.hpp", "_h5_easy__misc_8hpp.html", null ], + [ "H5Easy_opencv.hpp", "_h5_easy__opencv_8hpp.html", null ], + [ "H5Easy_public.hpp", "_h5_easy__public_8hpp.html", "_h5_easy__public_8hpp" ], + [ "H5Easy_scalar.hpp", "_h5_easy__scalar_8hpp.html", null ], + [ "H5Easy_vector.hpp", "_h5_easy__vector_8hpp.html", null ], + [ "H5Easy_xtensor.hpp", "_h5_easy__xtensor_8hpp.html", null ] +]; \ No newline at end of file diff --git a/dir_eced565d6e1e1da7c55d194ee737dc53_dep.map b/dir_eced565d6e1e1da7c55d194ee737dc53_dep.map new file mode 100644 index 000000000..60dabb9d2 --- /dev/null +++ b/dir_eced565d6e1e1da7c55d194ee737dc53_dep.map @@ -0,0 +1,4 @@ + + + + diff --git a/dir_eced565d6e1e1da7c55d194ee737dc53_dep.md5 b/dir_eced565d6e1e1da7c55d194ee737dc53_dep.md5 new file mode 100644 index 000000000..99d6b77ee --- /dev/null +++ b/dir_eced565d6e1e1da7c55d194ee737dc53_dep.md5 @@ -0,0 +1 @@ +83e4f2aac7ab7d7095b1a8652b5b84b4 \ No newline at end of file diff --git a/dir_eced565d6e1e1da7c55d194ee737dc53_dep.png b/dir_eced565d6e1e1da7c55d194ee737dc53_dep.png new file mode 100644 index 000000000..78d257ba7 Binary files /dev/null and b/dir_eced565d6e1e1da7c55d194ee737dc53_dep.png differ diff --git a/doc.svg b/doc.svg new file mode 100644 index 000000000..0b928a531 --- /dev/null +++ b/doc.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + diff --git a/docd.svg b/docd.svg new file mode 100644 index 000000000..ac18b2755 --- /dev/null +++ b/docd.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + diff --git a/doxygen-awesome.css b/doxygen-awesome.css new file mode 100644 index 000000000..08238977a --- /dev/null +++ b/doxygen-awesome.css @@ -0,0 +1,2530 @@ +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2021 - 2023 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +*/ + +html { + /* primary theme color. This will affect the entire websites color scheme: links, arrows, labels, ... */ + --primary-color: #1779c4; + --primary-dark-color: #335c80; + --primary-light-color: #70b1e9; + + /* page base colors */ + --page-background-color: #ffffff; + --page-foreground-color: #2f4153; + --page-secondary-foreground-color: #6f7e8e; + + /* color for all separators on the website: hr, borders, ... */ + --separator-color: #dedede; + + /* border radius for all rounded components. Will affect many components, like dropdowns, memitems, codeblocks, ... */ + --border-radius-large: 8px; + --border-radius-small: 4px; + --border-radius-medium: 6px; + + /* default spacings. Most components reference these values for spacing, to provide uniform spacing on the page. */ + --spacing-small: 5px; + --spacing-medium: 10px; + --spacing-large: 16px; + + /* default box shadow used for raising an element above the normal content. Used in dropdowns, search result, ... */ + --box-shadow: 0 2px 8px 0 rgba(0,0,0,.075); + + --odd-color: rgba(0,0,0,.028); + + /* font-families. will affect all text on the website + * font-family: the normal font for text, headlines, menus + * font-family-monospace: used for preformatted text in memtitle, code, fragments + */ + --font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif; + --font-family-monospace: ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace; + + /* font sizes */ + --page-font-size: 15.6px; + --navigation-font-size: 14.4px; + --toc-font-size: 13.4px; + --code-font-size: 14px; /* affects code, fragment */ + --title-font-size: 22px; + + /* content text properties. These only affect the page content, not the navigation or any other ui elements */ + --content-line-height: 27px; + /* The content is centered and constraint in it's width. To make the content fill the whole page, set the variable to auto.*/ + --content-maxwidth: 1050px; + --table-line-height: 24px; + --toc-sticky-top: var(--spacing-medium); + --toc-width: 200px; + --toc-max-height: calc(100vh - 2 * var(--spacing-medium) - 85px); + + /* colors for various content boxes: @warning, @note, @deprecated @bug */ + --warning-color: #f8d1cc; + --warning-color-dark: #b61825; + --warning-color-darker: #75070f; + --note-color: #faf3d8; + --note-color-dark: #f3a600; + --note-color-darker: #5f4204; + --todo-color: #e4f3ff; + --todo-color-dark: #1879C4; + --todo-color-darker: #274a5c; + --deprecated-color: #ecf0f3; + --deprecated-color-dark: #5b6269; + --deprecated-color-darker: #43454a; + --bug-color: #e4dafd; + --bug-color-dark: #5b2bdd; + --bug-color-darker: #2a0d72; + --invariant-color: #d8f1e3; + --invariant-color-dark: #44b86f; + --invariant-color-darker: #265532; + + /* blockquote colors */ + --blockquote-background: #f8f9fa; + --blockquote-foreground: #636568; + + /* table colors */ + --tablehead-background: #f1f1f1; + --tablehead-foreground: var(--page-foreground-color); + + /* menu-display: block | none + * Visibility of the top navigation on screens >= 768px. On smaller screen the menu is always visible. + * `GENERATE_TREEVIEW` MUST be enabled! + */ + --menu-display: block; + + --menu-focus-foreground: var(--page-background-color); + --menu-focus-background: var(--primary-color); + --menu-selected-background: rgba(0,0,0,.05); + + + --header-background: var(--page-background-color); + --header-foreground: var(--page-foreground-color); + + /* searchbar colors */ + --searchbar-background: var(--side-nav-background); + --searchbar-foreground: var(--page-foreground-color); + + /* searchbar size + * (`searchbar-width` is only applied on screens >= 768px. + * on smaller screens the searchbar will always fill the entire screen width) */ + --searchbar-height: 33px; + --searchbar-width: 210px; + --searchbar-border-radius: var(--searchbar-height); + + /* code block colors */ + --code-background: #f5f5f5; + --code-foreground: var(--page-foreground-color); + + /* fragment colors */ + --fragment-background: #F8F9FA; + --fragment-foreground: #37474F; + --fragment-keyword: #bb6bb2; + --fragment-keywordtype: #8258b3; + --fragment-keywordflow: #d67c3b; + --fragment-token: #438a59; + --fragment-comment: #969696; + --fragment-link: #5383d6; + --fragment-preprocessor: #46aaa5; + --fragment-linenumber-color: #797979; + --fragment-linenumber-background: #f4f4f5; + --fragment-linenumber-border: #e3e5e7; + --fragment-lineheight: 20px; + + /* sidebar navigation (treeview) colors */ + --side-nav-background: #fbfbfb; + --side-nav-foreground: var(--page-foreground-color); + --side-nav-arrow-opacity: 0; + --side-nav-arrow-hover-opacity: 0.9; + + --toc-background: var(--side-nav-background); + --toc-foreground: var(--side-nav-foreground); + + /* height of an item in any tree / collapsible table */ + --tree-item-height: 30px; + + --memname-font-size: var(--code-font-size); + --memtitle-font-size: 18px; + + --webkit-scrollbar-size: 7px; + --webkit-scrollbar-padding: 4px; + --webkit-scrollbar-color: var(--separator-color); +} + +@media screen and (max-width: 767px) { + html { + --page-font-size: 16px; + --navigation-font-size: 16px; + --toc-font-size: 15px; + --code-font-size: 15px; /* affects code, fragment */ + --title-font-size: 22px; + } +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) { + color-scheme: dark; + + --primary-color: #1982d2; + --primary-dark-color: #86a9c4; + --primary-light-color: #4779ac; + + --box-shadow: 0 2px 8px 0 rgba(0,0,0,.35); + + --odd-color: rgba(100,100,100,.06); + + --menu-selected-background: rgba(0,0,0,.4); + + --page-background-color: #1C1D1F; + --page-foreground-color: #d2dbde; + --page-secondary-foreground-color: #859399; + --separator-color: #38393b; + --side-nav-background: #252628; + + --code-background: #2a2c2f; + + --tablehead-background: #2a2c2f; + + --blockquote-background: #222325; + --blockquote-foreground: #7e8c92; + + --warning-color: #2e1917; + --warning-color-dark: #ad2617; + --warning-color-darker: #f5b1aa; + --note-color: #3b2e04; + --note-color-dark: #f1b602; + --note-color-darker: #ceb670; + --todo-color: #163750; + --todo-color-dark: #1982D2; + --todo-color-darker: #dcf0fa; + --deprecated-color: #2e323b; + --deprecated-color-dark: #738396; + --deprecated-color-darker: #abb0bd; + --bug-color: #2a2536; + --bug-color-dark: #7661b3; + --bug-color-darker: #ae9ed6; + --invariant-color: #303a35; + --invariant-color-dark: #76ce96; + --invariant-color-darker: #cceed5; + + --fragment-background: #282c34; + --fragment-foreground: #dbe4eb; + --fragment-keyword: #cc99cd; + --fragment-keywordtype: #ab99cd; + --fragment-keywordflow: #e08000; + --fragment-token: #7ec699; + --fragment-comment: #999999; + --fragment-link: #98c0e3; + --fragment-preprocessor: #65cabe; + --fragment-linenumber-color: #cccccc; + --fragment-linenumber-background: #35393c; + --fragment-linenumber-border: #1f1f1f; + } +} + +/* dark mode variables are defined twice, to support both the dark-mode without and with doxygen-awesome-darkmode-toggle.js */ +html.dark-mode { + color-scheme: dark; + + --primary-color: #1982d2; + --primary-dark-color: #86a9c4; + --primary-light-color: #4779ac; + + --box-shadow: 0 2px 8px 0 rgba(0,0,0,.30); + + --odd-color: rgba(100,100,100,.06); + + --menu-selected-background: rgba(0,0,0,.4); + + --page-background-color: #1C1D1F; + --page-foreground-color: #d2dbde; + --page-secondary-foreground-color: #859399; + --separator-color: #38393b; + --side-nav-background: #252628; + + --code-background: #2a2c2f; + + --tablehead-background: #2a2c2f; + + --blockquote-background: #222325; + --blockquote-foreground: #7e8c92; + + --warning-color: #2e1917; + --warning-color-dark: #ad2617; + --warning-color-darker: #f5b1aa; + --note-color: #3b2e04; + --note-color-dark: #f1b602; + --note-color-darker: #ceb670; + --todo-color: #163750; + --todo-color-dark: #1982D2; + --todo-color-darker: #dcf0fa; + --deprecated-color: #2e323b; + --deprecated-color-dark: #738396; + --deprecated-color-darker: #abb0bd; + --bug-color: #2a2536; + --bug-color-dark: #7661b3; + --bug-color-darker: #ae9ed6; + --invariant-color: #303a35; + --invariant-color-dark: #76ce96; + --invariant-color-darker: #cceed5; + + --fragment-background: #282c34; + --fragment-foreground: #dbe4eb; + --fragment-keyword: #cc99cd; + --fragment-keywordtype: #ab99cd; + --fragment-keywordflow: #e08000; + --fragment-token: #7ec699; + --fragment-comment: #999999; + --fragment-link: #98c0e3; + --fragment-preprocessor: #65cabe; + --fragment-linenumber-color: #cccccc; + --fragment-linenumber-background: #35393c; + --fragment-linenumber-border: #1f1f1f; +} + +body { + color: var(--page-foreground-color); + background-color: var(--page-background-color); + font-size: var(--page-font-size); +} + +body, table, div, p, dl, #nav-tree .label, .title, +.sm-dox a, .sm-dox a:hover, .sm-dox a:focus, #projectname, +.SelectItem, #MSearchField, .navpath li.navelem a, +.navpath li.navelem a:hover, p.reference, p.definition { + font-family: var(--font-family); +} + +h1, h2, h3, h4, h5 { + margin-top: .9em; + font-weight: 600; + line-height: initial; +} + +p, div, table, dl, p.reference, p.definition { + font-size: var(--page-font-size); +} + +p.reference, p.definition { + color: var(--page-secondary-foreground-color); +} + +a:link, a:visited, a:hover, a:focus, a:active { + color: var(--primary-color) !important; + font-weight: 500; +} + +a.anchor { + scroll-margin-top: var(--spacing-large); + display: block; +} + +/* + Title and top navigation + */ + +#top { + background: var(--header-background); + border-bottom: 1px solid var(--separator-color); +} + +@media screen and (min-width: 768px) { + #top { + display: flex; + flex-wrap: wrap; + justify-content: space-between; + align-items: center; + } +} + +#main-nav { + flex-grow: 5; + padding: var(--spacing-small) var(--spacing-medium); +} + +#titlearea { + width: auto; + padding: var(--spacing-medium) var(--spacing-large); + background: none; + color: var(--header-foreground); + border-bottom: none; +} + +@media screen and (max-width: 767px) { + #titlearea { + padding-bottom: var(--spacing-small); + } +} + +#titlearea table tbody tr { + height: auto !important; +} + +#projectname { + font-size: var(--title-font-size); + font-weight: 600; +} + +#projectnumber { + font-family: inherit; + font-size: 60%; +} + +#projectbrief { + font-family: inherit; + font-size: 80%; +} + +#projectlogo { + vertical-align: middle; +} + +#projectlogo img { + max-height: calc(var(--title-font-size) * 2); + margin-right: var(--spacing-small); +} + +.sm-dox, .tabs, .tabs2, .tabs3 { + background: none; + padding: 0; +} + +.tabs, .tabs2, .tabs3 { + border-bottom: 1px solid var(--separator-color); + margin-bottom: -1px; +} + +.main-menu-btn-icon, .main-menu-btn-icon:before, .main-menu-btn-icon:after { + background: var(--page-secondary-foreground-color); +} + +@media screen and (max-width: 767px) { + .sm-dox a span.sub-arrow { + background: var(--code-background); + } + + #main-menu a.has-submenu span.sub-arrow { + color: var(--page-secondary-foreground-color); + border-radius: var(--border-radius-medium); + } + + #main-menu a.has-submenu:hover span.sub-arrow { + color: var(--page-foreground-color); + } +} + +@media screen and (min-width: 768px) { + .sm-dox li, .tablist li { + display: var(--menu-display); + } + + .sm-dox a span.sub-arrow { + border-color: var(--header-foreground) transparent transparent transparent; + } + + .sm-dox a:hover span.sub-arrow { + border-color: var(--menu-focus-foreground) transparent transparent transparent; + } + + .sm-dox ul a span.sub-arrow { + border-color: transparent transparent transparent var(--page-foreground-color); + } + + .sm-dox ul a:hover span.sub-arrow { + border-color: transparent transparent transparent var(--menu-focus-foreground); + } +} + +.sm-dox ul { + background: var(--page-background-color); + box-shadow: var(--box-shadow); + border: 1px solid var(--separator-color); + border-radius: var(--border-radius-medium) !important; + padding: var(--spacing-small); + animation: ease-out 150ms slideInMenu; +} + +@keyframes slideInMenu { + from { + opacity: 0; + transform: translate(0px, -2px); + } + + to { + opacity: 1; + transform: translate(0px, 0px); + } +} + +.sm-dox ul a { + color: var(--page-foreground-color) !important; + background: var(--page-background-color); + font-size: var(--navigation-font-size); +} + +.sm-dox>li>ul:after { + border-bottom-color: var(--page-background-color) !important; +} + +.sm-dox>li>ul:before { + border-bottom-color: var(--separator-color) !important; +} + +.sm-dox ul a:hover, .sm-dox ul a:active, .sm-dox ul a:focus { + font-size: var(--navigation-font-size) !important; + color: var(--menu-focus-foreground) !important; + text-shadow: none; + background-color: var(--menu-focus-background); + border-radius: var(--border-radius-small) !important; +} + +.sm-dox a, .sm-dox a:focus, .tablist li, .tablist li a, .tablist li.current a { + text-shadow: none; + background: transparent; + background-image: none !important; + color: var(--header-foreground) !important; + font-weight: normal; + font-size: var(--navigation-font-size); + border-radius: var(--border-radius-small) !important; +} + +.sm-dox a:focus { + outline: auto; +} + +.sm-dox a:hover, .sm-dox a:active, .tablist li a:hover { + text-shadow: none; + font-weight: normal; + background: var(--menu-focus-background); + color: var(--menu-focus-foreground) !important; + border-radius: var(--border-radius-small) !important; + font-size: var(--navigation-font-size); +} + +.tablist li.current { + border-radius: var(--border-radius-small); + background: var(--menu-selected-background); +} + +.tablist li { + margin: var(--spacing-small) 0 var(--spacing-small) var(--spacing-small); +} + +.tablist a { + padding: 0 var(--spacing-large); +} + + +/* + Search box + */ + +#MSearchBox { + height: var(--searchbar-height); + background: var(--searchbar-background); + border-radius: var(--searchbar-border-radius); + border: 1px solid var(--separator-color); + overflow: hidden; + width: var(--searchbar-width); + position: relative; + box-shadow: none; + display: block; + margin-top: 0; +} + +/* until Doxygen 1.9.4 */ +.left img#MSearchSelect { + left: 0; + user-select: none; + padding-left: 8px; +} + +/* Doxygen 1.9.5 */ +.left span#MSearchSelect { + left: 0; + user-select: none; + margin-left: 8px; + padding: 0; +} + +.left #MSearchSelect[src$=".png"] { + padding-left: 0 +} + +.SelectionMark { + user-select: none; +} + +.tabs .left #MSearchSelect { + padding-left: 0; +} + +.tabs #MSearchBox { + position: absolute; + right: var(--spacing-medium); +} + +@media screen and (max-width: 767px) { + .tabs #MSearchBox { + position: relative; + right: 0; + margin-left: var(--spacing-medium); + margin-top: 0; + } +} + +#MSearchSelectWindow, #MSearchResultsWindow { + z-index: 9999; +} + +#MSearchBox.MSearchBoxActive { + border-color: var(--primary-color); + box-shadow: inset 0 0 0 1px var(--primary-color); +} + +#main-menu > li:last-child { + margin-right: 0; +} + +@media screen and (max-width: 767px) { + #main-menu > li:last-child { + height: 50px; + } +} + +#MSearchField { + font-size: var(--navigation-font-size); + height: calc(var(--searchbar-height) - 2px); + background: transparent; + width: calc(var(--searchbar-width) - 64px); +} + +.MSearchBoxActive #MSearchField { + color: var(--searchbar-foreground); +} + +#MSearchSelect { + top: calc(calc(var(--searchbar-height) / 2) - 11px); +} + +#MSearchBox span.left, #MSearchBox span.right { + background: none; + background-image: none; +} + +#MSearchBox span.right { + padding-top: calc(calc(var(--searchbar-height) / 2) - 12px); + position: absolute; + right: var(--spacing-small); +} + +.tabs #MSearchBox span.right { + top: calc(calc(var(--searchbar-height) / 2) - 12px); +} + +@keyframes slideInSearchResults { + from { + opacity: 0; + transform: translate(0, 15px); + } + + to { + opacity: 1; + transform: translate(0, 20px); + } +} + +#MSearchResultsWindow { + left: auto !important; + right: var(--spacing-medium); + border-radius: var(--border-radius-large); + border: 1px solid var(--separator-color); + transform: translate(0, 20px); + box-shadow: var(--box-shadow); + animation: ease-out 280ms slideInSearchResults; + background: var(--page-background-color); +} + +iframe#MSearchResults { + margin: 4px; +} + +iframe { + color-scheme: normal; +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) iframe#MSearchResults { + filter: invert() hue-rotate(180deg); + } +} + +html.dark-mode iframe#MSearchResults { + filter: invert() hue-rotate(180deg); +} + +#MSearchResults .SRPage { + background-color: transparent; +} + +#MSearchResults .SRPage .SREntry { + font-size: 10pt; + padding: var(--spacing-small) var(--spacing-medium); +} + +#MSearchSelectWindow { + border: 1px solid var(--separator-color); + border-radius: var(--border-radius-medium); + box-shadow: var(--box-shadow); + background: var(--page-background-color); + padding-top: var(--spacing-small); + padding-bottom: var(--spacing-small); +} + +#MSearchSelectWindow a.SelectItem { + font-size: var(--navigation-font-size); + line-height: var(--content-line-height); + margin: 0 var(--spacing-small); + border-radius: var(--border-radius-small); + color: var(--page-foreground-color) !important; + font-weight: normal; +} + +#MSearchSelectWindow a.SelectItem:hover { + background: var(--menu-focus-background); + color: var(--menu-focus-foreground) !important; +} + +@media screen and (max-width: 767px) { + #MSearchBox { + margin-top: var(--spacing-medium); + margin-bottom: var(--spacing-medium); + width: calc(100vw - 30px); + } + + #main-menu > li:last-child { + float: none !important; + } + + #MSearchField { + width: calc(100vw - 110px); + } + + @keyframes slideInSearchResultsMobile { + from { + opacity: 0; + transform: translate(0, 15px); + } + + to { + opacity: 1; + transform: translate(0, 20px); + } + } + + #MSearchResultsWindow { + left: var(--spacing-medium) !important; + right: var(--spacing-medium); + overflow: auto; + transform: translate(0, 20px); + animation: ease-out 280ms slideInSearchResultsMobile; + width: auto !important; + } + + /* + * Overwrites for fixing the searchbox on mobile in doxygen 1.9.2 + */ + label.main-menu-btn ~ #searchBoxPos1 { + top: 3px !important; + right: 6px !important; + left: 45px; + display: flex; + } + + label.main-menu-btn ~ #searchBoxPos1 > #MSearchBox { + margin-top: 0; + margin-bottom: 0; + flex-grow: 2; + float: left; + } +} + +/* + Tree view + */ + +#side-nav { + padding: 0 !important; + background: var(--side-nav-background); + min-width: 8px; + max-width: 50vw; +} + +@media screen and (max-width: 767px) { + #side-nav { + display: none; + } + + #doc-content { + margin-left: 0 !important; + } +} + +#nav-tree { + background: transparent; + margin-right: 1px; +} + +#nav-tree .label { + font-size: var(--navigation-font-size); +} + +#nav-tree .item { + height: var(--tree-item-height); + line-height: var(--tree-item-height); +} + +#nav-sync { + bottom: 12px; + right: 12px; + top: auto !important; + user-select: none; +} + +#nav-tree .selected { + text-shadow: none; + background-image: none; + background-color: transparent; + position: relative; +} + +#nav-tree .selected::after { + content: ""; + position: absolute; + top: 1px; + bottom: 1px; + left: 0; + width: 4px; + border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0; + background: var(--primary-color); +} + + +#nav-tree a { + color: var(--side-nav-foreground) !important; + font-weight: normal; +} + +#nav-tree a:focus { + outline-style: auto; +} + +#nav-tree .arrow { + opacity: var(--side-nav-arrow-opacity); +} + +.arrow { + color: inherit; + cursor: pointer; + font-size: 45%; + vertical-align: middle; + margin-right: 2px; + font-family: serif; + height: auto; + text-align: right; +} + +#nav-tree div.item:hover .arrow, #nav-tree a:focus .arrow { + opacity: var(--side-nav-arrow-hover-opacity); +} + +#nav-tree .selected a { + color: var(--primary-color) !important; + font-weight: bolder; + font-weight: 600; +} + +.ui-resizable-e { + width: 4px; + background: transparent; + box-shadow: inset -1px 0 0 0 var(--separator-color); +} + +/* + Contents + */ + +div.header { + border-bottom: 1px solid var(--separator-color); + background-color: var(--page-background-color); + background-image: none; +} + +@media screen and (min-width: 1000px) { + #doc-content > div > div.contents, + .PageDoc > div.contents { + display: flex; + flex-direction: row-reverse; + flex-wrap: nowrap; + align-items: flex-start; + } + + div.contents .textblock { + min-width: 200px; + flex-grow: 1; + } +} + +div.contents, div.header .title, div.header .summary { + max-width: var(--content-maxwidth); +} + +div.contents, div.header .title { + line-height: initial; + margin: calc(var(--spacing-medium) + .2em) auto var(--spacing-medium) auto; +} + +div.header .summary { + margin: var(--spacing-medium) auto 0 auto; +} + +div.headertitle { + padding: 0; +} + +div.header .title { + font-weight: 600; + font-size: 225%; + padding: var(--spacing-medium) var(--spacing-large); + word-break: break-word; +} + +div.header .summary { + width: auto; + display: block; + float: none; + padding: 0 var(--spacing-large); +} + +td.memSeparator { + border-color: var(--separator-color); +} + +span.mlabel { + background: var(--primary-color); + border: none; + padding: 4px 9px; + border-radius: 12px; + margin-right: var(--spacing-medium); +} + +span.mlabel:last-of-type { + margin-right: 2px; +} + +div.contents { + padding: 0 var(--spacing-large); +} + +div.contents p, div.contents li { + line-height: var(--content-line-height); +} + +div.contents div.dyncontent { + margin: var(--spacing-medium) 0; +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) div.contents div.dyncontent img, + html:not(.light-mode) div.contents center img, + html:not(.light-mode) div.contents > table img, + html:not(.light-mode) div.contents div.dyncontent iframe, + html:not(.light-mode) div.contents center iframe, + html:not(.light-mode) div.contents table iframe, + html:not(.light-mode) div.contents .dotgraph iframe { + filter: brightness(89%) hue-rotate(180deg) invert(); + } +} + +html.dark-mode div.contents div.dyncontent img, +html.dark-mode div.contents center img, +html.dark-mode div.contents > table img, +html.dark-mode div.contents div.dyncontent iframe, +html.dark-mode div.contents center iframe, +html.dark-mode div.contents table iframe, +html.dark-mode div.contents .dotgraph iframe + { + filter: brightness(89%) hue-rotate(180deg) invert(); +} + +h2.groupheader { + border-bottom: 0px; + color: var(--page-foreground-color); + box-shadow: + 100px 0 var(--page-background-color), + -100px 0 var(--page-background-color), + 100px 0.75px var(--separator-color), + -100px 0.75px var(--separator-color), + 500px 0 var(--page-background-color), + -500px 0 var(--page-background-color), + 500px 0.75px var(--separator-color), + -500px 0.75px var(--separator-color), + 900px 0 var(--page-background-color), + -900px 0 var(--page-background-color), + 900px 0.75px var(--separator-color), + -900px 0.75px var(--separator-color), + 1400px 0 var(--page-background-color), + -1400px 0 var(--page-background-color), + 1400px 0.75px var(--separator-color), + -1400px 0.75px var(--separator-color), + 1900px 0 var(--page-background-color), + -1900px 0 var(--page-background-color), + 1900px 0.75px var(--separator-color), + -1900px 0.75px var(--separator-color); +} + +blockquote { + margin: 0 var(--spacing-medium) 0 var(--spacing-medium); + padding: var(--spacing-small) var(--spacing-large); + background: var(--blockquote-background); + color: var(--blockquote-foreground); + border-left: 0; + overflow: visible; + border-radius: var(--border-radius-medium); + overflow: visible; + position: relative; +} + +blockquote::before, blockquote::after { + font-weight: bold; + font-family: serif; + font-size: 360%; + opacity: .15; + position: absolute; +} + +blockquote::before { + content: "“"; + left: -10px; + top: 4px; +} + +blockquote::after { + content: "”"; + right: -8px; + bottom: -25px; +} + +blockquote p { + margin: var(--spacing-small) 0 var(--spacing-medium) 0; +} +.paramname { + font-weight: 600; + color: var(--primary-dark-color); +} + +.paramname > code { + border: 0; +} + +table.params .paramname { + font-weight: 600; + font-family: var(--font-family-monospace); + font-size: var(--code-font-size); + padding-right: var(--spacing-small); + line-height: var(--table-line-height); +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px var(--primary-light-color); +} + +.alphachar a { + color: var(--page-foreground-color); +} + +.dotgraph { + max-width: 100%; + overflow-x: scroll; +} + +.dotgraph .caption { + position: sticky; + left: 0; +} + +/* Wrap Graphviz graphs with the `interactive_dotgraph` class if `INTERACTIVE_SVG = YES` */ +.interactive_dotgraph .dotgraph iframe { + max-width: 100%; +} + +/* + Table of Contents + */ + +div.contents .toc { + max-height: var(--toc-max-height); + min-width: var(--toc-width); + border: 0; + border-left: 1px solid var(--separator-color); + border-radius: 0; + background-color: transparent; + box-shadow: none; + position: sticky; + top: var(--toc-sticky-top); + padding: 0 var(--spacing-large); + margin: var(--spacing-small) 0 var(--spacing-large) var(--spacing-large); +} + +div.toc h3 { + color: var(--toc-foreground); + font-size: var(--navigation-font-size); + margin: var(--spacing-large) 0 var(--spacing-medium) 0; +} + +div.toc li { + padding: 0; + background: none; + line-height: var(--toc-font-size); + margin: var(--toc-font-size) 0 0 0; +} + +div.toc li::before { + display: none; +} + +div.toc ul { + margin-top: 0 +} + +div.toc li a { + font-size: var(--toc-font-size); + color: var(--page-foreground-color) !important; + text-decoration: none; +} + +div.toc li a:hover, div.toc li a.active { + color: var(--primary-color) !important; +} + +div.toc li a.aboveActive { + color: var(--page-secondary-foreground-color) !important; +} + + +@media screen and (max-width: 999px) { + div.contents .toc { + max-height: 45vh; + float: none; + width: auto; + margin: 0 0 var(--spacing-medium) 0; + position: relative; + top: 0; + position: relative; + border: 1px solid var(--separator-color); + border-radius: var(--border-radius-medium); + background-color: var(--toc-background); + box-shadow: var(--box-shadow); + } + + div.contents .toc.interactive { + max-height: calc(var(--navigation-font-size) + 2 * var(--spacing-large)); + overflow: hidden; + } + + div.contents .toc > h3 { + -webkit-tap-highlight-color: transparent; + cursor: pointer; + position: sticky; + top: 0; + background-color: var(--toc-background); + margin: 0; + padding: var(--spacing-large) 0; + display: block; + } + + div.contents .toc.interactive > h3::before { + content: ""; + width: 0; + height: 0; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-top: 5px solid var(--primary-color); + display: inline-block; + margin-right: var(--spacing-small); + margin-bottom: calc(var(--navigation-font-size) / 4); + transform: rotate(-90deg); + transition: transform 0.25s ease-out; + } + + div.contents .toc.interactive.open > h3::before { + transform: rotate(0deg); + } + + div.contents .toc.interactive.open { + max-height: 45vh; + overflow: auto; + transition: max-height 0.2s ease-in-out; + } + + div.contents .toc a, div.contents .toc a.active { + color: var(--primary-color) !important; + } + + div.contents .toc a:hover { + text-decoration: underline; + } +} + +/* + Code & Fragments + */ + +code, div.fragment, pre.fragment { + border-radius: var(--border-radius-small); + border: 1px solid var(--separator-color); + overflow: hidden; +} + +code { + display: inline; + background: var(--code-background); + color: var(--code-foreground); + padding: 2px 6px; +} + +div.fragment, pre.fragment { + margin: var(--spacing-medium) 0; + padding: calc(var(--spacing-large) - (var(--spacing-large) / 6)) var(--spacing-large); + background: var(--fragment-background); + color: var(--fragment-foreground); + overflow-x: auto; +} + +@media screen and (max-width: 767px) { + div.fragment, pre.fragment { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-right: 0; + } + + .contents > div.fragment, + .textblock > div.fragment, + .textblock > pre.fragment, + .contents > .doxygen-awesome-fragment-wrapper > div.fragment, + .textblock > .doxygen-awesome-fragment-wrapper > div.fragment, + .textblock > .doxygen-awesome-fragment-wrapper > pre.fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-large)); + border-radius: 0; + border-left: 0; + } + + .textblock li > .fragment, + .textblock li > .doxygen-awesome-fragment-wrapper > .fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-large)); + } + + .memdoc li > .fragment, + .memdoc li > .doxygen-awesome-fragment-wrapper > .fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-medium)); + } + + .textblock ul, .memdoc ul { + overflow: initial; + } + + .memdoc > div.fragment, + .memdoc > pre.fragment, + dl dd > div.fragment, + dl dd pre.fragment, + .memdoc > .doxygen-awesome-fragment-wrapper > div.fragment, + .memdoc > .doxygen-awesome-fragment-wrapper > pre.fragment, + dl dd > .doxygen-awesome-fragment-wrapper > div.fragment, + dl dd .doxygen-awesome-fragment-wrapper > pre.fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-medium)); + border-radius: 0; + border-left: 0; + } +} + +code, code a, pre.fragment, div.fragment, div.fragment .line, div.fragment span, div.fragment .line a, div.fragment .line span { + font-family: var(--font-family-monospace); + font-size: var(--code-font-size) !important; +} + +div.line:after { + margin-right: var(--spacing-medium); +} + +div.fragment .line, pre.fragment { + white-space: pre; + word-wrap: initial; + line-height: var(--fragment-lineheight); +} + +div.fragment span.keyword { + color: var(--fragment-keyword); +} + +div.fragment span.keywordtype { + color: var(--fragment-keywordtype); +} + +div.fragment span.keywordflow { + color: var(--fragment-keywordflow); +} + +div.fragment span.stringliteral { + color: var(--fragment-token) +} + +div.fragment span.comment { + color: var(--fragment-comment); +} + +div.fragment a.code { + color: var(--fragment-link) !important; +} + +div.fragment span.preprocessor { + color: var(--fragment-preprocessor); +} + +div.fragment span.lineno { + display: inline-block; + width: 27px; + border-right: none; + background: var(--fragment-linenumber-background); + color: var(--fragment-linenumber-color); +} + +div.fragment span.lineno a { + background: none; + color: var(--fragment-link) !important; +} + +div.fragment .line:first-child .lineno { + box-shadow: -999999px 0px 0 999999px var(--fragment-linenumber-background), -999998px 0px 0 999999px var(--fragment-linenumber-border); +} + +div.line { + border-radius: var(--border-radius-small); +} + +div.line.glow { + background-color: var(--primary-light-color); + box-shadow: none; +} + +/* + dl warning, attention, note, deprecated, bug, ... + */ + +dl.bug dt a, dl.deprecated dt a, dl.todo dt a { + font-weight: bold !important; +} + +dl.warning, dl.attention, dl.note, dl.deprecated, dl.bug, dl.invariant, dl.pre, dl.post, dl.todo, dl.remark { + padding: var(--spacing-medium); + margin: var(--spacing-medium) 0; + color: var(--page-background-color); + overflow: hidden; + margin-left: 0; + border-radius: var(--border-radius-small); +} + +dl.section dd { + margin-bottom: 2px; +} + +dl.warning, dl.attention { + background: var(--warning-color); + border-left: 8px solid var(--warning-color-dark); + color: var(--warning-color-darker); +} + +dl.warning dt, dl.attention dt { + color: var(--warning-color-dark); +} + +dl.note, dl.remark { + background: var(--note-color); + border-left: 8px solid var(--note-color-dark); + color: var(--note-color-darker); +} + +dl.note dt, dl.remark dt { + color: var(--note-color-dark); +} + +dl.todo { + background: var(--todo-color); + border-left: 8px solid var(--todo-color-dark); + color: var(--todo-color-darker); +} + +dl.todo dt { + color: var(--todo-color-dark); +} + +dl.bug dt a { + color: var(--todo-color-dark) !important; +} + +dl.bug { + background: var(--bug-color); + border-left: 8px solid var(--bug-color-dark); + color: var(--bug-color-darker); +} + +dl.bug dt a { + color: var(--bug-color-dark) !important; +} + +dl.deprecated { + background: var(--deprecated-color); + border-left: 8px solid var(--deprecated-color-dark); + color: var(--deprecated-color-darker); +} + +dl.deprecated dt a { + color: var(--deprecated-color-dark) !important; +} + +dl.section dd, dl.bug dd, dl.deprecated dd, dl.todo dd { + margin-inline-start: 0px; +} + +dl.invariant, dl.pre, dl.post { + background: var(--invariant-color); + border-left: 8px solid var(--invariant-color-dark); + color: var(--invariant-color-darker); +} + +dl.invariant dt, dl.pre dt, dl.post dt { + color: var(--invariant-color-dark); +} + +/* + memitem + */ + +div.memdoc, div.memproto, h2.memtitle { + box-shadow: none; + background-image: none; + border: none; +} + +div.memdoc { + padding: 0 var(--spacing-medium); + background: var(--page-background-color); +} + +h2.memtitle, div.memitem { + border: 1px solid var(--separator-color); + box-shadow: var(--box-shadow); +} + +h2.memtitle { + box-shadow: 0px var(--spacing-medium) 0 -1px var(--fragment-background), var(--box-shadow); +} + +div.memitem { + transition: none; +} + +div.memproto, h2.memtitle { + background: var(--fragment-background); +} + +h2.memtitle { + font-weight: 500; + font-size: var(--memtitle-font-size); + font-family: var(--font-family-monospace); + border-bottom: none; + border-top-left-radius: var(--border-radius-medium); + border-top-right-radius: var(--border-radius-medium); + word-break: break-all; + position: relative; +} + +h2.memtitle:after { + content: ""; + display: block; + background: var(--fragment-background); + height: var(--spacing-medium); + bottom: calc(0px - var(--spacing-medium)); + left: 0; + right: -14px; + position: absolute; + border-top-right-radius: var(--border-radius-medium); +} + +h2.memtitle > span.permalink { + font-size: inherit; +} + +h2.memtitle > span.permalink > a { + text-decoration: none; + padding-left: 3px; + margin-right: -4px; + user-select: none; + display: inline-block; + margin-top: -6px; +} + +h2.memtitle > span.permalink > a:hover { + color: var(--primary-dark-color) !important; +} + +a:target + h2.memtitle, a:target + h2.memtitle + div.memitem { + border-color: var(--primary-light-color); +} + +div.memitem { + border-top-right-radius: var(--border-radius-medium); + border-bottom-right-radius: var(--border-radius-medium); + border-bottom-left-radius: var(--border-radius-medium); + overflow: hidden; + display: block !important; +} + +div.memdoc { + border-radius: 0; +} + +div.memproto { + border-radius: 0 var(--border-radius-small) 0 0; + overflow: auto; + border-bottom: 1px solid var(--separator-color); + padding: var(--spacing-medium); + margin-bottom: -1px; +} + +div.memtitle { + border-top-right-radius: var(--border-radius-medium); + border-top-left-radius: var(--border-radius-medium); +} + +div.memproto table.memname { + font-family: var(--font-family-monospace); + color: var(--page-foreground-color); + font-size: var(--memname-font-size); + text-shadow: none; +} + +div.memproto div.memtemplate { + font-family: var(--font-family-monospace); + color: var(--primary-dark-color); + font-size: var(--memname-font-size); + margin-left: 2px; + text-shadow: none; +} + +table.mlabels, table.mlabels > tbody { + display: block; +} + +td.mlabels-left { + width: auto; +} + +td.mlabels-right { + margin-top: 3px; + position: sticky; + left: 0; +} + +table.mlabels > tbody > tr:first-child { + display: flex; + justify-content: space-between; + flex-wrap: wrap; +} + +.memname, .memitem span.mlabels { + margin: 0 +} + +/* + reflist + */ + +dl.reflist { + box-shadow: var(--box-shadow); + border-radius: var(--border-radius-medium); + border: 1px solid var(--separator-color); + overflow: hidden; + padding: 0; +} + + +dl.reflist dt, dl.reflist dd { + box-shadow: none; + text-shadow: none; + background-image: none; + border: none; + padding: 12px; +} + + +dl.reflist dt { + font-weight: 500; + border-radius: 0; + background: var(--code-background); + border-bottom: 1px solid var(--separator-color); + color: var(--page-foreground-color) +} + + +dl.reflist dd { + background: none; +} + +/* + Table + */ + +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname), +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody { + display: inline-block; + max-width: 100%; +} + +.contents > table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname):not(.classindex) { + margin-left: calc(0px - var(--spacing-large)); + margin-right: calc(0px - var(--spacing-large)); + max-width: calc(100% + 2 * var(--spacing-large)); +} + +table.fieldtable, +table.markdownTable tbody, +table.doxtable tbody { + border: none; + margin: var(--spacing-medium) 0; + box-shadow: 0 0 0 1px var(--separator-color); + border-radius: var(--border-radius-small); +} + +table.markdownTable, table.doxtable, table.fieldtable { + padding: 1px; +} + +table.doxtable caption { + display: block; +} + +table.fieldtable { + border-collapse: collapse; + width: 100%; +} + +th.markdownTableHeadLeft, +th.markdownTableHeadRight, +th.markdownTableHeadCenter, +th.markdownTableHeadNone, +table.doxtable th { + background: var(--tablehead-background); + color: var(--tablehead-foreground); + font-weight: 600; + font-size: var(--page-font-size); +} + +th.markdownTableHeadLeft:first-child, +th.markdownTableHeadRight:first-child, +th.markdownTableHeadCenter:first-child, +th.markdownTableHeadNone:first-child, +table.doxtable tr th:first-child { + border-top-left-radius: var(--border-radius-small); +} + +th.markdownTableHeadLeft:last-child, +th.markdownTableHeadRight:last-child, +th.markdownTableHeadCenter:last-child, +th.markdownTableHeadNone:last-child, +table.doxtable tr th:last-child { + border-top-right-radius: var(--border-radius-small); +} + +table.markdownTable td, +table.markdownTable th, +table.fieldtable td, +table.fieldtable th, +table.doxtable td, +table.doxtable th { + border: 1px solid var(--separator-color); + padding: var(--spacing-small) var(--spacing-medium); +} + +table.markdownTable td:last-child, +table.markdownTable th:last-child, +table.fieldtable td:last-child, +table.fieldtable th:last-child, +table.doxtable td:last-child, +table.doxtable th:last-child { + border-right: none; +} + +table.markdownTable td:first-child, +table.markdownTable th:first-child, +table.fieldtable td:first-child, +table.fieldtable th:first-child, +table.doxtable td:first-child, +table.doxtable th:first-child { + border-left: none; +} + +table.markdownTable tr:first-child td, +table.markdownTable tr:first-child th, +table.fieldtable tr:first-child td, +table.fieldtable tr:first-child th, +table.doxtable tr:first-child td, +table.doxtable tr:first-child th { + border-top: none; +} + +table.markdownTable tr:last-child td, +table.markdownTable tr:last-child th, +table.fieldtable tr:last-child td, +table.fieldtable tr:last-child th, +table.doxtable tr:last-child td, +table.doxtable tr:last-child th { + border-bottom: none; +} + +table.markdownTable tr, table.doxtable tr { + border-bottom: 1px solid var(--separator-color); +} + +table.markdownTable tr:last-child, table.doxtable tr:last-child { + border-bottom: none; +} + +.full_width_table table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) { + display: block; +} + +.full_width_table table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody { + display: table; + width: 100%; +} + +table.fieldtable th { + font-size: var(--page-font-size); + font-weight: 600; + background-image: none; + background-color: var(--tablehead-background); + color: var(--tablehead-foreground); +} + +table.fieldtable td.fieldtype, .fieldtable td.fieldname, .fieldtable td.fielddoc, .fieldtable th { + border-bottom: 1px solid var(--separator-color); + border-right: 1px solid var(--separator-color); +} + +table.fieldtable tr:last-child td:first-child { + border-bottom-left-radius: var(--border-radius-small); +} + +table.fieldtable tr:last-child td:last-child { + border-bottom-right-radius: var(--border-radius-small); +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: var(--primary-light-color); + box-shadow: none; +} + +table.memberdecls { + display: block; + -webkit-tap-highlight-color: transparent; +} + +table.memberdecls tr[class^='memitem'] { + font-family: var(--font-family-monospace); + font-size: var(--code-font-size); +} + +table.memberdecls tr[class^='memitem'] .memTemplParams { + font-family: var(--font-family-monospace); + font-size: var(--code-font-size); + color: var(--primary-dark-color); + white-space: normal; +} + +table.memberdecls .memItemLeft, +table.memberdecls .memItemRight, +table.memberdecls .memTemplItemLeft, +table.memberdecls .memTemplItemRight, +table.memberdecls .memTemplParams { + transition: none; + padding-top: var(--spacing-small); + padding-bottom: var(--spacing-small); + border-top: 1px solid var(--separator-color); + border-bottom: 1px solid var(--separator-color); + background-color: var(--fragment-background); +} + +table.memberdecls .memTemplItemLeft, +table.memberdecls .memTemplItemRight { + padding-top: 2px; +} + +table.memberdecls .memTemplParams { + border-bottom: 0; + border-left: 1px solid var(--separator-color); + border-right: 1px solid var(--separator-color); + border-radius: var(--border-radius-small) var(--border-radius-small) 0 0; + padding-bottom: var(--spacing-small); +} + +table.memberdecls .memTemplItemLeft { + border-radius: 0 0 0 var(--border-radius-small); + border-left: 1px solid var(--separator-color); + border-top: 0; +} + +table.memberdecls .memTemplItemRight { + border-radius: 0 0 var(--border-radius-small) 0; + border-right: 1px solid var(--separator-color); + padding-left: 0; + border-top: 0; +} + +table.memberdecls .memItemLeft { + border-radius: var(--border-radius-small) 0 0 var(--border-radius-small); + border-left: 1px solid var(--separator-color); + padding-left: var(--spacing-medium); + padding-right: 0; +} + +table.memberdecls .memItemRight { + border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0; + border-right: 1px solid var(--separator-color); + padding-right: var(--spacing-medium); + padding-left: 0; + +} + +table.memberdecls .mdescLeft, table.memberdecls .mdescRight { + background: none; + color: var(--page-foreground-color); + padding: var(--spacing-small) 0; +} + +table.memberdecls .memItemLeft, +table.memberdecls .memTemplItemLeft { + padding-right: var(--spacing-medium); +} + +table.memberdecls .memSeparator { + background: var(--page-background-color); + height: var(--spacing-large); + border: 0; + transition: none; +} + +table.memberdecls .groupheader { + margin-bottom: var(--spacing-large); +} + +table.memberdecls .inherit_header td { + padding: 0 0 var(--spacing-medium) 0; + text-indent: -12px; + color: var(--page-secondary-foreground-color); +} + +table.memberdecls img[src="closed.png"], +table.memberdecls img[src="open.png"], +div.dynheader img[src="open.png"], +div.dynheader img[src="closed.png"] { + width: 0; + height: 0; + border-left: 4px solid transparent; + border-right: 4px solid transparent; + border-top: 5px solid var(--primary-color); + margin-top: 8px; + display: block; + float: left; + margin-left: -10px; + transition: transform 0.25s ease-out; +} + +table.memberdecls img { + margin-right: 10px; +} + +table.memberdecls img[src="closed.png"], +div.dynheader img[src="closed.png"] { + transform: rotate(-90deg); + +} + +.compoundTemplParams { + font-family: var(--font-family-monospace); + color: var(--primary-dark-color); + font-size: var(--code-font-size); +} + +@media screen and (max-width: 767px) { + + table.memberdecls .memItemLeft, + table.memberdecls .memItemRight, + table.memberdecls .mdescLeft, + table.memberdecls .mdescRight, + table.memberdecls .memTemplItemLeft, + table.memberdecls .memTemplItemRight, + table.memberdecls .memTemplParams { + display: block; + text-align: left; + padding-left: var(--spacing-large); + margin: 0 calc(0px - var(--spacing-large)) 0 calc(0px - var(--spacing-large)); + border-right: none; + border-left: none; + border-radius: 0; + white-space: normal; + } + + table.memberdecls .memItemLeft, + table.memberdecls .mdescLeft, + table.memberdecls .memTemplItemLeft { + border-bottom: 0; + padding-bottom: 0; + } + + table.memberdecls .memTemplItemLeft { + padding-top: 0; + } + + table.memberdecls .mdescLeft { + margin-bottom: calc(0px - var(--page-font-size)); + } + + table.memberdecls .memItemRight, + table.memberdecls .mdescRight, + table.memberdecls .memTemplItemRight { + border-top: 0; + padding-top: 0; + padding-right: var(--spacing-large); + overflow-x: auto; + } + + table.memberdecls tr[class^='memitem']:not(.inherit) { + display: block; + width: calc(100vw - 2 * var(--spacing-large)); + } + + table.memberdecls .mdescRight { + color: var(--page-foreground-color); + } + + table.memberdecls tr.inherit { + visibility: hidden; + } + + table.memberdecls tr[style="display: table-row;"] { + display: block !important; + visibility: visible; + width: calc(100vw - 2 * var(--spacing-large)); + animation: fade .5s; + } + + @keyframes fade { + 0% { + opacity: 0; + max-height: 0; + } + + 100% { + opacity: 1; + max-height: 200px; + } + } +} + + +/* + Horizontal Rule + */ + +hr { + margin-top: var(--spacing-large); + margin-bottom: var(--spacing-large); + height: 1px; + background-color: var(--separator-color); + border: 0; +} + +.contents hr { + box-shadow: 100px 0 0 var(--separator-color), + -100px 0 0 var(--separator-color), + 500px 0 0 var(--separator-color), + -500px 0 0 var(--separator-color), + 1500px 0 0 var(--separator-color), + -1500px 0 0 var(--separator-color), + 2000px 0 0 var(--separator-color), + -2000px 0 0 var(--separator-color); +} + +.contents img, .contents .center, .contents center, .contents div.image object { + max-width: 100%; + overflow: auto; +} + +@media screen and (max-width: 767px) { + .contents .dyncontent > .center, .contents > center { + margin-left: calc(0px - var(--spacing-large)); + margin-right: calc(0px - var(--spacing-large)); + max-width: calc(100% + 2 * var(--spacing-large)); + } +} + +/* + Directories + */ +div.directory { + border-top: 1px solid var(--separator-color); + border-bottom: 1px solid var(--separator-color); + width: auto; +} + +table.directory { + font-family: var(--font-family); + font-size: var(--page-font-size); + font-weight: normal; + width: 100%; +} + +table.directory td.entry, table.directory td.desc { + padding: calc(var(--spacing-small) / 2) var(--spacing-small); + line-height: var(--table-line-height); +} + +table.directory tr.even td:last-child { + border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0; +} + +table.directory tr.even td:first-child { + border-radius: var(--border-radius-small) 0 0 var(--border-radius-small); +} + +table.directory tr.even:last-child td:last-child { + border-radius: 0 var(--border-radius-small) 0 0; +} + +table.directory tr.even:last-child td:first-child { + border-radius: var(--border-radius-small) 0 0 0; +} + +table.directory td.desc { + min-width: 250px; +} + +table.directory tr.even { + background-color: var(--odd-color); +} + +table.directory tr.odd { + background-color: transparent; +} + +.icona { + width: auto; + height: auto; + margin: 0 var(--spacing-small); +} + +.icon { + background: var(--primary-color); + border-radius: var(--border-radius-small); + font-size: var(--page-font-size); + padding: calc(var(--page-font-size) / 5); + line-height: var(--page-font-size); + transform: scale(0.8); + height: auto; + width: var(--page-font-size); + user-select: none; +} + +.iconfopen, .icondoc, .iconfclosed { + background-position: center; + margin-bottom: 0; + height: var(--table-line-height); +} + +.icondoc { + filter: saturate(0.2); +} + +@media screen and (max-width: 767px) { + div.directory { + margin-left: calc(0px - var(--spacing-large)); + margin-right: calc(0px - var(--spacing-large)); + } +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) .iconfopen, html:not(.light-mode) .iconfclosed { + filter: hue-rotate(180deg) invert(); + } +} + +html.dark-mode .iconfopen, html.dark-mode .iconfclosed { + filter: hue-rotate(180deg) invert(); +} + +/* + Class list + */ + +.classindex dl.odd { + background: var(--odd-color); + border-radius: var(--border-radius-small); +} + +.classindex dl.even { + background-color: transparent; +} + +/* + Class Index Doxygen 1.8 +*/ + +table.classindex { + margin-left: 0; + margin-right: 0; + width: 100%; +} + +table.classindex table div.ah { + background-image: none; + background-color: initial; + border-color: var(--separator-color); + color: var(--page-foreground-color); + box-shadow: var(--box-shadow); + border-radius: var(--border-radius-large); + padding: var(--spacing-small); +} + +div.qindex { + background-color: var(--odd-color); + border-radius: var(--border-radius-small); + border: 1px solid var(--separator-color); + padding: var(--spacing-small) 0; +} + +/* + Footer and nav-path + */ + +#nav-path { + width: 100%; +} + +#nav-path ul { + background-image: none; + background: var(--page-background-color); + border: none; + border-top: 1px solid var(--separator-color); + border-bottom: 1px solid var(--separator-color); + border-bottom: 0; + box-shadow: 0 0.75px 0 var(--separator-color); + font-size: var(--navigation-font-size); +} + +img.footer { + width: 60px; +} + +.navpath li.footer { + color: var(--page-secondary-foreground-color); +} + +address.footer { + color: var(--page-secondary-foreground-color); + margin-bottom: var(--spacing-large); +} + +#nav-path li.navelem { + background-image: none; + display: flex; + align-items: center; +} + +.navpath li.navelem a { + text-shadow: none; + display: inline-block; + color: var(--primary-color) !important; +} + +.navpath li.navelem b { + color: var(--primary-dark-color); + font-weight: 500; +} + +li.navelem { + padding: 0; + margin-left: -8px; +} + +li.navelem:first-child { + margin-left: var(--spacing-large); +} + +li.navelem:first-child:before { + display: none; +} + +#nav-path li.navelem:after { + content: ''; + border: 5px solid var(--page-background-color); + border-bottom-color: transparent; + border-right-color: transparent; + border-top-color: transparent; + transform: translateY(-1px) scaleY(4.2); + z-index: 10; + margin-left: 6px; +} + +#nav-path li.navelem:before { + content: ''; + border: 5px solid var(--separator-color); + border-bottom-color: transparent; + border-right-color: transparent; + border-top-color: transparent; + transform: translateY(-1px) scaleY(3.2); + margin-right: var(--spacing-small); +} + +.navpath li.navelem a:hover { + color: var(--primary-color); +} + +/* + Scrollbars for Webkit +*/ + +#nav-tree::-webkit-scrollbar, +div.fragment::-webkit-scrollbar, +pre.fragment::-webkit-scrollbar, +div.memproto::-webkit-scrollbar, +.contents center::-webkit-scrollbar, +.contents .center::-webkit-scrollbar, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody::-webkit-scrollbar, +div.contents .toc::-webkit-scrollbar, +.contents .dotgraph::-webkit-scrollbar, +.contents .tabs-overview-container::-webkit-scrollbar { + background: transparent; + width: calc(var(--webkit-scrollbar-size) + var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding)); + height: calc(var(--webkit-scrollbar-size) + var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding)); +} + +#nav-tree::-webkit-scrollbar-thumb, +div.fragment::-webkit-scrollbar-thumb, +pre.fragment::-webkit-scrollbar-thumb, +div.memproto::-webkit-scrollbar-thumb, +.contents center::-webkit-scrollbar-thumb, +.contents .center::-webkit-scrollbar-thumb, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody::-webkit-scrollbar-thumb, +div.contents .toc::-webkit-scrollbar-thumb, +.contents .dotgraph::-webkit-scrollbar-thumb, +.contents .tabs-overview-container::-webkit-scrollbar-thumb { + background-color: transparent; + border: var(--webkit-scrollbar-padding) solid transparent; + border-radius: calc(var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding)); + background-clip: padding-box; +} + +#nav-tree:hover::-webkit-scrollbar-thumb, +div.fragment:hover::-webkit-scrollbar-thumb, +pre.fragment:hover::-webkit-scrollbar-thumb, +div.memproto:hover::-webkit-scrollbar-thumb, +.contents center:hover::-webkit-scrollbar-thumb, +.contents .center:hover::-webkit-scrollbar-thumb, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody:hover::-webkit-scrollbar-thumb, +div.contents .toc:hover::-webkit-scrollbar-thumb, +.contents .dotgraph:hover::-webkit-scrollbar-thumb, +.contents .tabs-overview-container:hover::-webkit-scrollbar-thumb { + background-color: var(--webkit-scrollbar-color); +} + +#nav-tree::-webkit-scrollbar-track, +div.fragment::-webkit-scrollbar-track, +pre.fragment::-webkit-scrollbar-track, +div.memproto::-webkit-scrollbar-track, +.contents center::-webkit-scrollbar-track, +.contents .center::-webkit-scrollbar-track, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody::-webkit-scrollbar-track, +div.contents .toc::-webkit-scrollbar-track, +.contents .dotgraph::-webkit-scrollbar-track, +.contents .tabs-overview-container::-webkit-scrollbar-track { + background: transparent; +} + +#nav-tree::-webkit-scrollbar-corner { + background-color: var(--side-nav-background); +} + +#nav-tree, +div.fragment, +pre.fragment, +div.memproto, +.contents center, +.contents .center, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody, +div.contents .toc { + overflow-x: auto; + overflow-x: overlay; +} + +#nav-tree { + overflow-x: auto; + overflow-y: auto; + overflow-y: overlay; +} + +/* + Scrollbars for Firefox +*/ + +#nav-tree, +div.fragment, +pre.fragment, +div.memproto, +.contents center, +.contents .center, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) tbody, +div.contents .toc, +.contents .dotgraph, +.contents .tabs-overview-container { + scrollbar-width: thin; +} + +/* + Optional Dark mode toggle button +*/ + +doxygen-awesome-dark-mode-toggle { + display: inline-block; + margin: 0 0 0 var(--spacing-small); + padding: 0; + width: var(--searchbar-height); + height: var(--searchbar-height); + background: none; + border: none; + border-radius: var(--searchbar-height); + vertical-align: middle; + text-align: center; + line-height: var(--searchbar-height); + font-size: 22px; + display: flex; + align-items: center; + justify-content: center; + user-select: none; + cursor: pointer; +} + +doxygen-awesome-dark-mode-toggle > svg { + transition: transform .1s ease-in-out; +} + +doxygen-awesome-dark-mode-toggle:active > svg { + transform: scale(.5); +} + +doxygen-awesome-dark-mode-toggle:hover { + background-color: rgba(0,0,0,.03); +} + +html.dark-mode doxygen-awesome-dark-mode-toggle:hover { + background-color: rgba(0,0,0,.18); +} + +/* + Optional fragment copy button +*/ +.doxygen-awesome-fragment-wrapper { + position: relative; +} + +doxygen-awesome-fragment-copy-button { + opacity: 0; + background: var(--fragment-background); + width: 28px; + height: 28px; + position: absolute; + right: calc(var(--spacing-large) - (var(--spacing-large) / 2.5)); + top: calc(var(--spacing-large) - (var(--spacing-large) / 2.5)); + border: 1px solid var(--fragment-foreground); + cursor: pointer; + border-radius: var(--border-radius-small); + display: flex; + justify-content: center; + align-items: center; +} + +.doxygen-awesome-fragment-wrapper:hover doxygen-awesome-fragment-copy-button, doxygen-awesome-fragment-copy-button.success { + opacity: .28; +} + +doxygen-awesome-fragment-copy-button:hover, doxygen-awesome-fragment-copy-button.success { + opacity: 1 !important; +} + +doxygen-awesome-fragment-copy-button:active:not([class~=success]) svg { + transform: scale(.91); +} + +doxygen-awesome-fragment-copy-button svg { + fill: var(--fragment-foreground); + width: 18px; + height: 18px; +} + +doxygen-awesome-fragment-copy-button.success svg { + fill: rgb(14, 168, 14); +} + +doxygen-awesome-fragment-copy-button.success { + border-color: rgb(14, 168, 14); +} + +@media screen and (max-width: 767px) { + .textblock > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + .textblock li > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + .memdoc li > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + .memdoc > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + dl dd > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button { + right: 0; + } +} + +/* + Optional paragraph link button +*/ + +a.anchorlink { + font-size: 90%; + margin-left: var(--spacing-small); + color: var(--page-foreground-color) !important; + text-decoration: none; + opacity: .15; + display: none; + transition: opacity .1s ease-in-out, color .1s ease-in-out; +} + +a.anchorlink svg { + fill: var(--page-foreground-color); +} + +h3 a.anchorlink svg, h4 a.anchorlink svg { + margin-bottom: -3px; + margin-top: -4px; +} + +a.anchorlink:hover { + opacity: .45; +} + +h2:hover a.anchorlink, h1:hover a.anchorlink, h3:hover a.anchorlink, h4:hover a.anchorlink { + display: inline-block; +} + +/* + Optional tab feature +*/ + +.tabbed { + margin: var(--spacing-medium) auto; +} + +.tabbed ul { + padding-inline-start: 0px; + margin: 0; + padding: var(--spacing-small) 0; + border-bottom: 1px solid var(--separator-color); +} + +.tabbed li { + display: none; +} + +.tabbed li.selected { + display: block; +} + +.tabs-overview-container { + overflow-x: auto; + display: block; + overflow-y: visible; +} + +.tabs-overview { + border-bottom: 1px solid var(--separator-color); + display: flex; + flex-direction: row; +} + +.tabs-overview button.tab-button { + color: var(--page-foreground-color); + margin: 0; + border: none; + background: transparent; + padding: var(--spacing-small) 0; + display: inline-block; + font-size: var(--page-font-size); + cursor: pointer; + box-shadow: 0 1px 0 0 var(--separator-color); + position: relative; +} + +.tabs-overview button.tab-button .tab-title { + float: left; + white-space: nowrap; + padding: var(--spacing-small) var(--spacing-large); + border-radius: var(--border-radius-medium); +} + +.tabs-overview button.tab-button:not(:last-child) .tab-title { + box-shadow: 8px 0 0 -7px var(--separator-color); +} + +.tabs-overview button.tab-button:hover .tab-title { + background: var(--separator-color); + box-shadow: none; +} + +.tabs-overview button.tab-button.active { + color: var(--primary-color); +} + +.tabs-overview button.tab-button.active::after { + content: ''; + display: block; + position: absolute; + left: 0px; + bottom: 0; + right: 0px; + height: 3px; + border-radius: var(--border-radius-small) var(--border-radius-small) 0 0; + background-color: var(--primary-color); +} diff --git a/doxygen.css b/doxygen.css new file mode 100644 index 000000000..eeadba5e9 --- /dev/null +++ b/doxygen.css @@ -0,0 +1,2027 @@ +/* The standard CSS for doxygen 1.9.8*/ + +html { +/* page base colors */ +--page-background-color: white; +--page-foreground-color: black; +--page-link-color: #3D578C; +--page-visited-link-color: #4665A2; + +/* index */ +--index-odd-item-bg-color: #F8F9FC; +--index-even-item-bg-color: white; +--index-header-color: black; +--index-separator-color: #A0A0A0; + +/* header */ +--header-background-color: #F9FAFC; +--header-separator-color: #C4CFE5; +--header-gradient-image: url('nav_h.png'); +--group-header-separator-color: #879ECB; +--group-header-color: #354C7B; +--inherit-header-color: gray; + +--footer-foreground-color: #2A3D61; +--footer-logo-width: 104px; +--citation-label-color: #334975; +--glow-color: cyan; + +--title-background-color: white; +--title-separator-color: #5373B4; +--directory-separator-color: #9CAFD4; +--separator-color: #4A6AAA; + +--blockquote-background-color: #F7F8FB; +--blockquote-border-color: #9CAFD4; + +--scrollbar-thumb-color: #9CAFD4; +--scrollbar-background-color: #F9FAFC; + +--icon-background-color: #728DC1; +--icon-foreground-color: white; +--icon-doc-image: url('doc.svg'); +--icon-folder-open-image: url('folderopen.svg'); +--icon-folder-closed-image: url('folderclosed.svg'); + +/* brief member declaration list */ +--memdecl-background-color: #F9FAFC; +--memdecl-separator-color: #DEE4F0; +--memdecl-foreground-color: #555; +--memdecl-template-color: #4665A2; + +/* detailed member list */ +--memdef-border-color: #A8B8D9; +--memdef-title-background-color: #E2E8F2; +--memdef-title-gradient-image: url('nav_f.png'); +--memdef-proto-background-color: #DFE5F1; +--memdef-proto-text-color: #253555; +--memdef-proto-text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); +--memdef-doc-background-color: white; +--memdef-param-name-color: #602020; +--memdef-template-color: #4665A2; + +/* tables */ +--table-cell-border-color: #2D4068; +--table-header-background-color: #374F7F; +--table-header-foreground-color: #FFFFFF; + +/* labels */ +--label-background-color: #728DC1; +--label-left-top-border-color: #5373B4; +--label-right-bottom-border-color: #C4CFE5; +--label-foreground-color: white; + +/** navigation bar/tree/menu */ +--nav-background-color: #F9FAFC; +--nav-foreground-color: #364D7C; +--nav-gradient-image: url('tab_b.png'); +--nav-gradient-hover-image: url('tab_h.png'); +--nav-gradient-active-image: url('tab_a.png'); +--nav-gradient-active-image-parent: url("../tab_a.png"); +--nav-separator-image: url('tab_s.png'); +--nav-breadcrumb-image: url('bc_s.png'); +--nav-breadcrumb-border-color: #C2CDE4; +--nav-splitbar-image: url('splitbar.png'); +--nav-font-size-level1: 13px; +--nav-font-size-level2: 10px; +--nav-font-size-level3: 9px; +--nav-text-normal-color: #283A5D; +--nav-text-hover-color: white; +--nav-text-active-color: white; +--nav-text-normal-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); +--nav-text-hover-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +--nav-text-active-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +--nav-menu-button-color: #364D7C; +--nav-menu-background-color: white; +--nav-menu-foreground-color: #555555; +--nav-menu-toggle-color: rgba(255, 255, 255, 0.5); +--nav-arrow-color: #9CAFD4; +--nav-arrow-selected-color: #9CAFD4; + +/* table of contents */ +--toc-background-color: #F4F6FA; +--toc-border-color: #D8DFEE; +--toc-header-color: #4665A2; +--toc-down-arrow-image: url("data:image/svg+xml;utf8,&%238595;"); + +/** search field */ +--search-background-color: white; +--search-foreground-color: #909090; +--search-magnification-image: url('mag.svg'); +--search-magnification-select-image: url('mag_sel.svg'); +--search-active-color: black; +--search-filter-background-color: #F9FAFC; +--search-filter-foreground-color: black; +--search-filter-border-color: #90A5CE; +--search-filter-highlight-text-color: white; +--search-filter-highlight-bg-color: #3D578C; +--search-results-foreground-color: #425E97; +--search-results-background-color: #EEF1F7; +--search-results-border-color: black; +--search-box-shadow: inset 0.5px 0.5px 3px 0px #555; + +/** code fragments */ +--code-keyword-color: #008000; +--code-type-keyword-color: #604020; +--code-flow-keyword-color: #E08000; +--code-comment-color: #800000; +--code-preprocessor-color: #806020; +--code-string-literal-color: #002080; +--code-char-literal-color: #008080; +--code-xml-cdata-color: black; +--code-vhdl-digit-color: #FF00FF; +--code-vhdl-char-color: #000000; +--code-vhdl-keyword-color: #700070; +--code-vhdl-logic-color: #FF0000; +--code-link-color: #4665A2; +--code-external-link-color: #4665A2; +--fragment-foreground-color: black; +--fragment-background-color: #FBFCFD; +--fragment-border-color: #C4CFE5; +--fragment-lineno-border-color: #00FF00; +--fragment-lineno-background-color: #E8E8E8; +--fragment-lineno-foreground-color: black; +--fragment-lineno-link-fg-color: #4665A2; +--fragment-lineno-link-bg-color: #D8D8D8; +--fragment-lineno-link-hover-fg-color: #4665A2; +--fragment-lineno-link-hover-bg-color: #C8C8C8; +--tooltip-foreground-color: black; +--tooltip-background-color: white; +--tooltip-border-color: gray; +--tooltip-doc-color: grey; +--tooltip-declaration-color: #006318; +--tooltip-link-color: #4665A2; +--tooltip-shadow: 1px 1px 7px gray; +--fold-line-color: #808080; +--fold-minus-image: url('minus.svg'); +--fold-plus-image: url('plus.svg'); +--fold-minus-image-relpath: url('../../minus.svg'); +--fold-plus-image-relpath: url('../../plus.svg'); + +/** font-family */ +--font-family-normal: Roboto,sans-serif; +--font-family-monospace: 'JetBrains Mono',Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace,fixed; +--font-family-nav: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +--font-family-title: Tahoma,Arial,sans-serif; +--font-family-toc: Verdana,'DejaVu Sans',Geneva,sans-serif; +--font-family-search: Arial,Verdana,sans-serif; +--font-family-icon: Arial,Helvetica; +--font-family-tooltip: Roboto,sans-serif; + +} + +@media (prefers-color-scheme: dark) { + html:not(.dark-mode) { + color-scheme: dark; + +/* page base colors */ +--page-background-color: black; +--page-foreground-color: #C9D1D9; +--page-link-color: #90A5CE; +--page-visited-link-color: #A3B4D7; + +/* index */ +--index-odd-item-bg-color: #0B101A; +--index-even-item-bg-color: black; +--index-header-color: #C4CFE5; +--index-separator-color: #334975; + +/* header */ +--header-background-color: #070B11; +--header-separator-color: #141C2E; +--header-gradient-image: url('nav_hd.png'); +--group-header-separator-color: #283A5D; +--group-header-color: #90A5CE; +--inherit-header-color: #A0A0A0; + +--footer-foreground-color: #5B7AB7; +--footer-logo-width: 60px; +--citation-label-color: #90A5CE; +--glow-color: cyan; + +--title-background-color: #090D16; +--title-separator-color: #354C79; +--directory-separator-color: #283A5D; +--separator-color: #283A5D; + +--blockquote-background-color: #101826; +--blockquote-border-color: #283A5D; + +--scrollbar-thumb-color: #283A5D; +--scrollbar-background-color: #070B11; + +--icon-background-color: #334975; +--icon-foreground-color: #C4CFE5; +--icon-doc-image: url('docd.svg'); +--icon-folder-open-image: url('folderopend.svg'); +--icon-folder-closed-image: url('folderclosedd.svg'); + +/* brief member declaration list */ +--memdecl-background-color: #0B101A; +--memdecl-separator-color: #2C3F65; +--memdecl-foreground-color: #BBB; +--memdecl-template-color: #7C95C6; + +/* detailed member list */ +--memdef-border-color: #233250; +--memdef-title-background-color: #1B2840; +--memdef-title-gradient-image: url('nav_fd.png'); +--memdef-proto-background-color: #19243A; +--memdef-proto-text-color: #9DB0D4; +--memdef-proto-text-shadow: 0px 1px 1px rgba(0, 0, 0, 0.9); +--memdef-doc-background-color: black; +--memdef-param-name-color: #D28757; +--memdef-template-color: #7C95C6; + +/* tables */ +--table-cell-border-color: #283A5D; +--table-header-background-color: #283A5D; +--table-header-foreground-color: #C4CFE5; + +/* labels */ +--label-background-color: #354C7B; +--label-left-top-border-color: #4665A2; +--label-right-bottom-border-color: #283A5D; +--label-foreground-color: #CCCCCC; + +/** navigation bar/tree/menu */ +--nav-background-color: #101826; +--nav-foreground-color: #364D7C; +--nav-gradient-image: url('tab_bd.png'); +--nav-gradient-hover-image: url('tab_hd.png'); +--nav-gradient-active-image: url('tab_ad.png'); +--nav-gradient-active-image-parent: url("../tab_ad.png"); +--nav-separator-image: url('tab_sd.png'); +--nav-breadcrumb-image: url('bc_sd.png'); +--nav-breadcrumb-border-color: #2A3D61; +--nav-splitbar-image: url('splitbard.png'); +--nav-font-size-level1: 13px; +--nav-font-size-level2: 10px; +--nav-font-size-level3: 9px; +--nav-text-normal-color: #B6C4DF; +--nav-text-hover-color: #DCE2EF; +--nav-text-active-color: #DCE2EF; +--nav-text-normal-shadow: 0px 1px 1px black; +--nav-text-hover-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +--nav-text-active-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +--nav-menu-button-color: #B6C4DF; +--nav-menu-background-color: #05070C; +--nav-menu-foreground-color: #BBBBBB; +--nav-menu-toggle-color: rgba(255, 255, 255, 0.2); +--nav-arrow-color: #334975; +--nav-arrow-selected-color: #90A5CE; + +/* table of contents */ +--toc-background-color: #151E30; +--toc-border-color: #202E4A; +--toc-header-color: #A3B4D7; +--toc-down-arrow-image: url("data:image/svg+xml;utf8,&%238595;"); + +/** search field */ +--search-background-color: black; +--search-foreground-color: #C5C5C5; +--search-magnification-image: url('mag_d.svg'); +--search-magnification-select-image: url('mag_seld.svg'); +--search-active-color: #C5C5C5; +--search-filter-background-color: #101826; +--search-filter-foreground-color: #90A5CE; +--search-filter-border-color: #7C95C6; +--search-filter-highlight-text-color: #BCC9E2; +--search-filter-highlight-bg-color: #283A5D; +--search-results-background-color: #101826; +--search-results-foreground-color: #90A5CE; +--search-results-border-color: #7C95C6; +--search-box-shadow: inset 0.5px 0.5px 3px 0px #2F436C; + +/** code fragments */ +--code-keyword-color: #CC99CD; +--code-type-keyword-color: #AB99CD; +--code-flow-keyword-color: #E08000; +--code-comment-color: #717790; +--code-preprocessor-color: #65CABE; +--code-string-literal-color: #7EC699; +--code-char-literal-color: #00E0F0; +--code-xml-cdata-color: #C9D1D9; +--code-vhdl-digit-color: #FF00FF; +--code-vhdl-char-color: #C0C0C0; +--code-vhdl-keyword-color: #CF53C9; +--code-vhdl-logic-color: #FF0000; +--code-link-color: #79C0FF; +--code-external-link-color: #79C0FF; +--fragment-foreground-color: #C9D1D9; +--fragment-background-color: black; +--fragment-border-color: #30363D; +--fragment-lineno-border-color: #30363D; +--fragment-lineno-background-color: black; +--fragment-lineno-foreground-color: #6E7681; +--fragment-lineno-link-fg-color: #6E7681; +--fragment-lineno-link-bg-color: #303030; +--fragment-lineno-link-hover-fg-color: #8E96A1; +--fragment-lineno-link-hover-bg-color: #505050; +--tooltip-foreground-color: #C9D1D9; +--tooltip-background-color: #202020; +--tooltip-border-color: #C9D1D9; +--tooltip-doc-color: #D9E1E9; +--tooltip-declaration-color: #20C348; +--tooltip-link-color: #79C0FF; +--tooltip-shadow: none; +--fold-line-color: #808080; +--fold-minus-image: url('minusd.svg'); +--fold-plus-image: url('plusd.svg'); +--fold-minus-image-relpath: url('../../minusd.svg'); +--fold-plus-image-relpath: url('../../plusd.svg'); + +/** font-family */ +--font-family-normal: Roboto,sans-serif; +--font-family-monospace: 'JetBrains Mono',Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace,fixed; +--font-family-nav: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +--font-family-title: Tahoma,Arial,sans-serif; +--font-family-toc: Verdana,'DejaVu Sans',Geneva,sans-serif; +--font-family-search: Arial,Verdana,sans-serif; +--font-family-icon: Arial,Helvetica; +--font-family-tooltip: Roboto,sans-serif; + +}} +body { + background-color: var(--page-background-color); + color: var(--page-foreground-color); +} + +body, table, div, p, dl { + font-weight: 400; + font-size: 14px; + font-family: var(--font-family-normal); + line-height: 22px; +} + +/* @group Heading Levels */ + +.title { + font-weight: 400; + font-size: 14px; + font-family: var(--font-family-normal); + line-height: 28px; + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h1.groupheader { + font-size: 150%; +} + +h2.groupheader { + border-bottom: 1px solid var(--group-header-separator-color); + color: var(--group-header-color); + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px var(--glow-color); +} + +dt { + font-weight: bold; +} + +p.startli, p.startdd { + margin-top: 2px; +} + +th p.starttd, th p.intertd, th p.endtd { + font-size: 100%; + font-weight: 700; +} + +p.starttd { + margin-top: 0px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +p.interli { +} + +p.interdd { +} + +p.intertd { +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.navtab { + padding-right: 15px; + text-align: right; + line-height: 110%; +} + +div.navtab table { + border-spacing: 0; +} + +td.navtab { + padding-right: 6px; + padding-left: 6px; +} + +td.navtabHL { + background-image: var(--nav-gradient-active-image); + background-repeat:repeat-x; + padding-right: 6px; + padding-left: 6px; +} + +td.navtabHL a, td.navtabHL a:visited { + color: var(--nav-text-hover-color); + text-shadow: var(--nav-text-hover-shadow); +} + +a.navtab { + font-weight: bold; +} + +div.qindex{ + text-align: center; + width: 100%; + line-height: 140%; + font-size: 130%; + color: var(--index-separator-color); +} + +#main-menu a:focus { + outline: auto; + z-index: 10; + position: relative; +} + +dt.alphachar{ + font-size: 180%; + font-weight: bold; +} + +.alphachar a{ + color: var(--index-header-color); +} + +.alphachar a:hover, .alphachar a:visited{ + text-decoration: none; +} + +.classindex dl { + padding: 25px; + column-count:1 +} + +.classindex dd { + display:inline-block; + margin-left: 50px; + width: 90%; + line-height: 1.15em; +} + +.classindex dl.even { + background-color: var(--index-even-item-bg-color); +} + +.classindex dl.odd { + background-color: var(--index-odd-item-bg-color); +} + +@media(min-width: 1120px) { + .classindex dl { + column-count:2 + } +} + +@media(min-width: 1320px) { + .classindex dl { + column-count:3 + } +} + + +/* @group Link Styling */ + +a { + color: var(--page-link-color); + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: var(--page-visited-link-color); +} + +a:hover { + text-decoration: underline; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited, a.line, a.line:visited { + color: var(--code-link-color); +} + +a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { + color: var(--code-external-link-color); +} + +a.code.hl_class { /* style for links to class names in code snippets */ } +a.code.hl_struct { /* style for links to struct names in code snippets */ } +a.code.hl_union { /* style for links to union names in code snippets */ } +a.code.hl_interface { /* style for links to interface names in code snippets */ } +a.code.hl_protocol { /* style for links to protocol names in code snippets */ } +a.code.hl_category { /* style for links to category names in code snippets */ } +a.code.hl_exception { /* style for links to exception names in code snippets */ } +a.code.hl_service { /* style for links to service names in code snippets */ } +a.code.hl_singleton { /* style for links to singleton names in code snippets */ } +a.code.hl_concept { /* style for links to concept names in code snippets */ } +a.code.hl_namespace { /* style for links to namespace names in code snippets */ } +a.code.hl_package { /* style for links to package names in code snippets */ } +a.code.hl_define { /* style for links to macro names in code snippets */ } +a.code.hl_function { /* style for links to function names in code snippets */ } +a.code.hl_variable { /* style for links to variable names in code snippets */ } +a.code.hl_typedef { /* style for links to typedef names in code snippets */ } +a.code.hl_enumvalue { /* style for links to enum value names in code snippets */ } +a.code.hl_enumeration { /* style for links to enumeration names in code snippets */ } +a.code.hl_signal { /* style for links to Qt signal names in code snippets */ } +a.code.hl_slot { /* style for links to Qt slot names in code snippets */ } +a.code.hl_friend { /* style for links to friend names in code snippets */ } +a.code.hl_dcop { /* style for links to KDE3 DCOP names in code snippets */ } +a.code.hl_property { /* style for links to property names in code snippets */ } +a.code.hl_event { /* style for links to event names in code snippets */ } +a.code.hl_sequence { /* style for links to sequence names in code snippets */ } +a.code.hl_dictionary { /* style for links to dictionary names in code snippets */ } + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +ul { + overflow: visible; +} + +ul.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; + column-count: 3; + list-style-type: none; +} + +#side-nav ul { + overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */ +} + +#main-nav ul { + overflow: visible; /* reset ul rule for the navigation bar drop down lists */ +} + +.fragment { + text-align: left; + direction: ltr; + overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/ + overflow-y: hidden; +} + +pre.fragment { + border: 1px solid var(--fragment-border-color); + background-color: var(--fragment-background-color); + color: var(--fragment-foreground-color); + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: var(--font-family-monospace); + font-size: 105%; +} + +div.fragment { + padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/ + margin: 4px 8px 4px 2px; + color: var(--fragment-foreground-color); + background-color: var(--fragment-background-color); + border: 1px solid var(--fragment-border-color); +} + +div.line { + font-family: var(--font-family-monospace); + font-size: 13px; + min-height: 13px; + line-height: 1.2; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line:after { + content:"\000A"; + white-space: pre; +} + +div.line.glow { + background-color: var(--glow-color); + box-shadow: 0 0 10px var(--glow-color); +} + +span.fold { + margin-left: 5px; + margin-right: 1px; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; + display: inline-block; + width: 12px; + height: 12px; + background-repeat:no-repeat; + background-position:center; +} + +span.lineno { + padding-right: 4px; + margin-right: 9px; + text-align: right; + border-right: 2px solid var(--fragment-lineno-border-color); + color: var(--fragment-lineno-foreground-color); + background-color: var(--fragment-lineno-background-color); + white-space: pre; +} +span.lineno a, span.lineno a:visited { + color: var(--fragment-lineno-link-fg-color); + background-color: var(--fragment-lineno-link-bg-color); +} + +span.lineno a:hover { + color: var(--fragment-lineno-link-hover-fg-color); + background-color: var(--fragment-lineno-link-hover-bg-color); +} + +.lineno { + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +div.classindex ul { + list-style: none; + padding-left: 0; +} + +div.classindex span.ai { + display: inline-block; +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + color: var(--page-foreground-color); + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +p.formulaDsp { + text-align: center; +} + +img.dark-mode-visible { + display: none; +} +img.light-mode-visible { + display: none; +} + +img.formulaDsp { + +} + +img.formulaInl, img.inline { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; + width: var(--footer-logo-width); +} + +.compoundTemplParams { + color: var(--memdecl-template-color); + font-size: 80%; + line-height: 120%; +} + +/* @group Code Colorization */ + +span.keyword { + color: var(--code-keyword-color); +} + +span.keywordtype { + color: var(--code-type-keyword-color); +} + +span.keywordflow { + color: var(--code-flow-keyword-color); +} + +span.comment { + color: var(--code-comment-color); +} + +span.preprocessor { + color: var(--code-preprocessor-color); +} + +span.stringliteral { + color: var(--code-string-literal-color); +} + +span.charliteral { + color: var(--code-char-literal-color); +} + +span.xmlcdata { + color: var(--code-xml-cdata-color); +} + +span.vhdldigit { + color: var(--code-vhdl-digit-color); +} + +span.vhdlchar { + color: var(--code-vhdl-char-color); +} + +span.vhdlkeyword { + color: var(--code-vhdl-keyword-color); +} + +span.vhdllogic { + color: var(--code-vhdl-logic-color); +} + +blockquote { + background-color: var(--blockquote-background-color); + border-left: 2px solid var(--blockquote-border-color); + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid var(--table-cell-border-color); +} + +th.dirtab { + background-color: var(--table-header-background-color); + color: var(--table-header-foreground-color); + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid var(--separator-color); +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: var(--glow-color); + box-shadow: 0 0 15px var(--glow-color); +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: var(--memdecl-background-color); + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: var(--memdecl-foreground-color); +} + +.memSeparator { + border-bottom: 1px solid var(--memdecl-separator-color); + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight, .memTemplItemRight { + width: 100%; +} + +.memTemplParams { + color: var(--memdecl-template-color); + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtitle { + padding: 8px; + border-top: 1px solid var(--memdef-border-color); + border-left: 1px solid var(--memdef-border-color); + border-right: 1px solid var(--memdef-border-color); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + margin-bottom: -1px; + background-image: var(--memdef-title-gradient-image); + background-repeat: repeat-x; + background-color: var(--memdef-title-background-color); + line-height: 1.25; + font-weight: 300; + float:left; +} + +.permalink +{ + font-size: 65%; + display: inline-block; + vertical-align: middle; +} + +.memtemplate { + font-size: 80%; + color: var(--memdef-template-color); + font-weight: normal; + margin-left: 9px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px var(--glow-color); +} + +.memname { + font-weight: 400; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid var(--memdef-border-color); + border-left: 1px solid var(--memdef-border-color); + border-right: 1px solid var(--memdef-border-color); + padding: 6px 0px 6px 0px; + color: var(--memdef-proto-text-color); + font-weight: bold; + text-shadow: var(--memdef-proto-text-shadow); + background-color: var(--memdef-proto-background-color); + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; +} + +.overload { + font-family: var(--font-family-monospace); + font-size: 65%; +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid var(--memdef-border-color); + border-left: 1px solid var(--memdef-border-color); + border-right: 1px solid var(--memdef-border-color); + padding: 6px 10px 2px 10px; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: var(--memdef-doc-background-color); + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: var(--memdef-param-name-color); + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype, .tparams .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir, .tparams .paramdir { + font-family: var(--font-family-monospace); + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: var(--label-background-color); + border-top:1px solid var(--label-left-top-border-color); + border-left:1px solid var(--label-left-top-border-color); + border-right:1px solid var(--label-right-bottom-border-color); + border-bottom:1px solid var(--label-right-bottom-border-color); + text-shadow: none; + color: var(--label-foreground-color); + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view inside a (index) page */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid var(--directory-separator-color); + border-bottom: 1px solid var(--directory-separator-color); + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; + padding-top: 3px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.odd { + padding-left: 6px; + background-color: var(--index-odd-item-bg-color); +} + +.directory tr.even { + padding-left: 6px; + background-color: var(--index-even-item-bg-color); +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: var(--page-link-color); +} + +.arrow { + color: var(--nav-arrow-color); + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + font-size: 80%; + display: inline-block; + width: 16px; + height: 22px; +} + +.icon { + font-family: var(--font-family-icon); + line-height: normal; + font-weight: bold; + font-size: 12px; + height: 14px; + width: 16px; + display: inline-block; + background-color: var(--icon-background-color); + color: var(--icon-foreground-color); + text-align: center; + border-radius: 4px; + margin-left: 2px; + margin-right: 2px; +} + +.icona { + width: 24px; + height: 22px; + display: inline-block; +} + +.iconfopen { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:var(--icon-folder-open-image); + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.iconfclosed { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:var(--icon-folder-closed-image); + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.icondoc { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:var(--icon-doc-image); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +/* @end */ + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: var(--footer-foreground-color); +} + +table.doxtable caption { + caption-side: top; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid var(--table-cell-border-color); + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: var(--table-header-background-color); + color: var(--table-header-foreground-color); + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + margin-bottom: 10px; + border: 1px solid var(--memdef-border-color); + border-spacing: 0px; + border-radius: 4px; + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid var(--memdef-border-color); + border-bottom: 1px solid var(--memdef-border-color); + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid var(--memdef-border-color); +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 0px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image: var(--memdef-title-gradient-image); + background-repeat:repeat-x; + background-color: var(--memdef-title-background-color); + font-size: 90%; + color: var(--memdef-proto-text-color); + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + font-weight: 400; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid var(--memdef-border-color); +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: var(--nav-gradient-image); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image: var(--nav-gradient-image); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:var(--nav-text-normal-color); + border:solid 1px var(--nav-breadcrumb-border-color); + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:var(--nav-breadcrumb-image); + background-repeat:no-repeat; + background-position:right; + color: var(--nav-foreground-color); +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: var(--nav-text-normal-color); + font-family: var(--font-family-nav); + text-shadow: var(--nav-text-normal-shadow); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color: var(--nav-text-hover-color); + text-shadow: var(--nav-text-hover-shadow); +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color: var(--footer-foreground-color); + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +table.classindex +{ + margin: 10px; + white-space: nowrap; + margin-left: 3%; + margin-right: 3%; + width: 94%; + border: 0; + border-spacing: 0; + padding: 0; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image: var(--header-gradient-image); + background-repeat:repeat-x; + background-color: var(--header-background-color); + margin: 0px; + border-bottom: 1px solid var(--header-separator-color); +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +.PageDocRTL-title div.headertitle { + text-align: right; + direction: rtl; +} + +dl { + padding: 0 0 0 0; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */ +dl.section { + margin-left: 0px; + padding-left: 0px; +} + +dl.note { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #00D000; +} + +dl.deprecated { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #505050; +} + +dl.todo { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #00C0E0; +} + +dl.test { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #3030E0; +} + +dl.bug { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectrow +{ + height: 56px; +} + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectalign +{ + vertical-align: middle; + padding-left: 0.5em; +} + +#projectname +{ + font-size: 200%; + font-family: var(--font-family-title); + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font-size: 90%; + font-family: var(--font-family-title); + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font-size: 50%; + font-family: 50% var(--font-family-title); + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid var(--title-separator-color); + background-color: var(--title-background-color); +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.plantumlgraph +{ + text-align: center; +} + +.diagraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:var(--citation-label-color); + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; + text-align:right; + width:52px; +} + +dl.citelist dd { + margin:2px 0 2px 72px; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: var(--toc-background-color); + border: 1px solid var(--toc-border-color); + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 8px 10px 10px; + width: 200px; +} + +div.toc li { + background: var(--toc-down-arrow-image) no-repeat scroll 0 5px transparent; + font: 10px/1.2 var(--font-family-toc); + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 var(--font-family-toc); + color: var(--toc-header-color); + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 15px; +} + +div.toc li.level4 { + margin-left: 15px; +} + +span.emoji { + /* font family used at the site: https://unicode.org/emoji/charts/full-emoji-list.html + * font-family: "Noto Color Emoji", "Apple Color Emoji", "Segoe UI Emoji", Times, Symbola, Aegyptus, Code2000, Code2001, Code2002, Musica, serif, LastResort; + */ +} + +span.obfuscator { + display: none; +} + +.inherit_header { + font-weight: bold; + color: var(--inherit-header-color); + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +/* tooltip related style info */ + +.ttc { + position: absolute; + display: none; +} + +#powerTip { + cursor: default; + /*white-space: nowrap;*/ + color: var(--tooltip-foreground-color); + background-color: var(--tooltip-background-color); + border: 1px solid var(--tooltip-border-color); + border-radius: 4px 4px 4px 4px; + box-shadow: var(--tooltip-shadow); + display: none; + font-size: smaller; + max-width: 80%; + opacity: 0.9; + padding: 1ex 1em 1em; + position: absolute; + z-index: 2147483647; +} + +#powerTip div.ttdoc { + color: var(--tooltip-doc-color); + font-style: italic; +} + +#powerTip div.ttname a { + font-weight: bold; +} + +#powerTip a { + color: var(--tooltip-link-color); +} + +#powerTip div.ttname { + font-weight: bold; +} + +#powerTip div.ttdeci { + color: var(--tooltip-declaration-color); +} + +#powerTip div { + margin: 0px; + padding: 0px; + font-size: 12px; + font-family: var(--font-family-tooltip); + line-height: 16px; +} + +#powerTip:before, #powerTip:after { + content: ""; + position: absolute; + margin: 0px; +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.s:after, #powerTip.s:before, +#powerTip.w:after, #powerTip.w:before, +#powerTip.e:after, #powerTip.e:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.nw:after, #powerTip.nw:before, +#powerTip.sw:after, #powerTip.sw:before { + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; +} + +#powerTip.n:after, #powerTip.s:after, +#powerTip.w:after, #powerTip.e:after, +#powerTip.nw:after, #powerTip.ne:after, +#powerTip.sw:after, #powerTip.se:after { + border-color: rgba(255, 255, 255, 0); +} + +#powerTip.n:before, #powerTip.s:before, +#powerTip.w:before, #powerTip.e:before, +#powerTip.nw:before, #powerTip.ne:before, +#powerTip.sw:before, #powerTip.se:before { + border-color: rgba(128, 128, 128, 0); +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.nw:after, #powerTip.nw:before { + top: 100%; +} + +#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { + border-top-color: var(--tooltip-background-color); + border-width: 10px; + margin: 0px -10px; +} +#powerTip.n:before, #powerTip.ne:before, #powerTip.nw:before { + border-top-color: var(--tooltip-border-color); + border-width: 11px; + margin: 0px -11px; +} +#powerTip.n:after, #powerTip.n:before { + left: 50%; +} + +#powerTip.nw:after, #powerTip.nw:before { + right: 14px; +} + +#powerTip.ne:after, #powerTip.ne:before { + left: 14px; +} + +#powerTip.s:after, #powerTip.s:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.sw:after, #powerTip.sw:before { + bottom: 100%; +} + +#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { + border-bottom-color: var(--tooltip-background-color); + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { + border-bottom-color: var(--tooltip-border-color); + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.s:after, #powerTip.s:before { + left: 50%; +} + +#powerTip.sw:after, #powerTip.sw:before { + right: 14px; +} + +#powerTip.se:after, #powerTip.se:before { + left: 14px; +} + +#powerTip.e:after, #powerTip.e:before { + left: 100%; +} +#powerTip.e:after { + border-left-color: var(--tooltip-border-color); + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.e:before { + border-left-color: var(--tooltip-border-color); + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +#powerTip.w:after, #powerTip.w:before { + right: 100%; +} +#powerTip.w:after { + border-right-color: var(--tooltip-border-color); + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.w:before { + border-right-color: var(--tooltip-border-color); + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + +/* @group Markdown */ + +table.markdownTable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.markdownTable td, table.markdownTable th { + border: 1px solid var(--table-cell-border-color); + padding: 3px 7px 2px; +} + +table.markdownTable tr { +} + +th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone { + background-color: var(--table-header-background-color); + color: var(--table-header-foreground-color); + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +th.markdownTableHeadLeft, td.markdownTableBodyLeft { + text-align: left +} + +th.markdownTableHeadRight, td.markdownTableBodyRight { + text-align: right +} + +th.markdownTableHeadCenter, td.markdownTableBodyCenter { + text-align: center +} + +tt, code, kbd, samp +{ + display: inline-block; +} +/* @end */ + +u { + text-decoration: underline; +} + +details>summary { + list-style-type: none; +} + +details > summary::-webkit-details-marker { + display: none; +} + +details>summary::before { + content: "\25ba"; + padding-right:4px; + font-size: 80%; +} + +details[open]>summary::before { + content: "\25bc"; + padding-right:4px; + font-size: 80%; +} + diff --git a/doxygen.svg b/doxygen.svg new file mode 100644 index 000000000..79a763540 --- /dev/null +++ b/doxygen.svg @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dynsections.js b/dynsections.js new file mode 100644 index 000000000..b73c82889 --- /dev/null +++ b/dynsections.js @@ -0,0 +1,192 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); + $('table.directory tr'). + removeClass('odd').filter(':visible:odd').addClass('odd'); +} + +function toggleLevel(level) +{ + $('table.directory tr').each(function() { + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l'); + // add vertical lines to other rows + $('span[class=lineno]').not(':eq(0)').append(''); + // add toggle controls to lines with fold divs + $('div[class=foldopen]').each(function() { + // extract specific id to use + var id = $(this).attr('id').replace('foldopen',''); + // extract start and end foldable fragment attributes + var start = $(this).attr('data-start'); + var end = $(this).attr('data-end'); + // replace normal fold span with controls for the first line of a foldable fragment + $(this).find('span[class=fold]:first').replaceWith(''); + // append div for folded (closed) representation + $(this).after(''); + // extract the first line from the "open" section to represent closed content + var line = $(this).children().first().clone(); + // remove any glow that might still be active on the original line + $(line).removeClass('glow'); + if (start) { + // if line already ends with a start marker (e.g. trailing {), remove it + $(line).html($(line).html().replace(new RegExp('\\s*'+start+'\\s*$','g'),'')); + } + // replace minus with plus symbol + $(line).find('span[class=fold]').css('background-image',plusImg[relPath]); + // append ellipsis + $(line).append(' '+start+''+end); + // insert constructed line into closed div + $('#foldclosed'+id).html(line); + }); +} + +/* @license-end */ diff --git a/files.html b/files.html new file mode 100644 index 000000000..889642682 --- /dev/null +++ b/files.html @@ -0,0 +1,164 @@ + + + + + + + +HighFive: File List + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
File List
+
+ +
+ + + + diff --git a/files_dup.js b/files_dup.js new file mode 100644 index 000000000..68b1e33e5 --- /dev/null +++ b/files_dup.js @@ -0,0 +1,5 @@ +var files_dup = +[ + [ "doc", "dir_e68e8157741866f444e17edd764ebbae.html", null ], + [ "highfive", "dir_59f157d0a2e2d139c92ad8277d62d3e2.html", "dir_59f157d0a2e2d139c92ad8277d62d3e2" ] +]; \ No newline at end of file diff --git a/folderclosed.svg b/folderclosed.svg new file mode 100644 index 000000000..b04bed2e7 --- /dev/null +++ b/folderclosed.svg @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/folderclosedd.svg b/folderclosedd.svg new file mode 100644 index 000000000..52f0166a2 --- /dev/null +++ b/folderclosedd.svg @@ -0,0 +1,11 @@ + + + + + + + + + + diff --git a/folderopen.svg b/folderopen.svg new file mode 100644 index 000000000..f6896dd25 --- /dev/null +++ b/folderopen.svg @@ -0,0 +1,17 @@ + + + + + + + + + + diff --git a/folderopend.svg b/folderopend.svg new file mode 100644 index 000000000..2d1f06e7b --- /dev/null +++ b/folderopend.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + diff --git a/functions.html b/functions.html new file mode 100644 index 000000000..5286d7206 --- /dev/null +++ b/functions.html @@ -0,0 +1,115 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- _ -

+
+
+ + + + diff --git a/functions_a.html b/functions_a.html new file mode 100644 index 000000000..b14191df1 --- /dev/null +++ b/functions_a.html @@ -0,0 +1,116 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+ + + + diff --git a/functions_b.html b/functions_b.html new file mode 100644 index 000000000..b1f04a073 --- /dev/null +++ b/functions_b.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- b -

+
+
+ + + + diff --git a/functions_c.html b/functions_c.html new file mode 100644 index 000000000..e1525f6d0 --- /dev/null +++ b/functions_c.html @@ -0,0 +1,129 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- c -

+
+
+ + + + diff --git a/functions_d.html b/functions_d.html new file mode 100644 index 000000000..661959447 --- /dev/null +++ b/functions_d.html @@ -0,0 +1,123 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- d -

+
+
+ + + + diff --git a/functions_dup.js b/functions_dup.js new file mode 100644 index 000000000..56c9830d4 --- /dev/null +++ b/functions_dup.js @@ -0,0 +1,25 @@ +var functions_dup = +[ + [ "_", "functions.html", null ], + [ "a", "functions_a.html", null ], + [ "b", "functions_b.html", null ], + [ "c", "functions_c.html", null ], + [ "d", "functions_d.html", null ], + [ "e", "functions_e.html", null ], + [ "f", "functions_f.html", null ], + [ "g", "functions_g.html", null ], + [ "h", "functions_h.html", null ], + [ "i", "functions_i.html", null ], + [ "l", "functions_l.html", null ], + [ "m", "functions_m.html", null ], + [ "n", "functions_n.html", null ], + [ "o", "functions_o.html", null ], + [ "p", "functions_p.html", null ], + [ "r", "functions_r.html", null ], + [ "s", "functions_s.html", null ], + [ "t", "functions_t.html", null ], + [ "u", "functions_u.html", null ], + [ "v", "functions_v.html", null ], + [ "w", "functions_w.html", null ], + [ "~", "functions_~.html", null ] +]; \ No newline at end of file diff --git a/functions_e.html b/functions_e.html new file mode 100644 index 000000000..fc053ab1e --- /dev/null +++ b/functions_e.html @@ -0,0 +1,115 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- e -

+
+
+ + + + diff --git a/functions_enum.html b/functions_enum.html new file mode 100644 index 000000000..7a6b7aa40 --- /dev/null +++ b/functions_enum.html @@ -0,0 +1,107 @@ + + + + + + + +HighFive: Class Members - Enumerations + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all enums with links to the classes they belong to:
+
+
+ + + + diff --git a/functions_eval.html b/functions_eval.html new file mode 100644 index 000000000..7aa5507bc --- /dev/null +++ b/functions_eval.html @@ -0,0 +1,117 @@ + + + + + + + +HighFive: Class Members - Enumerator + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all enum values with links to the classes they belong to:
+
+
+ + + + diff --git a/functions_f.html b/functions_f.html new file mode 100644 index 000000000..5bfbc617a --- /dev/null +++ b/functions_f.html @@ -0,0 +1,118 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- f -

+
+
+ + + + diff --git a/functions_func.html b/functions_func.html new file mode 100644 index 000000000..09b65956b --- /dev/null +++ b/functions_func.html @@ -0,0 +1,108 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- _ -

+
+
+ + + + diff --git a/functions_func.js b/functions_func.js new file mode 100644 index 000000000..84693b417 --- /dev/null +++ b/functions_func.js @@ -0,0 +1,25 @@ +var functions_func = +[ + [ "_", "functions_func.html", null ], + [ "a", "functions_func_a.html", null ], + [ "b", "functions_func_b.html", null ], + [ "c", "functions_func_c.html", null ], + [ "d", "functions_func_d.html", null ], + [ "e", "functions_func_e.html", null ], + [ "f", "functions_func_f.html", null ], + [ "g", "functions_func_g.html", null ], + [ "h", "functions_func_h.html", null ], + [ "i", "functions_func_i.html", null ], + [ "l", "functions_func_l.html", null ], + [ "m", "functions_func_m.html", null ], + [ "n", "functions_func_n.html", null ], + [ "o", "functions_func_o.html", null ], + [ "p", "functions_func_p.html", null ], + [ "r", "functions_func_r.html", null ], + [ "s", "functions_func_s.html", null ], + [ "t", "functions_func_t.html", null ], + [ "u", "functions_func_u.html", null ], + [ "v", "functions_func_v.html", null ], + [ "w", "functions_func_w.html", null ], + [ "~", "functions_func_~.html", null ] +]; \ No newline at end of file diff --git a/functions_func_a.html b/functions_func_a.html new file mode 100644 index 000000000..b07294f3c --- /dev/null +++ b/functions_func_a.html @@ -0,0 +1,116 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- a -

+
+
+ + + + diff --git a/functions_func_b.html b/functions_func_b.html new file mode 100644 index 000000000..97e525dba --- /dev/null +++ b/functions_func_b.html @@ -0,0 +1,109 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- b -

+
+
+ + + + diff --git a/functions_func_c.html b/functions_func_c.html new file mode 100644 index 000000000..a9b7c983b --- /dev/null +++ b/functions_func_c.html @@ -0,0 +1,124 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- c -

+
+
+ + + + diff --git a/functions_func_d.html b/functions_func_d.html new file mode 100644 index 000000000..c87ac8261 --- /dev/null +++ b/functions_func_d.html @@ -0,0 +1,118 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- d -

+
+
+ + + + diff --git a/functions_func_e.html b/functions_func_e.html new file mode 100644 index 000000000..fecd31b69 --- /dev/null +++ b/functions_func_e.html @@ -0,0 +1,114 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- e -

+
+
+ + + + diff --git a/functions_func_f.html b/functions_func_f.html new file mode 100644 index 000000000..b490ba2f4 --- /dev/null +++ b/functions_func_f.html @@ -0,0 +1,118 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- f -

+
+
+ + + + diff --git a/functions_func_g.html b/functions_func_g.html new file mode 100644 index 000000000..080049ca9 --- /dev/null +++ b/functions_func_g.html @@ -0,0 +1,168 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- g -

+
+
+ + + + diff --git a/functions_func_h.html b/functions_func_h.html new file mode 100644 index 000000000..1ddabdcb6 --- /dev/null +++ b/functions_func_h.html @@ -0,0 +1,109 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- h -

+
+
+ + + + diff --git a/functions_func_i.html b/functions_func_i.html new file mode 100644 index 000000000..ba366b620 --- /dev/null +++ b/functions_func_i.html @@ -0,0 +1,116 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- i -

+
+
+ + + + diff --git a/functions_func_l.html b/functions_func_l.html new file mode 100644 index 000000000..14a1cbfc3 --- /dev/null +++ b/functions_func_l.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- l -

+
+
+ + + + diff --git a/functions_func_m.html b/functions_func_m.html new file mode 100644 index 000000000..672126e99 --- /dev/null +++ b/functions_func_m.html @@ -0,0 +1,117 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- m -

+
+
+ + + + diff --git a/functions_func_n.html b/functions_func_n.html new file mode 100644 index 000000000..27261a2e2 --- /dev/null +++ b/functions_func_n.html @@ -0,0 +1,110 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- n -

+
+
+ + + + diff --git a/functions_func_o.html b/functions_func_o.html new file mode 100644 index 000000000..2969bbcad --- /dev/null +++ b/functions_func_o.html @@ -0,0 +1,120 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- o -

+
+
+ + + + diff --git a/functions_func_p.html b/functions_func_p.html new file mode 100644 index 000000000..08dbff499 --- /dev/null +++ b/functions_func_p.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- p -

+
+
+ + + + diff --git a/functions_func_r.html b/functions_func_r.html new file mode 100644 index 000000000..973c647c3 --- /dev/null +++ b/functions_func_r.html @@ -0,0 +1,116 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- r -

+
+
+ + + + diff --git a/functions_func_s.html b/functions_func_s.html new file mode 100644 index 000000000..5a899ce76 --- /dev/null +++ b/functions_func_s.html @@ -0,0 +1,119 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- s -

+
+
+ + + + diff --git a/functions_func_t.html b/functions_func_t.html new file mode 100644 index 000000000..0dc126975 --- /dev/null +++ b/functions_func_t.html @@ -0,0 +1,108 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- t -

+
+
+ + + + diff --git a/functions_func_u.html b/functions_func_u.html new file mode 100644 index 000000000..eea27b102 --- /dev/null +++ b/functions_func_u.html @@ -0,0 +1,109 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- u -

+
+
+ + + + diff --git a/functions_func_v.html b/functions_func_v.html new file mode 100644 index 000000000..b508730a8 --- /dev/null +++ b/functions_func_v.html @@ -0,0 +1,108 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- v -

+
+
+ + + + diff --git a/functions_func_w.html b/functions_func_w.html new file mode 100644 index 000000000..c293be7f9 --- /dev/null +++ b/functions_func_w.html @@ -0,0 +1,111 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- w -

+
+
+ + + + diff --git a/functions_func_~.html b/functions_func_~.html new file mode 100644 index 000000000..f591c6737 --- /dev/null +++ b/functions_func_~.html @@ -0,0 +1,110 @@ + + + + + + + +HighFive: Class Members - Functions + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all functions with links to the classes they belong to:
+ +

- ~ -

+
+
+ + + + diff --git a/functions_g.html b/functions_g.html new file mode 100644 index 000000000..77561d088 --- /dev/null +++ b/functions_g.html @@ -0,0 +1,168 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- g -

+
+
+ + + + diff --git a/functions_h.html b/functions_h.html new file mode 100644 index 000000000..00016d92d --- /dev/null +++ b/functions_h.html @@ -0,0 +1,110 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- h -

+
+
+ + + + diff --git a/functions_i.html b/functions_i.html new file mode 100644 index 000000000..6bde4da6d --- /dev/null +++ b/functions_i.html @@ -0,0 +1,118 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- i -

+
+
+ + + + diff --git a/functions_l.html b/functions_l.html new file mode 100644 index 000000000..7f1d14cd0 --- /dev/null +++ b/functions_l.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- l -

+
+
+ + + + diff --git a/functions_m.html b/functions_m.html new file mode 100644 index 000000000..bd7059247 --- /dev/null +++ b/functions_m.html @@ -0,0 +1,117 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- m -

+
+
+ + + + diff --git a/functions_n.html b/functions_n.html new file mode 100644 index 000000000..f09ee4eac --- /dev/null +++ b/functions_n.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- n -

+
+
+ + + + diff --git a/functions_o.html b/functions_o.html new file mode 100644 index 000000000..74a1128df --- /dev/null +++ b/functions_o.html @@ -0,0 +1,123 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- o -

+
+
+ + + + diff --git a/functions_p.html b/functions_p.html new file mode 100644 index 000000000..9ce8293a6 --- /dev/null +++ b/functions_p.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- p -

+
+
+ + + + diff --git a/functions_r.html b/functions_r.html new file mode 100644 index 000000000..25990e673 --- /dev/null +++ b/functions_r.html @@ -0,0 +1,120 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- r -

+
+
+ + + + diff --git a/functions_rela.html b/functions_rela.html new file mode 100644 index 000000000..a91e4bb16 --- /dev/null +++ b/functions_rela.html @@ -0,0 +1,116 @@ + + + + + + + +HighFive: Class Members - Related Symbols + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all related symbols with links to the classes they belong to:
+
+
+ + + + diff --git a/functions_s.html b/functions_s.html new file mode 100644 index 000000000..574029d32 --- /dev/null +++ b/functions_s.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- s -

+
+
+ + + + diff --git a/functions_t.html b/functions_t.html new file mode 100644 index 000000000..c4b184a98 --- /dev/null +++ b/functions_t.html @@ -0,0 +1,111 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- t -

+
+
+ + + + diff --git a/functions_type.html b/functions_type.html new file mode 100644 index 000000000..51955f017 --- /dev/null +++ b/functions_type.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Class Members - Typedefs + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all typedefs with links to the classes they belong to:
+
+
+ + + + diff --git a/functions_u.html b/functions_u.html new file mode 100644 index 000000000..49ce6ad20 --- /dev/null +++ b/functions_u.html @@ -0,0 +1,110 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- u -

+
+
+ + + + diff --git a/functions_v.html b/functions_v.html new file mode 100644 index 000000000..e5519f133 --- /dev/null +++ b/functions_v.html @@ -0,0 +1,110 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- v -

+
+
+ + + + diff --git a/functions_vars.html b/functions_vars.html new file mode 100644 index 000000000..8d60cf79b --- /dev/null +++ b/functions_vars.html @@ -0,0 +1,121 @@ + + + + + + + +HighFive: Class Members - Variables + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ + +
+ + + + diff --git a/functions_w.html b/functions_w.html new file mode 100644 index 000000000..4c136b5e2 --- /dev/null +++ b/functions_w.html @@ -0,0 +1,111 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- w -

+
+
+ + + + diff --git a/functions_~.html b/functions_~.html new file mode 100644 index 000000000..f31ec39ff --- /dev/null +++ b/functions_~.html @@ -0,0 +1,110 @@ + + + + + + + +HighFive: Class Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- ~ -

+
+
+ + + + diff --git a/globals.html b/globals.html new file mode 100644 index 000000000..a5e48894c --- /dev/null +++ b/globals.html @@ -0,0 +1,126 @@ + + + + + + + +HighFive: File Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all file members with links to the files they belong to:
+
+
+ + + + diff --git a/globals_defs.html b/globals_defs.html new file mode 100644 index 000000000..128fa7e05 --- /dev/null +++ b/globals_defs.html @@ -0,0 +1,126 @@ + + + + + + + +HighFive: File Members + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Here is a list of all macros with links to the files they belong to:
+
+
+ + + + diff --git a/graph_legend.html b/graph_legend.html new file mode 100644 index 000000000..7c89dba3a --- /dev/null +++ b/graph_legend.html @@ -0,0 +1,166 @@ + + + + + + + +HighFive: Graph Legend + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Graph Legend
+
+
+

This page explains how to interpret the graphs that are generated by doxygen.

+

Consider the following example:

/*! Invisible class because of truncation */
+
class Invisible { };
+
+
/*! Truncated class, inheritance relation is hidden */
+
class Truncated : public Invisible { };
+
+
/* Class not documented with doxygen comments */
+
class Undocumented { };
+
+
/*! Class that is inherited using public inheritance */
+
class PublicBase : public Truncated { };
+
+
/*! A template class */
+
template<class T> class Templ { };
+
+
/*! Class that is inherited using protected inheritance */
+
class ProtectedBase { };
+
+
/*! Class that is inherited using private inheritance */
+
class PrivateBase { };
+
+
/*! Class that is used by the Inherited class */
+
class Used { };
+
+
/*! Super class that inherits a number of other classes */
+
class Inherited : public PublicBase,
+
protected ProtectedBase,
+
private PrivateBase,
+
public Undocumented,
+
public Templ<int>
+
{
+
private:
+
Used *m_usedClass;
+
};
+

This will result in the following graph:

+

The boxes in the above graph have the following meaning:

+
    +
  • +A filled gray box represents the struct or class for which the graph is generated.
  • +
  • +A box with a black border denotes a documented struct or class.
  • +
  • +A box with a gray border denotes an undocumented struct or class.
  • +
  • +A box with a red border denotes a documented struct or class forwhich not all inheritance/containment relations are shown. A graph is truncated if it does not fit within the specified boundaries.
  • +
+

The arrows have the following meaning:

+
    +
  • +A blue arrow is used to visualize a public inheritance relation between two classes.
  • +
  • +A dark green arrow is used for protected inheritance.
  • +
  • +A dark red arrow is used for private inheritance.
  • +
  • +A purple dashed arrow is used if a class is contained or used by another class. The arrow is labelled with the variable(s) through which the pointed class or struct is accessible.
  • +
  • +A yellow dashed arrow denotes a relation between a template instance and the template class it was instantiated from. The arrow is labelled with the template parameters of the instance.
  • +
+
+
+ + + + diff --git a/graph_legend.md5 b/graph_legend.md5 new file mode 100644 index 000000000..da515da9d --- /dev/null +++ b/graph_legend.md5 @@ -0,0 +1 @@ +f74606a252eb303675caf37987d0b7af \ No newline at end of file diff --git a/graph_legend.png b/graph_legend.png new file mode 100644 index 000000000..c49cbe884 Binary files /dev/null and b/graph_legend.png differ diff --git a/group___property_lists.html b/group___property_lists.html new file mode 100644 index 000000000..9fdddee8d --- /dev/null +++ b/group___property_lists.html @@ -0,0 +1,520 @@ + + + + + + + +HighFive: Property Lists + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+ +
Property Lists
+
+
+

Detailed Description

+

HDF5 is configured through what they call property lists. In HDF5 the process has four steps:

+
    +
  1. Create a property list. As users we now have an hid_t identifying the property list.
  2. +
  3. Set properties as desired.
  4. +
  5. Pass the HID to the HDF5 function to be configured.
  6. +
  7. Free the property list.
  8. +
+

Note that the mental picture is that one creates a settings object, and then passes those settings to a function such as H5Dwrite. In and of themselves the settings don't change the behaviour of HDF5. Rather they need to be used to take affect.

+

The second aspect is that property lists represent any number of related settings, e.g. there's property lists anything related to creating files and another for accessing files, same for creating and accessing datasets, etc. Settings that affect creating files, must be passed a file creation property list, while settings that affect file access require a file access property list.

+

In HighFive the PropertyList works similar in that it's a object representing the settings, i.e. internally it's just the property lists HID. Just like in HDF5 one adds the settings to the settings object; and then passes the settings object to the respective method. Example:

+
// Create an object which contains the setting to
+// open files with MPI-IO.
+auto fapl = FileAccessProps();
+fapl.add(MPIOFileAccess(MPI_COMM_WORLD, MPI_INFO_NULL);
+
+// To open a specific file with MPI-IO, we do:
+auto file = File("foo.h5", File::ReadOnly, fapl);
+

Note that the MPIOFileAccess object by itself doesn't affect the FileAccessProps. Rather it needs to be explicitly added to the fapl (the group of file access related settings), and then the fapl needs to be passed to the constructor of File for the settings to take affect.

+

This is important to understand when reading properties. Example:

// Obtain the file access property list:
+auto fapl = file.getAccessPropertyList()
+
+// Extracts a copy of the collective MPI-IO metadata settings from
+// the group of file access related setting, i.e. the `fapl`:
+auto mpio_metadata = MPIOCollectiveMetadata(fapl);
+
+if(mpio_metadata.isCollectiveRead()) {
+  // something specific if meta data is read collectively.
+}
+
+// Careful, this only affects the `mpio_metadata` object, but not the
+//  `fapl`, and also not whether `file` uses collective MPI-IO for
+// metadata.
+mpio_metadata = MPIOCollectiveMetadata(false, false);
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  HighFive::PropertyListBase
 Base Class for Property lists, providing global default. More...
 
class  HighFive::PropertyList< T >
 HDF5 property Lists. More...
 
class  HighFive::RawPropertyList< T >
 
class  HighFive::MPIOFileAccess
 Configure MPI access for the file. More...
 
class  HighFive::MPIOCollectiveMetadata
 Use collective MPI-IO for metadata read and write. More...
 
class  HighFive::MPIOCollectiveMetadataRead
 Use collective MPI-IO for metadata read? More...
 
class  HighFive::MPIOCollectiveMetadataWrite
 Use collective MPI-IO for metadata write? More...
 
class  HighFive::FileVersionBounds
 Configure the version bounds for the file. More...
 
class  HighFive::MetadataBlockSize
 Configure the metadata block size to use writing to files. More...
 
class  HighFive::EstimatedLinkInfo
 Set hints as to how many links to expect and their average length. More...
 
class  HighFive::Chunking
 
class  HighFive::Deflate
 
class  HighFive::Szip
 
class  HighFive::Shuffle
 
class  HighFive::AllocationTime
 When are datasets allocated? More...
 
class  HighFive::Caching
 
class  HighFive::CreateIntermediateGroup
 
class  HighFive::UseCollectiveIO
 
class  HighFive::MpioNoCollectiveCause
 The cause for non-collective I/O. More...
 
struct  HighFive::CreationOrder
 
class  HighFive::LinkCreationOrder
 Track and index creation order time. More...
 
class  HighFive::AttributePhaseChange
 Set threshold for attribute storage. More...
 
interface  PropertyInterface
 HDF5 file property object. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

using HighFive::ObjectCreateProps = PropertyList< PropertyType::OBJECT_CREATE >
 
using HighFive::FileCreateProps = PropertyList< PropertyType::FILE_CREATE >
 
using HighFive::FileAccessProps = PropertyList< PropertyType::FILE_ACCESS >
 
using HighFive::DataSetCreateProps = PropertyList< PropertyType::DATASET_CREATE >
 
using HighFive::DataSetAccessProps = PropertyList< PropertyType::DATASET_ACCESS >
 
using HighFive::DataTransferProps = PropertyList< PropertyType::DATASET_XFER >
 
using HighFive::GroupCreateProps = PropertyList< PropertyType::GROUP_CREATE >
 
using HighFive::GroupAccessProps = PropertyList< PropertyType::GROUP_ACCESS >
 
using HighFive::DataTypeCreateProps = PropertyList< PropertyType::DATATYPE_CREATE >
 
using HighFive::DataTypeAccessProps = PropertyList< PropertyType::DATATYPE_ACCESS >
 
using HighFive::StringCreateProps = PropertyList< PropertyType::STRING_CREATE >
 
using HighFive::AttributeCreateProps = PropertyList< PropertyType::ATTRIBUTE_CREATE >
 
using HighFive::ObjectCopyProps = PropertyList< PropertyType::OBJECT_COPY >
 
using HighFive::LinkCreateProps = PropertyList< PropertyType::LINK_CREATE >
 
using HighFive::LinkAccessProps = PropertyList< PropertyType::LINK_ACCESS >
 
+ + + + +

+Enumerations

enum class  HighFive::PropertyType : int {
+  HighFive::PropertyType::OBJECT_CREATE +, HighFive::PropertyType::FILE_CREATE +, HighFive::PropertyType::FILE_ACCESS +, HighFive::PropertyType::DATASET_CREATE +,
+  HighFive::PropertyType::DATASET_ACCESS +, HighFive::PropertyType::DATASET_XFER +, HighFive::PropertyType::GROUP_CREATE +, HighFive::PropertyType::GROUP_ACCESS +,
+  HighFive::PropertyType::DATATYPE_CREATE +, HighFive::PropertyType::DATATYPE_ACCESS +, HighFive::PropertyType::STRING_CREATE +, HighFive::PropertyType::ATTRIBUTE_CREATE +,
+  HighFive::PropertyType::OBJECT_COPY +, HighFive::PropertyType::LINK_CREATE +, HighFive::PropertyType::LINK_ACCESS +
+ }
 Types of property lists. More...
 
+

Typedef Documentation

+ +

◆ AttributeCreateProps

+ + + +

◆ DataSetAccessProps

+ + + +

◆ DataSetCreateProps

+ + + +

◆ DataTransferProps

+ + + +

◆ DataTypeAccessProps

+ + + +

◆ DataTypeCreateProps

+ + + +

◆ FileAccessProps

+ + + +

◆ FileCreateProps

+ + + +

◆ GroupAccessProps

+ + + +

◆ GroupCreateProps

+ + + +

◆ LinkAccessProps

+ + + +

◆ LinkCreateProps

+ + + +

◆ ObjectCopyProps

+ + + +

◆ ObjectCreateProps

+ + + +

◆ StringCreateProps

+ + +

Enumeration Type Documentation

+ +

◆ PropertyType

+ +
+
+ + + + + +
+ + + + +
enum class HighFive::PropertyType : int
+
+strong
+
+ +

Types of property lists.

+ + + + + + + + + + + + + + + + +
Enumerator
OBJECT_CREATE 
FILE_CREATE 
FILE_ACCESS 
DATASET_CREATE 
DATASET_ACCESS 
DATASET_XFER 
GROUP_CREATE 
GROUP_ACCESS 
DATATYPE_CREATE 
DATATYPE_ACCESS 
STRING_CREATE 
ATTRIBUTE_CREATE 
OBJECT_COPY 
LINK_CREATE 
LINK_ACCESS 
+ +
+
+
+
+ + + + diff --git a/hierarchy.html b/hierarchy.html new file mode 100644 index 000000000..b3a1abc9c --- /dev/null +++ b/hierarchy.html @@ -0,0 +1,201 @@ + + + + + + + +HighFive: Class Hierarchy + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Class Hierarchy
+
+
+
+

Go to the graphical class hierarchy

+This inheritance list is sorted roughly, but not completely, alphabetically:
+
[detail level 1234]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 CHighFive::AnnotateTraits< Derivate >
 CHighFive::AnnotateTraits< DataSet >
 CHighFive::DataSetClass representing a dataset
 CHighFive::AnnotateTraits< File >
 CHighFive::FileFile class
 CHighFive::AnnotateTraits< Group >
 CHighFive::GroupRepresents an hdf5 group
 CH5Easy::CompressionSignal to set compression level for written DataSets
 CHighFive::CreationOrder
 CH5Easy::DumpOptionsDefine options for dumping data
 CHighFive::ElementSet
 Cstd::exception
 CHighFive::ExceptionBasic HighFive Exception class
 CHighFive::AttributeExceptionException specific to HighFive Attribute interface
 CHighFive::DataSetExceptionException specific to HighFive DataSet interface
 CHighFive::DataSpaceExceptionException specific to HighFive DataSpace interface
 CHighFive::DataTypeExceptionException specific to HighFive DataType interface
 CHighFive::FileExceptionException specific to HighFive File interface
 CHighFive::GroupExceptionException specific to HighFive Group interface
 CHighFive::ObjectExceptionException specific to HighFive Object interface
 CHighFive::PropertyExceptionException specific to HighFive Property interface
 CHighFive::ReferenceExceptionException specific to HighFive Reference interface
 CHighFive::FileVersionBoundsConfigure the version bounds for the file
 CHighFive::FixedLenStringArray< N >A structure representing a set of fixed-length strings
 CHighFive::HDF5ErrMapper
 CHighFive::HyperSlab
 CHighFive::LoggerA logger with supporting basic functionality
 CHighFive::CompoundType::member_defUse for defining a sub-type of compound type
 CHighFive::EnumType< T >::member_defUse for defining a member of enum type
 CHighFive::MetadataBlockSizeConfigure the metadata block size to use writing to files
 CHighFive::MPIOCollectiveMetadataUse collective MPI-IO for metadata read and write
 CHighFive::MPIOCollectiveMetadataReadUse collective MPI-IO for metadata read?
 CHighFive::MPIOCollectiveMetadataWriteUse collective MPI-IO for metadata write?
 CHighFive::MPIOFileAccessConfigure MPI access for the file
 CHighFive::NodeTraits< Derivate >NodeTraits: Base class for Group and File
 CHighFive::NodeTraits< File >
 CHighFive::FileFile class
 CHighFive::NodeTraits< Group >
 CHighFive::GroupRepresents an hdf5 group
 CHighFive::Object
 CHighFive::AttributeClass representing an Attribute of a DataSet or Group
 CHighFive::DataSetClass representing a dataset
 CHighFive::DataSpaceClass representing the space (dimensions) of a DataSet
 CHighFive::DataTypeHDF5 Data Type
 CHighFive::AtomicType< T >Create an HDF5 DataType from a C++ type
 CHighFive::AtomicType< FixedLenStringArray< StrLen > >
 CHighFive::AtomicType< char[StrLen]>
 CHighFive::AtomicType< std::complex< T > >
 CHighFive::CompoundTypeCreate a compound HDF5 datatype
 CHighFive::EnumType< T >Create a enum HDF5 datatype
 CHighFive::StringType
 CHighFive::FixedLengthStringType
 CHighFive::VariableLengthStringType
 CHighFive::FileFile class
 CHighFive::GroupRepresents an hdf5 group
 CHighFive::PropertyListBaseBase Class for Property lists, providing global default
 CHighFive::PropertyList< T >HDF5 property Lists
 CHighFive::FileDriverFile driver base concept
 CHighFive::MPIOFileDriverMPIIO Driver for Parallel HDF5
 CHighFive::RawPropertyList< T >
 CHighFive::ObjectInfoA class for accessing hdf5 objects info
 CHighFive::PathTraits< Derivate >
 CHighFive::PathTraits< Attribute >
 CHighFive::AttributeClass representing an Attribute of a DataSet or Group
 CHighFive::PathTraits< DataSet >
 CHighFive::DataSetClass representing a dataset
 CHighFive::PathTraits< Group >
 CHighFive::GroupRepresents an hdf5 group
 CPropertyInterfaceHDF5 file property object
 CHighFive::AllocationTimeWhen are datasets allocated?
 CHighFive::AttributePhaseChangeSet threshold for attribute storage
 CHighFive::Caching
 CHighFive::Chunking
 CHighFive::CreateIntermediateGroup
 CHighFive::Deflate
 CHighFive::EstimatedLinkInfoSet hints as to how many links to expect and their average length
 CHighFive::LinkCreationOrderTrack and index creation order time
 CHighFive::MpioNoCollectiveCauseThe cause for non-collective I/O
 CHighFive::Shuffle
 CHighFive::Szip
 CHighFive::UseCollectiveIO
 CHighFive::ReferenceAn HDF5 (object) reference type
 CHighFive::RegularHyperSlab
 CHighFive::SilenceHDF5Utility class to disable HDF5 stack printing inside a scope
 CHighFive::SliceTraits< Derivate >
 CHighFive::SliceTraits< DataSet >
 CHighFive::DataSetClass representing a dataset
 CHighFive::SliceTraits< Selection >
 CHighFive::SelectionSelection: represent a view on a slice/part of a dataset
+
+
+
+ + + + diff --git a/hierarchy.js b/hierarchy.js new file mode 100644 index 000000000..0a20a2eb1 --- /dev/null +++ b/hierarchy.js @@ -0,0 +1,110 @@ +var hierarchy = +[ + [ "HighFive::AnnotateTraits< Derivate >", "class_high_five_1_1_annotate_traits.html", null ], + [ "HighFive::AnnotateTraits< DataSet >", "class_high_five_1_1_annotate_traits.html", [ + [ "HighFive::DataSet", "class_high_five_1_1_data_set.html", null ] + ] ], + [ "HighFive::AnnotateTraits< File >", "class_high_five_1_1_annotate_traits.html", [ + [ "HighFive::File", "class_high_five_1_1_file.html", null ] + ] ], + [ "HighFive::AnnotateTraits< Group >", "class_high_five_1_1_annotate_traits.html", [ + [ "HighFive::Group", "class_high_five_1_1_group.html", null ] + ] ], + [ "H5Easy::Compression", "class_h5_easy_1_1_compression.html", null ], + [ "HighFive::CreationOrder", "struct_high_five_1_1_creation_order.html", null ], + [ "H5Easy::DumpOptions", "class_h5_easy_1_1_dump_options.html", null ], + [ "HighFive::ElementSet", "class_high_five_1_1_element_set.html", null ], + [ "std::exception", null, [ + [ "HighFive::Exception", "class_high_five_1_1_exception.html", [ + [ "HighFive::AttributeException", "class_high_five_1_1_attribute_exception.html", null ], + [ "HighFive::DataSetException", "class_high_five_1_1_data_set_exception.html", null ], + [ "HighFive::DataSpaceException", "class_high_five_1_1_data_space_exception.html", null ], + [ "HighFive::DataTypeException", "class_high_five_1_1_data_type_exception.html", null ], + [ "HighFive::FileException", "class_high_five_1_1_file_exception.html", null ], + [ "HighFive::GroupException", "class_high_five_1_1_group_exception.html", null ], + [ "HighFive::ObjectException", "class_high_five_1_1_object_exception.html", null ], + [ "HighFive::PropertyException", "class_high_five_1_1_property_exception.html", null ], + [ "HighFive::ReferenceException", "class_high_five_1_1_reference_exception.html", null ] + ] ] + ] ], + [ "HighFive::FileVersionBounds", "class_high_five_1_1_file_version_bounds.html", null ], + [ "HighFive::FixedLenStringArray< N >", "class_high_five_1_1_fixed_len_string_array.html", null ], + [ "HighFive::HDF5ErrMapper", "struct_high_five_1_1_h_d_f5_err_mapper.html", null ], + [ "HighFive::HyperSlab", "class_high_five_1_1_hyper_slab.html", null ], + [ "HighFive::Logger", "class_high_five_1_1_logger.html", null ], + [ "HighFive::CompoundType::member_def", "struct_high_five_1_1_compound_type_1_1member__def.html", null ], + [ "HighFive::EnumType< T >::member_def", "struct_high_five_1_1_enum_type_1_1member__def.html", null ], + [ "HighFive::MetadataBlockSize", "class_high_five_1_1_metadata_block_size.html", null ], + [ "HighFive::MPIOCollectiveMetadata", "class_high_five_1_1_m_p_i_o_collective_metadata.html", null ], + [ "HighFive::MPIOCollectiveMetadataRead", "class_high_five_1_1_m_p_i_o_collective_metadata_read.html", null ], + [ "HighFive::MPIOCollectiveMetadataWrite", "class_high_five_1_1_m_p_i_o_collective_metadata_write.html", null ], + [ "HighFive::MPIOFileAccess", "class_high_five_1_1_m_p_i_o_file_access.html", null ], + [ "HighFive::NodeTraits< Derivate >", "class_high_five_1_1_node_traits.html", null ], + [ "HighFive::NodeTraits< File >", "class_high_five_1_1_node_traits.html", [ + [ "HighFive::File", "class_high_five_1_1_file.html", null ] + ] ], + [ "HighFive::NodeTraits< Group >", "class_high_five_1_1_node_traits.html", [ + [ "HighFive::Group", "class_high_five_1_1_group.html", null ] + ] ], + [ "HighFive::Object", "class_high_five_1_1_object.html", [ + [ "HighFive::Attribute", "class_high_five_1_1_attribute.html", null ], + [ "HighFive::DataSet", "class_high_five_1_1_data_set.html", null ], + [ "HighFive::DataSpace", "class_high_five_1_1_data_space.html", null ], + [ "HighFive::DataType", "class_high_five_1_1_data_type.html", [ + [ "HighFive::AtomicType< T >", "class_high_five_1_1_atomic_type.html", null ], + [ "HighFive::AtomicType< FixedLenStringArray< StrLen > >", "class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html", null ], + [ "HighFive::AtomicType< char[StrLen]>", "class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html", null ], + [ "HighFive::AtomicType< std::complex< T > >", "class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html", null ], + [ "HighFive::CompoundType", "class_high_five_1_1_compound_type.html", null ], + [ "HighFive::EnumType< T >", "class_high_five_1_1_enum_type.html", null ], + [ "HighFive::StringType", "class_high_five_1_1_string_type.html", [ + [ "HighFive::FixedLengthStringType", "class_high_five_1_1_fixed_length_string_type.html", null ], + [ "HighFive::VariableLengthStringType", "class_high_five_1_1_variable_length_string_type.html", null ] + ] ] + ] ], + [ "HighFive::File", "class_high_five_1_1_file.html", null ], + [ "HighFive::Group", "class_high_five_1_1_group.html", null ], + [ "HighFive::PropertyListBase", "class_high_five_1_1_property_list_base.html", [ + [ "HighFive::PropertyList< T >", "class_high_five_1_1_property_list.html", [ + [ "HighFive::FileDriver", "class_high_five_1_1_file_driver.html", null ], + [ "HighFive::MPIOFileDriver", "class_high_five_1_1_m_p_i_o_file_driver.html", null ], + [ "HighFive::RawPropertyList< T >", "class_high_five_1_1_raw_property_list.html", null ] + ] ] + ] ] + ] ], + [ "HighFive::ObjectInfo", "class_high_five_1_1_object_info.html", null ], + [ "HighFive::PathTraits< Derivate >", "class_high_five_1_1_path_traits.html", null ], + [ "HighFive::PathTraits< Attribute >", "class_high_five_1_1_path_traits.html", [ + [ "HighFive::Attribute", "class_high_five_1_1_attribute.html", null ] + ] ], + [ "HighFive::PathTraits< DataSet >", "class_high_five_1_1_path_traits.html", [ + [ "HighFive::DataSet", "class_high_five_1_1_data_set.html", null ] + ] ], + [ "HighFive::PathTraits< Group >", "class_high_five_1_1_path_traits.html", [ + [ "HighFive::Group", "class_high_five_1_1_group.html", null ] + ] ], + [ "PropertyInterface", "interface_property_interface.html", [ + [ "HighFive::AllocationTime", "class_high_five_1_1_allocation_time.html", null ], + [ "HighFive::AttributePhaseChange", "class_high_five_1_1_attribute_phase_change.html", null ], + [ "HighFive::Caching", "class_high_five_1_1_caching.html", null ], + [ "HighFive::Chunking", "class_high_five_1_1_chunking.html", null ], + [ "HighFive::CreateIntermediateGroup", "class_high_five_1_1_create_intermediate_group.html", null ], + [ "HighFive::Deflate", "class_high_five_1_1_deflate.html", null ], + [ "HighFive::EstimatedLinkInfo", "class_high_five_1_1_estimated_link_info.html", null ], + [ "HighFive::LinkCreationOrder", "class_high_five_1_1_link_creation_order.html", null ], + [ "HighFive::MpioNoCollectiveCause", "class_high_five_1_1_mpio_no_collective_cause.html", null ], + [ "HighFive::Shuffle", "class_high_five_1_1_shuffle.html", null ], + [ "HighFive::Szip", "class_high_five_1_1_szip.html", null ], + [ "HighFive::UseCollectiveIO", "class_high_five_1_1_use_collective_i_o.html", null ] + ] ], + [ "HighFive::Reference", "class_high_five_1_1_reference.html", null ], + [ "HighFive::RegularHyperSlab", "struct_high_five_1_1_regular_hyper_slab.html", null ], + [ "HighFive::SilenceHDF5", "class_high_five_1_1_silence_h_d_f5.html", null ], + [ "HighFive::SliceTraits< Derivate >", "class_high_five_1_1_slice_traits.html", null ], + [ "HighFive::SliceTraits< DataSet >", "class_high_five_1_1_slice_traits.html", [ + [ "HighFive::DataSet", "class_high_five_1_1_data_set.html", null ] + ] ], + [ "HighFive::SliceTraits< Selection >", "class_high_five_1_1_slice_traits.html", [ + [ "HighFive::Selection", "class_high_five_1_1_selection.html", null ] + ] ] +]; \ No newline at end of file diff --git a/highfive_8hpp.html b/highfive_8hpp.html new file mode 100644 index 000000000..e4430024f --- /dev/null +++ b/highfive_8hpp.html @@ -0,0 +1,317 @@ + + + + + + + +HighFive: highfive/highfive.hpp File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
highfive.hpp File Reference
+
+
+
+Include dependency graph for highfive.hpp:
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+

Go to the source code of this file.

+
+
+ + + + diff --git a/highfive_8hpp__incl.map b/highfive_8hpp__incl.map new file mode 100644 index 000000000..17ba956da --- /dev/null +++ b/highfive_8hpp__incl.map @@ -0,0 +1,191 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/highfive_8hpp__incl.md5 b/highfive_8hpp__incl.md5 new file mode 100644 index 000000000..d5d6ca5e4 --- /dev/null +++ b/highfive_8hpp__incl.md5 @@ -0,0 +1 @@ +11ac8e288f9b9592fc75039ada43e93c \ No newline at end of file diff --git a/highfive_8hpp__incl.png b/highfive_8hpp__incl.png new file mode 100644 index 000000000..101ef71c5 Binary files /dev/null and b/highfive_8hpp__incl.png differ diff --git a/highfive_8hpp_source.html b/highfive_8hpp_source.html new file mode 100644 index 000000000..f7a662ef2 --- /dev/null +++ b/highfive_8hpp_source.html @@ -0,0 +1,138 @@ + + + + + + + +HighFive: highfive/highfive.hpp Source File + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
highfive.hpp
+
+ +
+ + + + diff --git a/index.html b/index.html new file mode 100644 index 000000000..b382b7112 --- /dev/null +++ b/index.html @@ -0,0 +1,279 @@ + + + + + + + +HighFive: HighFive - HDF5 header-only C++ Library + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
HighFive - HDF5 header-only C++ Library
+
+
+

Doxygen -> gh-pages codecov HighFive_Integration_tests

+

Documentation: https://bluebrain.github.io/HighFive/

+

Brief

+

HighFive is a modern header-only C++11 friendly interface for libhdf5.

+

HighFive supports STL vector/string, Boost::UBLAS, Boost::Multi-array and Xtensor. It handles C++ from/to HDF5 with automatic type mapping. HighFive does not require additional libraries (see dependencies).

+

It integrates nicely with other CMake projects by defining (and exporting) a HighFive target.

+

Design

+
    +
  • Simple C++-ish minimalist interface
  • +
  • No other dependency than libhdf5
  • +
  • Zero overhead
  • +
  • Support C++11
  • +
+

Feature support

+
    +
  • create/read/write files, datasets, attributes, groups, dataspaces.
  • +
  • automatic memory management / ref counting
  • +
  • automatic conversion of std::vector and nested std::vector from/to any dataset with basic types
  • +
  • automatic conversion of std::string to/from variable length string dataset
  • +
  • selection() / slice support
  • +
  • parallel Read/Write operations from several nodes with Parallel HDF5
  • +
  • Advanced types: Compound, Enum, Arrays of Fixed-length strings, References
  • +
  • half-precision (16-bit) floating-point datasets
  • +
  • std::byte in C++17 mode (with -DCMAKE_CXX_STANDARD=17 or higher)
  • +
  • etc... (see ChangeLog)
  • +
+

Dependencies

+
    +
  • hdf5 (dev)
  • +
  • hdf5-mpi (optional, opt-in with -D*HIGHFIVE_PARALLEL_HDF5*=ON)
  • +
  • boost >= 1.41 (recommended, opt-out with -D*HIGHFIVE_USE_BOOST*=OFF)
  • +
  • eigen3 (optional, opt-in with -D*HIGHFIVE_USE_EIGEN*=ON)
  • +
  • xtensor (optional, opt-in with -D*HIGHFIVE_USE_XTENSOR*=ON)
  • +
  • half (optional, opt-in with -D*HIGHFIVE_USE_HALF_FLOAT*=ON)
  • +
+

Known flaws

+ +

Examples

+

Write a std::vector<int> to 1D HDF5 dataset and read it back

+
++
+ +
+
using namespace HighFive;
+
+
std::string filename = "/tmp/new_file.h5";
+
+
{
+
// We create an empty HDF55 file, by truncating an existing
+
// file if required:
+
File file(filename, File::Truncate);
+
+
std::vector<int> data(50, 1);
+
file.createDataSet("grp/data", data);
+
}
+
+
{
+
// We open the file as read-only:
+
File file(filename, File::ReadOnly);
+
auto dataset = file.getDataSet("grp/data");
+
+
// Read back, with allocating:
+
auto data = dataset.read<std::vector<int>>();
+
+
// Because `data` has the correct size, this will
+
// not cause `data` to be reallocated:
+
dataset.read(data);
+
}
+
File class.
Definition H5File.hpp:24
+ +
Definition H5_definitions.hpp:15
+

Note: H5File.hpp is the top-level header of HighFive core which should be always included.

+

Note: For advanced usecases the dataset can be created without immediately writing to it. This is common in MPI-IO related patterns, or when growing a dataset over the course of a simulation.

+

Write a 2 dimensional C double float array to a 2D HDF5 dataset

+

See create_dataset_double.cpp

+

Write and read a matrix of double float (boost::ublas) to a 2D HDF5 dataset

+

See boost_ublas_double.cpp

+

Write and read a subset of a 2D double dataset

+

See select_partial_dataset_cpp11.cpp

+

Create, write and list HDF5 attributes

+

See create_attribute_string_integer.cpp

+

And others

+

See src/examples/ subdirectory for more info.

+

H5Easy

+

For several 'standard' use cases the highfive/H5Easy.hpp interface is available. It allows:

+
    +
  • Reading/writing in a single line of:
      +
    • scalars (to/from an extendible DataSet),
    • +
    • strings,
    • +
    • vectors (of standard types),
    • +
    • Eigen::Matrix (optional, enable CMake option HIGHFIVE_USE_EIGEN),
    • +
    • xt::xarray and xt::xtensor (optional, enable CMake option HIGHFIVE_USE_XTENSOR).
    • +
    • cv::Mat_ (optional, enable CMake option HIGHFIVE_USE_OPENCV).
    • +
    +
  • +
  • Getting in a single line:
      +
    • the size of a DataSet,
    • +
    • the shape of a DataSet.
    • +
    +
  • +
+

Example

+
+
+
int main() {
+ +
+
int A = ...;
+
H5Easy::dump(file, "/path/to/A", A);
+
+
A = H5Easy::load<int>(file, "/path/to/A");
+
}
+ +
@ Overwrite
Derived open flag: common write mode (=ReadWrite|Create|Truncate)
Definition H5File.hpp:42
+
DataSet dump(File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
Write object (templated) to a (new) DataSet in an open HDF5 file.
Definition H5Easy_public.hpp:99
+

whereby the int type of this example can be replaced by any of the above types. See easy_load_dump.cpp for more details.

+

Note: Classes such as H5Easy::File are just short for the regular HighFive classes (in this case HighFive::File). They can thus be used interchangeably.

+

CMake integration

+

There's two common paths of integrating HighFive into a CMake based project. The first is to "vendor" HighFive, the second is to install HighFive as a normal C++ library. Due to how HighFive CMake code works, sometimes following the third Bailout Approach is needed.

+

Vendoring HighFive

+

In this approach the HighFive sources are included in a subdirectory of the project (typically as a git submodule), for example in third_party/HighFive.

+

The projects CMakeLists.txt add the following lines

add_executable(foo foo.cpp)
+
+
# You might want to turn off Boost support:
+
if(NOT DEFINED HIGHFIVE_USE_BOOST)
+
set(HIGHFIVE_USE_BOOST Off)
+
endif()
+
+
# Include the subdirectory and use the target HighFive.
+
add_subdirectory(third_party/HighFive)
+
target_link_libraries(foo HighFive)
+

Note: add_subdirectory(third_party/HighFive) will search and "link" HDF5 and optional dependencies such as Boost.

+

Regular Installation of HighFive

+

Alternatively you can install HighFive once and use it in several projects via find_package(). First one should clone the sources:

git clone --recursive https://github.com/BlueBrain/HighFive.git HighFive-src
+

By default CMake will install systemwide, which is likely not appropriate. The instruction below allow users to select a custom path where HighFive will be installed, e.g. HIGHFIVE_INSTALL_PREFIX=${HOME}/third_party/HighFive or some other location. The CMake invocations would be

cmake -DHIGHFIVE_EXAMPLES=Off \
+
-DHIGHFIVE_USE_BOOST=Off \
+
-DHIGHFIVE_UNIT_TESTS=Off \
+
-DCMAKE_INSTALL_PREFIX=${HIGHFIVE_INSTALL_PREFIX} \
+
-B HighFive-src/build \
+
HighFive-src
+
+
cmake --build HighFive-src/build
+
cmake --install HighFive-src/build
+

This will install (i.e. copy) the headers to ${HIGHFIVE_INSTALL_PREFIX}/include and some CMake files into an appropriate subfolder of ${HIGHFIVE_INSTALL_PREFIX}.

+

The projects CMakeLists.txt should add the following:

# ...
+
add_executable(foo foo.cpp)
+
+
find_package(HighFive REQUIRED)
+
target_link_libraries(foo HighFive)
+

Note: If HighFive hasn't been installed in a default location, CMake needs to be told where to find it which can be done by adding -DCMAKE_PREFIX_PATH=${HIGHFIVE_INSTALL_PREFIX} to the CMake command for building the project using HighFive. The variable CMAKE_PREFIX_PATH is a semi-colon ; separated list of directories.

+

Note: find_package(HighFive) will search and "link" HDF5 and optional dependencies such as Boost.

+

The Bailout Approach

+

Since both add_subdirectory and find_package will trigger finding HDF5 and other optional dependencies of HighFive as well as the target_link_libraries code for "linking" with the dependencies, things can go wrong.

+

Fortunately, HighFive is a header only library and all that's needed is the headers. Preferably, the version obtained by installing HighFive, since those include H5Version.hpp. Let's assume they've been copied to third_party/HighFive. Then one could create a target:

+
add_library(HighFive INTERFACE)
+
target_include_directory(HighFive INTERFACE ${CMAKE_CURRENT_SOURCE_DIR}/third_party/HighFive/include)
+
+
+
add_executable(foo foo.cpp)
+
target_link_libraries(foo HighFive)
+

One known case where this is required is when vendoring the optional dependencies of HighFive.

+

Questions?

+

Do you have questions on how to use HighFive? Would you like to share an interesting example or discuss HighFive features? Head over to the Discussions forum and join the community.

+

For bugs and issues please use Issues.

+

Funding & Acknowledgment

+

The development of this software was supported by funding to the Blue Brain Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), from the Swiss government's ETH Board of the Swiss Federal Institutes of Technology.

+

Copyright © 2015-2022 Blue Brain Project/EPFL

+

License

+

Boost Software License 1.0

+
+
+
+ + + + diff --git a/inherit_graph_0.map b/inherit_graph_0.map new file mode 100644 index 000000000..39900d2ad --- /dev/null +++ b/inherit_graph_0.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_0.md5 b/inherit_graph_0.md5 new file mode 100644 index 000000000..5a7b11f8e --- /dev/null +++ b/inherit_graph_0.md5 @@ -0,0 +1 @@ +8676e442c6d2c754c1d705bb5c242ac6 \ No newline at end of file diff --git a/inherit_graph_0.png b/inherit_graph_0.png new file mode 100644 index 000000000..196254621 Binary files /dev/null and b/inherit_graph_0.png differ diff --git a/inherit_graph_1.map b/inherit_graph_1.map new file mode 100644 index 000000000..aa519a4b6 --- /dev/null +++ b/inherit_graph_1.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_1.md5 b/inherit_graph_1.md5 new file mode 100644 index 000000000..529de84e9 --- /dev/null +++ b/inherit_graph_1.md5 @@ -0,0 +1 @@ +684dc5d65a2458540d6988399bd8ffbe \ No newline at end of file diff --git a/inherit_graph_1.png b/inherit_graph_1.png new file mode 100644 index 000000000..5a280203c Binary files /dev/null and b/inherit_graph_1.png differ diff --git a/inherit_graph_10.map b/inherit_graph_10.map new file mode 100644 index 000000000..e306a9303 --- /dev/null +++ b/inherit_graph_10.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_10.md5 b/inherit_graph_10.md5 new file mode 100644 index 000000000..a62c4aceb --- /dev/null +++ b/inherit_graph_10.md5 @@ -0,0 +1 @@ +a9b02d40e4d313fa781958cac0be3730 \ No newline at end of file diff --git a/inherit_graph_10.png b/inherit_graph_10.png new file mode 100644 index 000000000..fff00dfec Binary files /dev/null and b/inherit_graph_10.png differ diff --git a/inherit_graph_11.map b/inherit_graph_11.map new file mode 100644 index 000000000..7e5deabe4 --- /dev/null +++ b/inherit_graph_11.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_11.md5 b/inherit_graph_11.md5 new file mode 100644 index 000000000..ebd05236a --- /dev/null +++ b/inherit_graph_11.md5 @@ -0,0 +1 @@ +030dd4aa3d9d23d930aafada7e92ea1b \ No newline at end of file diff --git a/inherit_graph_11.png b/inherit_graph_11.png new file mode 100644 index 000000000..ecdec2e2c Binary files /dev/null and b/inherit_graph_11.png differ diff --git a/inherit_graph_12.map b/inherit_graph_12.map new file mode 100644 index 000000000..2598f2823 --- /dev/null +++ b/inherit_graph_12.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_12.md5 b/inherit_graph_12.md5 new file mode 100644 index 000000000..cbc8b0d33 --- /dev/null +++ b/inherit_graph_12.md5 @@ -0,0 +1 @@ +336d4e515f3d2ec4e2810f9755fa4f61 \ No newline at end of file diff --git a/inherit_graph_12.png b/inherit_graph_12.png new file mode 100644 index 000000000..832c10a3c Binary files /dev/null and b/inherit_graph_12.png differ diff --git a/inherit_graph_13.map b/inherit_graph_13.map new file mode 100644 index 000000000..e787dd1e1 --- /dev/null +++ b/inherit_graph_13.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_13.md5 b/inherit_graph_13.md5 new file mode 100644 index 000000000..bd2c23da7 --- /dev/null +++ b/inherit_graph_13.md5 @@ -0,0 +1 @@ +bf60f21977eb35842deeb18d3034d750 \ No newline at end of file diff --git a/inherit_graph_13.png b/inherit_graph_13.png new file mode 100644 index 000000000..80bdafee8 Binary files /dev/null and b/inherit_graph_13.png differ diff --git a/inherit_graph_14.map b/inherit_graph_14.map new file mode 100644 index 000000000..1f309348c --- /dev/null +++ b/inherit_graph_14.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_14.md5 b/inherit_graph_14.md5 new file mode 100644 index 000000000..156df70e5 --- /dev/null +++ b/inherit_graph_14.md5 @@ -0,0 +1 @@ +727ef03c5652db92584817267ba2b8f1 \ No newline at end of file diff --git a/inherit_graph_14.png b/inherit_graph_14.png new file mode 100644 index 000000000..99ab4ff61 Binary files /dev/null and b/inherit_graph_14.png differ diff --git a/inherit_graph_15.map b/inherit_graph_15.map new file mode 100644 index 000000000..5fbc04f74 --- /dev/null +++ b/inherit_graph_15.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_15.md5 b/inherit_graph_15.md5 new file mode 100644 index 000000000..0b9a7d6d0 --- /dev/null +++ b/inherit_graph_15.md5 @@ -0,0 +1 @@ +a6e4a50a2bdf3058e63b4301d31b63d2 \ No newline at end of file diff --git a/inherit_graph_15.png b/inherit_graph_15.png new file mode 100644 index 000000000..d33345654 Binary files /dev/null and b/inherit_graph_15.png differ diff --git a/inherit_graph_16.map b/inherit_graph_16.map new file mode 100644 index 000000000..748ce970e --- /dev/null +++ b/inherit_graph_16.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_16.md5 b/inherit_graph_16.md5 new file mode 100644 index 000000000..728550088 --- /dev/null +++ b/inherit_graph_16.md5 @@ -0,0 +1 @@ +74e2ef863ef9fe7ded21c544b9766944 \ No newline at end of file diff --git a/inherit_graph_16.png b/inherit_graph_16.png new file mode 100644 index 000000000..73ec80e95 Binary files /dev/null and b/inherit_graph_16.png differ diff --git a/inherit_graph_17.map b/inherit_graph_17.map new file mode 100644 index 000000000..057037bc9 --- /dev/null +++ b/inherit_graph_17.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_17.md5 b/inherit_graph_17.md5 new file mode 100644 index 000000000..6974ba754 --- /dev/null +++ b/inherit_graph_17.md5 @@ -0,0 +1 @@ +1df81577f8954545a29fd2f0f65f6a6f \ No newline at end of file diff --git a/inherit_graph_17.png b/inherit_graph_17.png new file mode 100644 index 000000000..8819d227a Binary files /dev/null and b/inherit_graph_17.png differ diff --git a/inherit_graph_18.map b/inherit_graph_18.map new file mode 100644 index 000000000..0b06a5a4f --- /dev/null +++ b/inherit_graph_18.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_18.md5 b/inherit_graph_18.md5 new file mode 100644 index 000000000..e82505552 --- /dev/null +++ b/inherit_graph_18.md5 @@ -0,0 +1 @@ +02caf605988950f1af6691b7466f70d3 \ No newline at end of file diff --git a/inherit_graph_18.png b/inherit_graph_18.png new file mode 100644 index 000000000..d2b2fed65 Binary files /dev/null and b/inherit_graph_18.png differ diff --git a/inherit_graph_19.map b/inherit_graph_19.map new file mode 100644 index 000000000..7f8ceb3d9 --- /dev/null +++ b/inherit_graph_19.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_19.md5 b/inherit_graph_19.md5 new file mode 100644 index 000000000..29d382629 --- /dev/null +++ b/inherit_graph_19.md5 @@ -0,0 +1 @@ +b418606c4786eec0c6c988581802ec9a \ No newline at end of file diff --git a/inherit_graph_19.png b/inherit_graph_19.png new file mode 100644 index 000000000..52c95aeb3 Binary files /dev/null and b/inherit_graph_19.png differ diff --git a/inherit_graph_2.map b/inherit_graph_2.map new file mode 100644 index 000000000..16bf0853c --- /dev/null +++ b/inherit_graph_2.map @@ -0,0 +1,61 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/inherit_graph_2.md5 b/inherit_graph_2.md5 new file mode 100644 index 000000000..79f78c029 --- /dev/null +++ b/inherit_graph_2.md5 @@ -0,0 +1 @@ +e5c1400929590afef36b545dc0bc6998 \ No newline at end of file diff --git a/inherit_graph_2.png b/inherit_graph_2.png new file mode 100644 index 000000000..f251c8e02 Binary files /dev/null and b/inherit_graph_2.png differ diff --git a/inherit_graph_20.map b/inherit_graph_20.map new file mode 100644 index 000000000..4665f4348 --- /dev/null +++ b/inherit_graph_20.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_20.md5 b/inherit_graph_20.md5 new file mode 100644 index 000000000..661064fbd --- /dev/null +++ b/inherit_graph_20.md5 @@ -0,0 +1 @@ +32c9073de25e1a7946ffde57d299ef2f \ No newline at end of file diff --git a/inherit_graph_20.png b/inherit_graph_20.png new file mode 100644 index 000000000..1ab5b4128 Binary files /dev/null and b/inherit_graph_20.png differ diff --git a/inherit_graph_21.map b/inherit_graph_21.map new file mode 100644 index 000000000..d43d085f2 --- /dev/null +++ b/inherit_graph_21.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_21.md5 b/inherit_graph_21.md5 new file mode 100644 index 000000000..1941721eb --- /dev/null +++ b/inherit_graph_21.md5 @@ -0,0 +1 @@ +7bdd9e0f22bc7ca1004308ed9e595428 \ No newline at end of file diff --git a/inherit_graph_21.png b/inherit_graph_21.png new file mode 100644 index 000000000..b7a9dc73e Binary files /dev/null and b/inherit_graph_21.png differ diff --git a/inherit_graph_22.map b/inherit_graph_22.map new file mode 100644 index 000000000..7a715a72a --- /dev/null +++ b/inherit_graph_22.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_22.md5 b/inherit_graph_22.md5 new file mode 100644 index 000000000..605452d28 --- /dev/null +++ b/inherit_graph_22.md5 @@ -0,0 +1 @@ +cc62bf13425515283450e6320125f832 \ No newline at end of file diff --git a/inherit_graph_22.png b/inherit_graph_22.png new file mode 100644 index 000000000..bd1db2127 Binary files /dev/null and b/inherit_graph_22.png differ diff --git a/inherit_graph_23.map b/inherit_graph_23.map new file mode 100644 index 000000000..fd9328683 --- /dev/null +++ b/inherit_graph_23.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_23.md5 b/inherit_graph_23.md5 new file mode 100644 index 000000000..ddafe603d --- /dev/null +++ b/inherit_graph_23.md5 @@ -0,0 +1 @@ +b369195cda0e5e93e724a26f51728432 \ No newline at end of file diff --git a/inherit_graph_23.png b/inherit_graph_23.png new file mode 100644 index 000000000..b1c66e18f Binary files /dev/null and b/inherit_graph_23.png differ diff --git a/inherit_graph_24.map b/inherit_graph_24.map new file mode 100644 index 000000000..3be725ed6 --- /dev/null +++ b/inherit_graph_24.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_24.md5 b/inherit_graph_24.md5 new file mode 100644 index 000000000..dedb9aa61 --- /dev/null +++ b/inherit_graph_24.md5 @@ -0,0 +1 @@ +fede7fd4f16d9c843bd342b6139518c7 \ No newline at end of file diff --git a/inherit_graph_24.png b/inherit_graph_24.png new file mode 100644 index 000000000..9814743f6 Binary files /dev/null and b/inherit_graph_24.png differ diff --git a/inherit_graph_25.map b/inherit_graph_25.map new file mode 100644 index 000000000..736eb9723 --- /dev/null +++ b/inherit_graph_25.map @@ -0,0 +1,5 @@ + + + + + diff --git a/inherit_graph_25.md5 b/inherit_graph_25.md5 new file mode 100644 index 000000000..46b0e0373 --- /dev/null +++ b/inherit_graph_25.md5 @@ -0,0 +1 @@ +2713132e86ee218e373debe3e9f3404d \ No newline at end of file diff --git a/inherit_graph_25.png b/inherit_graph_25.png new file mode 100644 index 000000000..fb335c979 Binary files /dev/null and b/inherit_graph_25.png differ diff --git a/inherit_graph_26.map b/inherit_graph_26.map new file mode 100644 index 000000000..c635eab40 --- /dev/null +++ b/inherit_graph_26.map @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/inherit_graph_26.md5 b/inherit_graph_26.md5 new file mode 100644 index 000000000..17ed568ba --- /dev/null +++ b/inherit_graph_26.md5 @@ -0,0 +1 @@ +a4b7d5690713570a5762a47f1ef461a9 \ No newline at end of file diff --git a/inherit_graph_26.png b/inherit_graph_26.png new file mode 100644 index 000000000..1c32b6a44 Binary files /dev/null and b/inherit_graph_26.png differ diff --git a/inherit_graph_27.map b/inherit_graph_27.map new file mode 100644 index 000000000..dc9816829 --- /dev/null +++ b/inherit_graph_27.map @@ -0,0 +1,23 @@ + + + + + + + + + + + + + + + + + + + + + + + diff --git a/inherit_graph_27.md5 b/inherit_graph_27.md5 new file mode 100644 index 000000000..b2906c613 --- /dev/null +++ b/inherit_graph_27.md5 @@ -0,0 +1 @@ +bf35a442c198f9b4bbff263dd1d2d149 \ No newline at end of file diff --git a/inherit_graph_27.png b/inherit_graph_27.png new file mode 100644 index 000000000..3fced38aa Binary files /dev/null and b/inherit_graph_27.png differ diff --git a/inherit_graph_3.map b/inherit_graph_3.map new file mode 100644 index 000000000..5a9f4468d --- /dev/null +++ b/inherit_graph_3.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_3.md5 b/inherit_graph_3.md5 new file mode 100644 index 000000000..ff4e4609c --- /dev/null +++ b/inherit_graph_3.md5 @@ -0,0 +1 @@ +76dc72dd3d142528beee20a61b3dbf45 \ No newline at end of file diff --git a/inherit_graph_3.png b/inherit_graph_3.png new file mode 100644 index 000000000..49714deb2 Binary files /dev/null and b/inherit_graph_3.png differ diff --git a/inherit_graph_4.map b/inherit_graph_4.map new file mode 100644 index 000000000..18ad1f69c --- /dev/null +++ b/inherit_graph_4.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_4.md5 b/inherit_graph_4.md5 new file mode 100644 index 000000000..258f7e30a --- /dev/null +++ b/inherit_graph_4.md5 @@ -0,0 +1 @@ +b34a6a9fe55e9d82b2ce82044f2cc35a \ No newline at end of file diff --git a/inherit_graph_4.png b/inherit_graph_4.png new file mode 100644 index 000000000..da547b5c0 Binary files /dev/null and b/inherit_graph_4.png differ diff --git a/inherit_graph_5.map b/inherit_graph_5.map new file mode 100644 index 000000000..337bdef01 --- /dev/null +++ b/inherit_graph_5.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_5.md5 b/inherit_graph_5.md5 new file mode 100644 index 000000000..475163275 --- /dev/null +++ b/inherit_graph_5.md5 @@ -0,0 +1 @@ +707a43c4478c62ad00fc940d24b4291f \ No newline at end of file diff --git a/inherit_graph_5.png b/inherit_graph_5.png new file mode 100644 index 000000000..3bf6a7110 Binary files /dev/null and b/inherit_graph_5.png differ diff --git a/inherit_graph_6.map b/inherit_graph_6.map new file mode 100644 index 000000000..ef87e5fa1 --- /dev/null +++ b/inherit_graph_6.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_6.md5 b/inherit_graph_6.md5 new file mode 100644 index 000000000..9ac509c89 --- /dev/null +++ b/inherit_graph_6.md5 @@ -0,0 +1 @@ +32f2b827e3132aaa8581f51fc17d534b \ No newline at end of file diff --git a/inherit_graph_6.png b/inherit_graph_6.png new file mode 100644 index 000000000..c5449a3dd Binary files /dev/null and b/inherit_graph_6.png differ diff --git a/inherit_graph_7.map b/inherit_graph_7.map new file mode 100644 index 000000000..7fb218023 --- /dev/null +++ b/inherit_graph_7.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_7.md5 b/inherit_graph_7.md5 new file mode 100644 index 000000000..3bacf6e45 --- /dev/null +++ b/inherit_graph_7.md5 @@ -0,0 +1 @@ +775428e21617944802c488549271f668 \ No newline at end of file diff --git a/inherit_graph_7.png b/inherit_graph_7.png new file mode 100644 index 000000000..c4f35e5c9 Binary files /dev/null and b/inherit_graph_7.png differ diff --git a/inherit_graph_8.map b/inherit_graph_8.map new file mode 100644 index 000000000..8fabd6fdd --- /dev/null +++ b/inherit_graph_8.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_8.md5 b/inherit_graph_8.md5 new file mode 100644 index 000000000..9799a25a5 --- /dev/null +++ b/inherit_graph_8.md5 @@ -0,0 +1 @@ +bef602903928d16d607e56e51e0db93d \ No newline at end of file diff --git a/inherit_graph_8.png b/inherit_graph_8.png new file mode 100644 index 000000000..2f9fc27df Binary files /dev/null and b/inherit_graph_8.png differ diff --git a/inherit_graph_9.map b/inherit_graph_9.map new file mode 100644 index 000000000..cdf1a2f5a --- /dev/null +++ b/inherit_graph_9.map @@ -0,0 +1,3 @@ + + + diff --git a/inherit_graph_9.md5 b/inherit_graph_9.md5 new file mode 100644 index 000000000..9038fba64 --- /dev/null +++ b/inherit_graph_9.md5 @@ -0,0 +1 @@ +1500615eeb0f02941b6a3ca1197bd5ca \ No newline at end of file diff --git a/inherit_graph_9.png b/inherit_graph_9.png new file mode 100644 index 000000000..23b69ec57 Binary files /dev/null and b/inherit_graph_9.png differ diff --git a/inherits.html b/inherits.html new file mode 100644 index 000000000..667c2f4db --- /dev/null +++ b/inherits.html @@ -0,0 +1,354 @@ + + + + + + + +HighFive: Class Hierarchy + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Class Hierarchy
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + + diff --git a/installation_8md.html b/installation_8md.html new file mode 100644 index 000000000..7dd78d7e0 --- /dev/null +++ b/installation_8md.html @@ -0,0 +1,107 @@ + + + + + + + +HighFive: /home/runner/work/HighFive/HighFive/doc/installation.md File Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
/home/runner/work/HighFive/HighFive/doc/installation.md File Reference
+
+
+
+
+ + + + diff --git a/interface_property_interface.html b/interface_property_interface.html new file mode 100644 index 000000000..5f8b40700 --- /dev/null +++ b/interface_property_interface.html @@ -0,0 +1,151 @@ + + + + + + + +HighFive: PropertyInterface Interface Reference + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
PropertyInterface Interface Reference
+
+
+ +

HDF5 file property object. + More...

+ +

#include <H5PropertyList.hpp>

+
+Inheritance diagram for PropertyInterface:
+
+
Inheritance graph
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
[legend]
+

Detailed Description

+

HDF5 file property object.

+

A property is an object which is expected to have a method with the following signature void apply(hid_t hid) const

+
See also
Instructions to document C++20 concepts with Doxygen: https://github.com/doxygen/doxygen/issues/2732#issuecomment-509629967
+

The documentation for this interface was generated from the following file: +
+
+ + + + diff --git a/interface_property_interface__inherit__graph.map b/interface_property_interface__inherit__graph.map new file mode 100644 index 000000000..faf1fce08 --- /dev/null +++ b/interface_property_interface__inherit__graph.map @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/interface_property_interface__inherit__graph.md5 b/interface_property_interface__inherit__graph.md5 new file mode 100644 index 000000000..21fed75b1 --- /dev/null +++ b/interface_property_interface__inherit__graph.md5 @@ -0,0 +1 @@ +4e96c961d6cfe890733453a572071aad \ No newline at end of file diff --git a/interface_property_interface__inherit__graph.png b/interface_property_interface__inherit__graph.png new file mode 100644 index 000000000..82834ce9d Binary files /dev/null and b/interface_property_interface__inherit__graph.png differ diff --git a/jquery.js b/jquery.js new file mode 100644 index 000000000..1dffb65b5 --- /dev/null +++ b/jquery.js @@ -0,0 +1,34 @@ +/*! jQuery v3.6.0 | (c) OpenJS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.6.0",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e&&e.namespaceURI,n=e&&(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},j=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||D,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,D=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function je(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function De(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function qe(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Le(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var _t,zt=[],Ut=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=zt.pop()||S.expando+"_"+wt.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Ut.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Ut.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Ut,"$1"+r):!1!==e.jsonp&&(e.url+=(Tt.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,zt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((_t=E.implementation.createHTMLDocument("").body).innerHTML="
",2===_t.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=Fe(y.pixelPosition,function(e,t){if(t)return t=We(e,n),Pe.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0",options:{classes:{},disabled:!1,create:null},_createWidget:function(t,e){e=y(e||this.defaultElement||this)[0],this.element=y(e),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=y(),this.hoverable=y(),this.focusable=y(),this.classesElementLookup={},e!==this&&(y.data(e,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===e&&this.destroy()}}),this.document=y(e.style?e.ownerDocument:e.document||e),this.window=y(this.document[0].defaultView||this.document[0].parentWindow)),this.options=y.widget.extend({},this.options,this._getCreateOptions(),t),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:y.noop,_create:y.noop,_init:y.noop,destroy:function(){var i=this;this._destroy(),y.each(this.classesElementLookup,function(t,e){i._removeClass(e,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:y.noop,widget:function(){return this.element},option:function(t,e){var i,s,n,o=t;if(0===arguments.length)return y.widget.extend({},this.options);if("string"==typeof t)if(o={},t=(i=t.split(".")).shift(),i.length){for(s=o[t]=y.widget.extend({},this.options[t]),n=0;n
"),i=e.children()[0];return y("body").append(e),t=i.offsetWidth,e.css("overflow","scroll"),t===(i=i.offsetWidth)&&(i=e[0].clientWidth),e.remove(),s=t-i},getScrollInfo:function(t){var e=t.isWindow||t.isDocument?"":t.element.css("overflow-x"),i=t.isWindow||t.isDocument?"":t.element.css("overflow-y"),e="scroll"===e||"auto"===e&&t.widthx(D(s),D(n))?o.important="horizontal":o.important="vertical",p.using.call(this,t,o)}),h.offset(y.extend(l,{using:t}))})},y.ui.position={fit:{left:function(t,e){var i=e.within,s=i.isWindow?i.scrollLeft:i.offset.left,n=i.width,o=t.left-e.collisionPosition.marginLeft,h=s-o,a=o+e.collisionWidth-n-s;e.collisionWidth>n?0n?0=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),y.ui.plugin={add:function(t,e,i){var s,n=y.ui[t].prototype;for(s in i)n.plugins[s]=n.plugins[s]||[],n.plugins[s].push([e,i[s]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;n").css({overflow:"hidden",position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,t={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(t),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(t),this._proportionallyResize()),this._setupHandles(),e.autoHide&&y(this.element).on("mouseenter",function(){e.disabled||(i._removeClass("ui-resizable-autohide"),i._handles.show())}).on("mouseleave",function(){e.disabled||i.resizing||(i._addClass("ui-resizable-autohide"),i._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy(),this._addedHandles.remove();function t(t){y(t).removeData("resizable").removeData("ui-resizable").off(".resizable")}var e;return this.elementIsWrapper&&(t(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),t(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;case"aspectRatio":this._aspectRatio=!!e}},_setupHandles:function(){var t,e,i,s,n,o=this.options,h=this;if(this.handles=o.handles||(y(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=y(),this._addedHandles=y(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),i=this.handles.split(","),this.handles={},e=0;e"),this._addClass(n,"ui-resizable-handle "+s),n.css({zIndex:o.zIndex}),this.handles[t]=".ui-resizable-"+t,this.element.children(this.handles[t]).length||(this.element.append(n),this._addedHandles=this._addedHandles.add(n));this._renderAxis=function(t){var e,i,s;for(e in t=t||this.element,this.handles)this.handles[e].constructor===String?this.handles[e]=this.element.children(this.handles[e]).first().show():(this.handles[e].jquery||this.handles[e].nodeType)&&(this.handles[e]=y(this.handles[e]),this._on(this.handles[e],{mousedown:h._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(i=y(this.handles[e],this.element),s=/sw|ne|nw|se|n|s/.test(e)?i.outerHeight():i.outerWidth(),i=["padding",/ne|nw|n/.test(e)?"Top":/se|sw|s/.test(e)?"Bottom":/^e$/.test(e)?"Right":"Left"].join(""),t.css(i,s),this._proportionallyResize()),this._handles=this._handles.add(this.handles[e])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){h.resizing||(this.className&&(n=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),h.axis=n&&n[1]?n[1]:"se")}),o.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._addedHandles.remove()},_mouseCapture:function(t){var e,i,s=!1;for(e in this.handles)(i=y(this.handles[e])[0])!==t.target&&!y.contains(i,t.target)||(s=!0);return!this.options.disabled&&s},_mouseStart:function(t){var e,i,s=this.options,n=this.element;return this.resizing=!0,this._renderProxy(),e=this._num(this.helper.css("left")),i=this._num(this.helper.css("top")),s.containment&&(e+=y(s.containment).scrollLeft()||0,i+=y(s.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:e,top:i},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:n.width(),height:n.height()},this.originalSize=this._helper?{width:n.outerWidth(),height:n.outerHeight()}:{width:n.width(),height:n.height()},this.sizeDiff={width:n.outerWidth()-n.width(),height:n.outerHeight()-n.height()},this.originalPosition={left:e,top:i},this.originalMousePosition={left:t.pageX,top:t.pageY},this.aspectRatio="number"==typeof s.aspectRatio?s.aspectRatio:this.originalSize.width/this.originalSize.height||1,s=y(".ui-resizable-"+this.axis).css("cursor"),y("body").css("cursor","auto"===s?this.axis+"-resize":s),this._addClass("ui-resizable-resizing"),this._propagate("start",t),!0},_mouseDrag:function(t){var e=this.originalMousePosition,i=this.axis,s=t.pageX-e.left||0,e=t.pageY-e.top||0,i=this._change[i];return this._updatePrevProperties(),i&&(e=i.apply(this,[t,s,e]),this._updateVirtualBoundaries(t.shiftKey),(this._aspectRatio||t.shiftKey)&&(e=this._updateRatio(e,t)),e=this._respectSize(e,t),this._updateCache(e),this._propagate("resize",t),e=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),y.isEmptyObject(e)||(this._updatePrevProperties(),this._trigger("resize",t,this.ui()),this._applyChanges())),!1},_mouseStop:function(t){this.resizing=!1;var e,i,s,n=this.options,o=this;return this._helper&&(s=(e=(i=this._proportionallyResizeElements).length&&/textarea/i.test(i[0].nodeName))&&this._hasScroll(i[0],"left")?0:o.sizeDiff.height,i=e?0:o.sizeDiff.width,e={width:o.helper.width()-i,height:o.helper.height()-s},i=parseFloat(o.element.css("left"))+(o.position.left-o.originalPosition.left)||null,s=parseFloat(o.element.css("top"))+(o.position.top-o.originalPosition.top)||null,n.animate||this.element.css(y.extend(e,{top:s,left:i})),o.helper.height(o.size.height),o.helper.width(o.size.width),this._helper&&!n.animate&&this._proportionallyResize()),y("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",t),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s=this.options,n={minWidth:this._isNumber(s.minWidth)?s.minWidth:0,maxWidth:this._isNumber(s.maxWidth)?s.maxWidth:1/0,minHeight:this._isNumber(s.minHeight)?s.minHeight:0,maxHeight:this._isNumber(s.maxHeight)?s.maxHeight:1/0};(this._aspectRatio||t)&&(e=n.minHeight*this.aspectRatio,i=n.minWidth/this.aspectRatio,s=n.maxHeight*this.aspectRatio,t=n.maxWidth/this.aspectRatio,e>n.minWidth&&(n.minWidth=e),i>n.minHeight&&(n.minHeight=i),st.width,h=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,a=this.originalPosition.left+this.originalSize.width,r=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),i=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),h&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=a-e.minWidth),s&&l&&(t.left=a-e.maxWidth),h&&i&&(t.top=r-e.minHeight),n&&i&&(t.top=r-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];e<4;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;e").css({overflow:"hidden"}),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++e.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize;return{left:this.originalPosition.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize;return{top:this.originalPosition.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(t,e,i){return y.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[t,e,i]))},sw:function(t,e,i){return y.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[t,e,i]))},ne:function(t,e,i){return y.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[t,e,i]))},nw:function(t,e,i){return y.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[t,e,i]))}},_propagate:function(t,e){y.ui.plugin.call(this,t,[e,this.ui()]),"resize"!==t&&this._trigger(t,e,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),y.ui.plugin.add("resizable","animate",{stop:function(e){var i=y(this).resizable("instance"),t=i.options,s=i._proportionallyResizeElements,n=s.length&&/textarea/i.test(s[0].nodeName),o=n&&i._hasScroll(s[0],"left")?0:i.sizeDiff.height,h=n?0:i.sizeDiff.width,n={width:i.size.width-h,height:i.size.height-o},h=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,o=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(y.extend(n,o&&h?{top:o,left:h}:{}),{duration:t.animateDuration,easing:t.animateEasing,step:function(){var t={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};s&&s.length&&y(s[0]).css({width:t.width,height:t.height}),i._updateCache(t),i._propagate("resize",e)}})}}),y.ui.plugin.add("resizable","containment",{start:function(){var i,s,n=y(this).resizable("instance"),t=n.options,e=n.element,o=t.containment,h=o instanceof y?o.get(0):/parent/.test(o)?e.parent().get(0):o;h&&(n.containerElement=y(h),/document/.test(o)||o===document?(n.containerOffset={left:0,top:0},n.containerPosition={left:0,top:0},n.parentData={element:y(document),left:0,top:0,width:y(document).width(),height:y(document).height()||document.body.parentNode.scrollHeight}):(i=y(h),s=[],y(["Top","Right","Left","Bottom"]).each(function(t,e){s[t]=n._num(i.css("padding"+e))}),n.containerOffset=i.offset(),n.containerPosition=i.position(),n.containerSize={height:i.innerHeight()-s[3],width:i.innerWidth()-s[1]},t=n.containerOffset,e=n.containerSize.height,o=n.containerSize.width,o=n._hasScroll(h,"left")?h.scrollWidth:o,e=n._hasScroll(h)?h.scrollHeight:e,n.parentData={element:h,left:t.left,top:t.top,width:o,height:e}))},resize:function(t){var e=y(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.position,o=e._aspectRatio||t.shiftKey,h={top:0,left:0},a=e.containerElement,t=!0;a[0]!==document&&/static/.test(a.css("position"))&&(h=s),n.left<(e._helper?s.left:0)&&(e.size.width=e.size.width+(e._helper?e.position.left-s.left:e.position.left-h.left),o&&(e.size.height=e.size.width/e.aspectRatio,t=!1),e.position.left=i.helper?s.left:0),n.top<(e._helper?s.top:0)&&(e.size.height=e.size.height+(e._helper?e.position.top-s.top:e.position.top),o&&(e.size.width=e.size.height*e.aspectRatio,t=!1),e.position.top=e._helper?s.top:0),i=e.containerElement.get(0)===e.element.parent().get(0),n=/relative|absolute/.test(e.containerElement.css("position")),i&&n?(e.offset.left=e.parentData.left+e.position.left,e.offset.top=e.parentData.top+e.position.top):(e.offset.left=e.element.offset().left,e.offset.top=e.element.offset().top),n=Math.abs(e.sizeDiff.width+(e._helper?e.offset.left-h.left:e.offset.left-s.left)),s=Math.abs(e.sizeDiff.height+(e._helper?e.offset.top-h.top:e.offset.top-s.top)),n+e.size.width>=e.parentData.width&&(e.size.width=e.parentData.width-n,o&&(e.size.height=e.size.width/e.aspectRatio,t=!1)),s+e.size.height>=e.parentData.height&&(e.size.height=e.parentData.height-s,o&&(e.size.width=e.size.height*e.aspectRatio,t=!1)),t||(e.position.left=e.prevPosition.left,e.position.top=e.prevPosition.top,e.size.width=e.prevSize.width,e.size.height=e.prevSize.height)},stop:function(){var t=y(this).resizable("instance"),e=t.options,i=t.containerOffset,s=t.containerPosition,n=t.containerElement,o=y(t.helper),h=o.offset(),a=o.outerWidth()-t.sizeDiff.width,o=o.outerHeight()-t.sizeDiff.height;t._helper&&!e.animate&&/relative/.test(n.css("position"))&&y(this).css({left:h.left-s.left-i.left,width:a,height:o}),t._helper&&!e.animate&&/static/.test(n.css("position"))&&y(this).css({left:h.left-s.left-i.left,width:a,height:o})}}),y.ui.plugin.add("resizable","alsoResize",{start:function(){var t=y(this).resizable("instance").options;y(t.alsoResize).each(function(){var t=y(this);t.data("ui-resizable-alsoresize",{width:parseFloat(t.width()),height:parseFloat(t.height()),left:parseFloat(t.css("left")),top:parseFloat(t.css("top"))})})},resize:function(t,i){var e=y(this).resizable("instance"),s=e.options,n=e.originalSize,o=e.originalPosition,h={height:e.size.height-n.height||0,width:e.size.width-n.width||0,top:e.position.top-o.top||0,left:e.position.left-o.left||0};y(s.alsoResize).each(function(){var t=y(this),s=y(this).data("ui-resizable-alsoresize"),n={},e=t.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];y.each(e,function(t,e){var i=(s[e]||0)+(h[e]||0);i&&0<=i&&(n[e]=i||null)}),t.css(n)})},stop:function(){y(this).removeData("ui-resizable-alsoresize")}}),y.ui.plugin.add("resizable","ghost",{start:function(){var t=y(this).resizable("instance"),e=t.size;t.ghost=t.originalElement.clone(),t.ghost.css({opacity:.25,display:"block",position:"relative",height:e.height,width:e.width,margin:0,left:0,top:0}),t._addClass(t.ghost,"ui-resizable-ghost"),!1!==y.uiBackCompat&&"string"==typeof t.options.ghost&&t.ghost.addClass(this.options.ghost),t.ghost.appendTo(t.helper)},resize:function(){var t=y(this).resizable("instance");t.ghost&&t.ghost.css({position:"relative",height:t.size.height,width:t.size.width})},stop:function(){var t=y(this).resizable("instance");t.ghost&&t.helper&&t.helper.get(0).removeChild(t.ghost.get(0))}}),y.ui.plugin.add("resizable","grid",{resize:function(){var t,e=y(this).resizable("instance"),i=e.options,s=e.size,n=e.originalSize,o=e.originalPosition,h=e.axis,a="number"==typeof i.grid?[i.grid,i.grid]:i.grid,r=a[0]||1,l=a[1]||1,u=Math.round((s.width-n.width)/r)*r,p=Math.round((s.height-n.height)/l)*l,d=n.width+u,c=n.height+p,f=i.maxWidth&&i.maxWidthd,s=i.minHeight&&i.minHeight>c;i.grid=a,m&&(d+=r),s&&(c+=l),f&&(d-=r),g&&(c-=l),/^(se|s|e)$/.test(h)?(e.size.width=d,e.size.height=c):/^(ne)$/.test(h)?(e.size.width=d,e.size.height=c,e.position.top=o.top-p):/^(sw)$/.test(h)?(e.size.width=d,e.size.height=c,e.position.left=o.left-u):((c-l<=0||d-r<=0)&&(t=e._getPaddingPlusBorderDimensions(this)),0=f[g]?0:Math.min(f[g],n));!a&&1-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.topviewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.leftviewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017 + * http://www.smartmenus.org/ + * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('
').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('')[0],$('')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$}); \ No newline at end of file diff --git a/md__2home_2runner_2work_2_high_five_2_high_five_2_c_h_a_n_g_e_l_o_g.html b/md__2home_2runner_2work_2_high_five_2_high_five_2_c_h_a_n_g_e_l_o_g.html new file mode 100644 index 000000000..68b77a424 --- /dev/null +++ b/md__2home_2runner_2work_2_high_five_2_high_five_2_c_h_a_n_g_e_l_o_g.html @@ -0,0 +1,425 @@ + + + + + + + +HighFive: Changes + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Changes
+
+
+

Version 2.8.0 - 2023-11-02

+

Important Change

+
    +
  • Eigen::Matrix is (by default) stored with column-major index ordering. Under certain conditions Eigen::Matrix was written and read as row-major. Due to code duplication H5Easy isn't affected by this bug. Starting 2.8.0 HighFive will now throw an exception whenever prior versions would have read with incorrect assumptions about the index ordering. (#731)
  • +
+

New Features

+
    +
  • Improve reading and writing std::string as fixed and variable length HDF5 strings (#744).
  • +
  • Implement creation of hard links (#765). Thanks to @Quark-X10.
  • +
  • Get the size of file and amound of tracked unused space (#764). Thanks to @Quark-X10.
  • +
  • class DataType has a new ctor to open a commited DataType (#796). Thanks to @Quark-X10.
  • +
  • Allow user-specified mem_space for hyperslabs. (#740)
  • +
  • New properties: AttributePhaseChange. (#785)
  • +
  • New options to link against HDF5 statically (#823). Thanks @HunterBelanger.
  • +
  • Add support for std::complex<integral_type> valid with C++23 (#828). Thanks @unbtorsten.
  • +
  • Add a top-level header to include all compononents (#818).
  • +
+

Improvements

+
    +
  • Add concept checks to Property if C++20 for better errors (#811). Thanks @antonysigma.
  • +
  • Add parallel HDF5 test in CI (#760).
  • +
  • Simplify github workflow (#761).
  • +
  • Move inspectors in their own file to be able to better implements strings (#759).
  • +
+

Bug Fix

+
    +
  • Fix vector constructor ambiguity in H5DataType.hpp (#775). Thanks to @hn-sl.
  • +
  • getElementCount() fixed. (#787)
  • +
  • Remove leak when calling dtor of CompoundType. (#798)
  • +
+

Version 2.7.1 - 2023-04-04

+

Bug Fix

+
    +
  • Revert removing #include "H5FileDriver.hpp" from H5File.hpp (#711).
  • +
  • Change relative import to "../H5Utility.hpp" (#726).
  • +
  • Fix nameclash with macros on Windows (#717 #722 #723).
  • +
  • Add workaround for MSVC bug (#728).
  • +
  • Don't downgrade the requested C++ standard (#729).
  • +
+

Version 2.7.0 - 2023-03-31

+

New Features

+
    +
  • Properties can now be read (#684).
  • +
  • Adding a property for LinkCreationOrder (#683).
  • +
  • Adding a logging infrastructure (#690).
  • +
  • Support of bool in the way of h5py (#654).
  • +
  • Support std::bool in C++17 mode (#698).
  • +
+

Improvements

+
    +
  • Catch2 move to v3 (#655).
  • +
+

Bug Fix

+
    +
  • To avoid build failure in certain circumstances, user can not set Boost_NO_BOOST_CMAKE (#687).
  • +
  • Fix leak when reading variable length strings (#660).
  • +
  • Use H5free_memory instead of free in error handler (#665). Thanks to Moritz Koenemann.
  • +
  • Fix a bug with old GCC due to templated friend classes (#688).
  • +
  • Fix regression in broadcasting support (#697).
  • +
  • Fix bug related to zero-length datasets (#702).
  • +
+

Version 2.6.2 - 2022-11-10

+

Bug Fix

+
    +
  • Allow CMake to use Config mode to find HDF5.
  • +
+

Version 2.6.1 - 2022-11-08

+

Bug Fix

+
    +
  • Version bump in CMakeLists.txt.
  • +
+

Version 2.6.0 - 2022-11-08

+

New Features

+
    +
  • Enable page buffered reading (#639).
  • +
+

Improvements

+
    +
  • Warn when detecting lossy reads or write of floating point data (#636).
  • +
+

Version 2.5.1 - 2022-11-07

+

Bug Fix

+
    +
  • Fix missing inline for collective metadata properties.
  • +
+

Version 2.5.0 - 2022-11-03

+

New Features

+
    +
  • Enable collective MPI IO using the Data Transfer Property (#623). Thanks to Rob Latham.
  • +
  • Add a support for half-precision (16-bit) floating-point based on the Half library (http://half.sourceforge.net) (#587). Thanks to Sergio Botelh.
  • +
  • Enable choosing the allocation time of datasets (#627).
  • +
  • Add possibility to get and set file space strategy. For page allocated files wrap the API to set/retrieve the page size (#618).
  • +
  • Add API for getting Access and Create property lists of HighFive objects (#629).
  • +
  • Let users configure metadata reads and writes at file level (#624). Thanks to Rob Latham.
  • +
+

Improvements

+
    +
  • MPIOFileDriver is now deprecated. Use FileAccessProps (#622).
  • +
  • Support of block argument in API (#584).
  • +
  • Serialization of types is now automagic and so recursive (#586).
  • +
  • Add an argument to specific File Create Properties in File class construtor (#626).
  • +
+

Bug Fixes

+
    +
  • Padding of Compound Types (#581).
  • +
  • Compilation with Visual Studio with C++17 or later (#578). Thanks to Mark Bicknell.
  • +
  • Avoid leaking when printing stack for error (#583).
  • +
+

Version 2.4.1 - 2022-05-11

+

New Features

+
    +
  • Support std::complex. Thanks to Philipp.
  • +
+

Improvements

+
    +
  • Improve EnumType/CompoundType
  • +
  • Revert quirky behaviour of select(const HyperSlab&).
  • +
  • All get_name functions takes size_t and not hsize_t.
  • +
  • Remove nix recipes.
  • +
+

Bug Fixes

+
    +
  • Computation of padding.
  • +
  • Related to 0 being an invalid hid but not equal to H5I_INVALID_HID.
  • +
+

Version 2.4.0 - 2022-04-05

+

New Features

+
    +
  • Construct a compound type from an already existing hid (#469). Thanks to Maximilian Nöthe.
  • +
  • Add support for long double (#494)
  • +
  • Add support for H5Pset_libver_bounds and H5Pset_meta_block_size support (#500)
  • +
  • New interface to select complex hyperslabs, irregular hyperslabs are limited to/from 1D array (#538 and #545)

    Improvements

    +
  • +
+
    +
  • Use inline where it is needed, otherwise some code can lead to "multiple definition" (#516). Thanks to Chris Byrohl.
  • +
  • Use Catch2 instead of boost for tests, reduces dependencies (#521)
  • +
  • CI reworked to test external libraries more thoroughly (boost, eigen, xtensor) (#536)

    Bug Fixes

    +
  • +
+
    +
  • Better support of const types (#460). Thanks to Philip Deegan.
  • +
  • Vector of size zero was previously lead to UB (#502). Thanks to Haoran Ni.
  • +
  • Use H5T_NATIVE_SCHAR instead of H5T_NATIVE_CHAR for "signed char" (#518)
  • +
+

Version 2.3.1 - 2021-08-04

+

Improvements

+
    +
  • Clean cmake files from old code (#465)
  • +
  • Adding path to type warning message (#471)
  • +
  • Adding compound types example, w dataset and attr (#467)
  • +
+

Bug Fixes

+
    +
  • Resolve an issue where padding of nested compound types were being calculated incorrectly (#461) (#468)
  • +
  • GHA: drop previous runs (#462)
  • +
+

Version 2.3 - 2021-05-07

+

New Features:

+
    +
  • Add SZIP support (#435)
  • +
  • Add option parents to createDataSet (#425)
  • +
  • Implementing getting the filename dynamically (#424)
  • +
  • Ability to create soft and external links (#421)
  • +
  • Generalizing getPath and adding getFile as PathTraits (#417)
  • +
+

Improvements:

+
    +
  • Unified reading/writing attributes and datasets (#450)
  • +
  • Old compilers have been removed from docker image (#430)
  • +
  • Cleaning up and improving property lists (#429)
  • +
  • An example using hdf5 references (#396) (#397)
  • +
  • Add all property lists alias for completeness (#427)
  • +
  • Add property CreateIntermediateGroup (#423)
  • +
  • Add code coverage through codecov.io (#420)
  • +
  • Introducing GitHub Actions CI (#416)
  • +
  • Create issue and PR templates (#412)
  • +
  • Initialize SilenceHDF5 to true in _exist (#411)
  • +
  • Generalizing xtensor API (#407)
  • +
  • Minor doc updates (#409)
  • +
  • Fixing minor error in GH Action (#408)
  • +
  • Uploading docs to gh-pages using GitHub Actions (#403)
  • +
  • Various minor documentation updates (#405)
  • +
  • optional documentation building in cmake (#377)
  • +
  • From can be automatic now (#384)
  • +
  • get_dim_vector in inspector (#383)
  • +
  • Put type_of_array in inspector (#382)
  • +
  • Move array_dims in the future manipulator (#381)
  • +
  • Unify interface of H5Attribute with H5Slice_traits (#378)
  • +
  • Use std::move in NRVO depending of version of GCC (#375)
  • +
  • Fixed typo '-DD' to '-D' in 'Dependencies'. (#371)
  • +
  • Changing date format (#364)
  • +
+

Bug fixes:

+
    +
  • Fix use before initialization (#414)
  • +
  • Adding CMake include guard (#389)
  • +
+

Version 2.2.2 - 2020-07-30

+

New Features:

+
    +
  • [H5Easy] Adding OpenCV support (#343)
  • +
  • [H5Easy] Enabling compression & Adding attributes (#337)
  • +
  • Adding missing function to H5Attribute (#337)
  • +
  • Add methods to retrieve Node paths or Dataset names and rename objects (#346)
  • +
  • Add a file with the current version number of HighFive (#349)
  • +
+

Improvements

+
    +
  • [H5Easy] Updating error message dump (#335)
  • +
  • [H5Easy] Switching implementation to partial specialization based on static dispatch (#327)
  • +
  • Simplifying imports, new policy (#324)
  • +
+

Version 2.2.1 - 2020-04-28

+

Improvements

+
    +
  • Add a mechanism to not include target HighFive several times (#336)
  • +
  • Fix SilenceHDF5 initialization for NodeTraits (#333)
  • +
+

Version 2.2 - 2020-03-23

+

New Features:

+
    +
  • Compound Types: API to register and read/write structs (#78). Thanks to Richard Shaw.
  • +
  • Fixed-length strings. API via char[] and FixedLenStringArray(#277)
  • +
  • Enum data types (#297)
  • +
  • Datasets of HDF5 References. Support to dereference groups and datasets (#306)
  • +
  • Objects (hard/soft link) can now be deleted with unlink (#284). Thanks to Tom Vander Aa.
  • +
  • Attributes can be deleted with deleteAttribute (#239)
  • +
+

Improvements:

+
    +
  • Attributes (metadata) now support additional types (#298)
  • +
  • H5Easy: Reworked for compatibility with Eigen::ref and Eigen::Map (#291, #293)
  • +
  • Hdf5 1.12 compatibility: working Object::getInfo and marking getAddress deprecated (#311)
  • +
  • Strict compatibility with CMake 3.1 and C++11 (#304)
  • +
  • CMake: Dependencies may be re-detected on FindPackage, fixed export targets and added integration tests (#255, #304, #312, #317)
  • +
  • Support for array of Eigen::Matrix (#258)
  • +
  • Selection: ElementSet working for N-dimensions (#247)
  • +
+

Bug Fixes:

+
    +
  • Shortcut syntax with c arrays (#273)
  • +
  • Compatibility with in MSVC (Exception messages #263 and avoid throwing in exist check #308)
  • +
+

Version 2.1 - 2019-10-30

+

New Features:

+
    +
  • Inspection: API to get the type of links/objects and datasets data-types (#221)
  • +
  • H5Easy: API for simple import/export to Eigen and xtensor (#141)
  • +
  • Support for chunk and deflate configuration at dataset creation/open (#125). Added generic RawPropertyLists. (#157)
  • +
  • Recursive createGroup and exist (#152)
  • +
  • Shortcut syntax: ability to create a filled dataset in a single line (#130)
  • +
  • DataSet now accepts std::complex and std::array's (#128, #129)
  • +
+

Improvements:

+
    +
  • Improved compat with MSVC and ICC compilers
  • +
  • CMake build system: modernized, create exported targets, better messages, etc.
  • +
  • Building and publishing documentation: https://bluebrain.github.io/HighFive/
  • +
  • Several other. See #231
  • +
+

Bug Fixes:

+
    +
  • Fixed header dependencies. They are now all include-able (#225)
  • +
  • Fixed read/write of N-Dimensional data as nested vectors (#191)
  • +
  • Fixed data broadcasting for reading (#136)
  • +
+

Version 2.0 - 2018-07-19

+
    +
  • First version with C++11 enforcement
  • +
  • Support for property list
  • +
  • Support for Chunking
  • +
  • Support for Compression / Deflate
  • +
  • Fix: missing move constructor for properties
  • +
  • Fix: typo in MPI IO driver
  • +
  • Fix: several typo fixes
  • +
  • Fix: Add missing include
  • +
+

Version 1.5 - 2018-01-06

+
    +
  • SliceTraits::read split in two overloads, the first one for plain C arrays and the second one for other types.
  • +
  • Add support for complex number
  • +
  • Add exist() method to the API
  • +
  • Will be last release before 2.0 and enforcement of C++11
  • +
+

Version 1.4 - 2017-08-25

+
    +
  • Support id selection for the select function
  • +
  • Suport STL containers of const elements
  • +
  • Support scalar values and strings management
  • +
  • Fix attribute assignment issue #40
  • +
  • Fix Object assignment operator missing unref (possible memory leak )
  • +
  • Introduce SilenceHDF5 for HDF5 error report
  • +
  • Fix a unit test issue with SilenceHDF5
  • +
+

Version 1.3 - 2017-06-21

+
    +
  • Minor fixes
  • +
+

Version 1.2 - 2017-04-03

+
    +
  • Add Attribute support for Dataset
  • +
  • Extend testing of Attribute support
  • +
  • Fix issue related to multiple definitions in default driver
  • +
  • Add more examples about attribute support
  • +
+

Version 1.1 - 2017-03-23

+
    +
  • Add support and examples for Parallel HDF5
  • +
  • Initial implementation for H5 Properties
  • +
  • Support for Attributes
  • +
  • Improve documentation
  • +
  • Add example for boost.Ublas matrix support
  • +
+

Version 1.0 - Init

+
    +
  • Initial release
  • +
+
+
+
+ + + + diff --git a/md__2home_2runner_2work_2_high_five_2_high_five_2doc_2developer__guide.html b/md__2home_2runner_2work_2_high_five_2_high_five_2doc_2developer__guide.html new file mode 100644 index 000000000..0aa4f39cc --- /dev/null +++ b/md__2home_2runner_2work_2_high_five_2_high_five_2doc_2developer__guide.html @@ -0,0 +1,150 @@ + + + + + + + +HighFive: Developer Guide + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Developer Guide
+
+
+

First clone the repository and remember the --recursive:

git clone --recursive git@github.com:BlueBrain/HighFive.git
+

The instructions to recover if you forgot are:

git submodule update --init --recursive
+

One remark on submodules: each HighFive commit expects that the submodules are at a particular commit. The catch is that performing git checkout will not update the submodules automatically. Hence, sometimes a git submodule update --recursive might be needed to checkout the expected version of the submodules.

+

Compiling and Running the Tests

+

The instructions for compiling with examples and unit-tests are:

+
cmake -B build -DCMAKE_BUILD_TYPE={Debug,Release} .
+
cmake --build build --parallel
+
ctest --test-dir build
+

You might want to turn off Boost -DHIGHFIVE_USE_BOOST=Off or turn on other optional dependencies.

+

Contributing

+

There's numerous HDF5 features that haven't been wrapped yet. HighFive is a collaborative effort to slowly cover ever larger parts of the HDF5 library. The process of contributing is to fork the repository and then create a PR. Please ensure that any new API is appropriately documented and covered with tests.

+

Code formatting

+

The project is formatted using clang-format version 12.0.1 and CI will complain if a commit isn't formatted accordingly. The .clang-format is at the root of the git repository. Conveniently, clang-format is available via pip:

+
python -m venv venv
+
source venv/bin/activate
+
+
pip install clang-format==12.0.1
+

The changed lines can be formatted with git-clang-format, e.g. to format all lines changed compared to master:

+
git-clang-format master
+

(add -f to allow formatting unstaged changes if you trust it to not destroy your changes.)

+

Releasing HighFive

+

Before releasing a new version perform the following:

+ +

At this point there should be a commit on master which will be the release candidate. Don't tag it yet.

+

Next step is to update the HighFive/spack recipe such that the proposed version points to the release candidate using the SHA of that commit. The recipe will look something like this:

+
# ...
+
+
version("2.8.0", commit="094400f22145bcdcd2726ce72888d9d1c21e7068")
+
version("2.7.1", sha256="25b4c51a94d1e670dc93b9b73f51e79b65d8ff49bcd6e5d5582d5ecd2789a249")
+
version("2.7.0", sha256="8e05672ddf81a59ce014b1d065bd9a8c5034dbd91a5c2578e805ef880afa5907")
+
# ...
+

Push the changes to the BlueBrain spack repository. This will trigger building all BBP dependencies of HighFive, i.e. another integration test. Don't actually merge this commit yet.

+

Now that we know that the integration test ran, and all BBP software can be built with the proposed version of HighFive, we can proceed and create the release. Once this is done perform a final round of updates:

+
    +
  • Download the archive (*.tar.gz) and compute its SHA256.
  • +
  • Update BlueBrain Spack recipe to use the archive and not the Git commit.
  • +
  • Update the upstream Spack recipe.
  • +
+
+
+
+ + + + diff --git a/md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html b/md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html new file mode 100644 index 000000000..824dafb82 --- /dev/null +++ b/md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html @@ -0,0 +1,221 @@ + + + + + + + +HighFive: Beginners Installation Guide on Linux + + + + + + + + + + + + + + +
+
+ + + + + + +
+
HighFive 2.8.0 +
+
HighFive - Header-only C++ HDF5 interface
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+
+
+
+
+
Loading...
+
Searching...
+
No Matches
+
+
+
+
+ +
+
Beginners Installation Guide on Linux
+
+
+

These installation instruction are aimed at developers that aren't very familiar with installing C/C++ software and using CMake on Linux.

+

Obtaining CMake

+

You'll need a compiler and CMake. We'll assume that a reasonably modern C++ compiler is available. Often a sufficiently new version CMake is also present on the system.

+

If not, there's two options: use the system package manager or use pip. CMake is improving in leaps and bounds. Which means you want a recent version. We suggest reconsidering fighting an older version of CMake if you can simply install the newest version via pip.

+

Obtaining HDF5

+

First, you need to decide if you need MPI-support. Rule of thumb is: if you're unsure, then you don't need it. If you need MPI you must install an MPI-enabled version of HDF5. Otherwise pick either one, if something is already installed, e.g. because h5py was installed as a system package, stick with that version.

+

The options for installing HDF5 are:

    +
  1. Use the system package manager.
  2. +
  3. On a cluster use modules.
  4. +
  5. Use Spack.
  6. +
  7. Use Conan.
  8. +
  9. Manually install it.
  10. +
+

The system package manager will install HDF5 in a default location, were CMake will later be able to find it without further help. All the other approaches install into a non-default location and CMake might need help locating HDF5. The way one tells CMake where to find HDF5 is through CMAKE_PREFIX_PATH, e.g.,

cmake -DCMAKE_PREFIX_PATH="${HDF5_ROOT}" ...
+

Note that ${HDF5_ROOT} points to the folder which contains the two folders include and lib.

+

System Package Manager

+

The default choice is to use the system package manager to install HDF5. One thing to keep an eye out is that certain Linux distributions don't install the headers automatically. Since you're about to develop an application which (indirectly) uses HDF5, you need those headers. If the packages are split, the development package is often suffixed with -dev or -devel.

+

Ubuntu

+

The package manager is apt. To install the HDF5 C library without MPI support:

sudo apt-get install libhdf5-dev
+

for MPI support you'd install libhdf5-openmpi-dev.

+

ArchLinux

+

On ArchLinux you install

sudo pacman -S hdf5
+

or hdf5-openmpi for HDF5 with OpenMPI support.

+

Using Modules

+

If you're on a cluster, HDF5 has almost certainly been installed for you. Figure out how to use it. This is the preferred solution on clusters. As always, the precise instructions depend on the cluster, but something like

module load hdf5
+

will probably be part of the solution. Try if module avail helps. Otherwise, you'd need to check the documentation for your cluster. Cluster admins like to hide the good stuff, i.e. modern versions, behind another package "new" or some other mechanism.

+

You might need to know where HDF5 has been installed. You can find out what a module does by typing

module show hdf5
+

If it contains something about prepending to CMAKE_PREFIX_PATH, then CMake should find the correct version automatically after loading the module.

+

Using Spack

+

If neither of the above work, the next best choice might be Spack. It's a package manager for scientific computing. The general idea behind it is to avoid dependency issues by compiling a compatible set of everything.

+

Obtain Spack by cloning their repo:

git clone https://github.com/spack/spack.git
+

Activate Spack by sourcing a magic file:

source spack/share/spack/setup-env.sh
+

which will put the command spack into your PATH. Okay, now we're set. First step is to create an environment for your project, which we'll call useful:

spack env create useful
+spack env activate -p useful
+spack add hdf5
+spack install --jobs NPROC
+

If you need MPI support use hdf5+mpi instead. The location of the HDF5 installation is spack location --install-dir hdf5.

+

Conan

+

If Spack doesn't work, you can try Conan.

+

Manually Install HDF5

+

If all else fails, you can try to manually install HDF5. First you need to obtain the source code. For example by using git or by downloading an archive from their webpage.

git clone https://github.com/HDFGroup/hdf5
+cd hdf5
+git checkout hdf5-1_14_0
+

Now, fingers crossed it'll compile and install:

cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=../hdf5-v1.14.0 -B build .
+cmake --build build --parallel [NPROC]
+cmake --install build
+

Note that here we picked the installation path (or more precisely prefix) to be ../hdf5-v1.14.0. You might want to install HDF5 somewhere else. This installation prefix is the also the path you need to give CMake so it's able to find HDF5 later on.

+

Confirming HDF5 Has Been Installed

+

For this purpose we need a dummy file dummy.cpp to compile:

#include <hdf5.h>
+
+int main() {
+  auto file = H5Fcreate("foo.h5", H5F_ACC_EXCL, H5P_DEFAULT, H5P_DEFAULT);
+  H5Fclose(file);
+  return 0;
+}
+

and a CMakeLists.txt with the following contents

cmake_minimum_required(VERSION 3.19)
+project(Dummy)
+
+find_package(HDF5 REQUIRED)
+add_executable(dummy dummy.cpp)
+target_link_libraries(dummy HDF5::HDF5)
+

Now run CMake to configure the build system and keep an eye out for some a line related to HDF5, e.g.

$ cmake -B build .
+...
+-- Found HDF5: hdf5-shared (found version "1.14.0")
+...
+

Compile and check that it's doing something with sensible

$ cmake -build build --verbose
+[ 50%] Building CXX object CMakeFiles/dummy.dir/dummy.cpp.o
+/usr/bin/c++ ... -isystem ${HDF5_ROOT}/include ... -c ${PWD}/dummy.cpp
+[100%] Linking CXX executable dummy
+/usr/bin/c++ ... -o dummy -Wl,-rpath,${HDF5_ROOT}/lib ${HDF5_ROOT}/lib/libhdf5.so.310.0.0 ...
+

mostly you're checking that the paths are what you'd expect them to be. If this command was successful, chances are high that HDF5 is properly installed and you've figured out the correct CMake invocations. If you want you can run the executable:

build/dummy
+

which would create an empty file foo.h5.

+

Obtaining HighFive

+

In principle the same instruction as for HDF5 can be used. However, HighFive is much less popular compared to HDF5 and therefore the system package manager likely doesn't know about it, nor does Conan. You're left with Spack and the manual process. It seems someone has done the wonderful work of adding HighFive to conda-forge, so maybe that's also an option.

+

Git Submodules

+

This is the well-tested method for "vendoring" HighFive, i.e. including the HighFive sources with those of you project.

+

Spack

+

Similarly as for HDF5, you can use Spack to install HighFive:

spack env activate -p useful
+spack add highfive
+spack install --jobs NPROC
+

Again spack location --install-dir highfive will return the path where HighFive was installed. Since the Spack recipe of HighFive declares HDF5 as a dependency, technically, it's not necessary to add hdf5, just highfive is enough.

+

Manually Install HighFive

+

Just like before the steps are, clone, configure, compile (kinda a no-op), install. The detailed instructions would be

git clone --recursive https://github.com/BlueBrain/HighFive.git
+cd HighFive
+git checkout v2.8.0
+

If it complains that Catch is missing, you forgot the --recursive. To fix this you type

git submodule update --init --recursive
+

Okay, on to configure, compile and install. The CMake commands are

cmake -DCMAKE_INSTALL_PREFIX=../highfive-v2.7.1 -DHIGHFIVE_USE_BOOST=Off -B build .
+cmake --build build --parallel
+cmake --install build
+

Confirming It Works

+

We again need a dummy file called dummy.cpp with the following contents

#include <highfive/highfive.hpp>
+
+int main() {
+  auto file = HighFive::File("foo.h5", HighFive::File::Create);
+  return 0;
+}
+

and the following CMakeLists.txt:

cmake_minimum_required(VERSION 3.19)
+project(UseHighFive)
+
+find_package(HighFive REQUIRED)
+add_executable(dummy dummy.cpp)
+target_link_libraries(dummy HighFive)
+

The required CMake commands are:

$ cmake -DCMAKE_PREFIX_PATH="${HDF5_ROOT};${HIGHFIVE_ROOT}" -B build .
+...
+-- HIGHFIVE 2.7.1: (Re)Detecting Highfive dependencies (HIGHFIVE_USE_INSTALL_DEPS=NO)
+-- Found HDF5: hdf5-shared (found version "1.14.0")
+...
+
+$ cmake --build build --verbose
+[ 50%] Building CXX object CMakeFiles/dummy.dir/dummy.cpp.o
+/usr/bin/c++ ... -isystem ${HIGHFIVE_ROOT}/include -isystem ${HDF5_ROOT}/include ... -c dummy.cpp
+[100%] Linking CXX executable dummy
+/usr/bin/c++ ... -o dummy -Wl,-rpath,${HDF5_ROOT}/lib ${HDF5_ROOT}/lib/libhdf5.so.310.0.0 ...
+

Pay attention to the semi-colon (not colon like the rest of Linux) used to separate directories in CMAKE_PREFIX_PATH. If this worked you should be set to either copy the instruction to your "real" project, or start developing the rest of your project.

+
+
+
+ + + + diff --git a/menu.js b/menu.js new file mode 100644 index 000000000..b0b26936a --- /dev/null +++ b/menu.js @@ -0,0 +1,136 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { + function makeTree(data,relPath) { + var result=''; + if ('children' in data) { + result+='
    '; + for (var i in data.children) { + var url; + var link; + link = data.children[i].url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + } else { + url = relPath+link; + } + result+='
  • '+ + data.children[i].text+''+ + makeTree(data.children[i],relPath)+'
  • '; + } + result+='
'; + } + return result; + } + var searchBoxHtml; + if (searchEnabled) { + if (serverSide) { + searchBoxHtml='
'+ + '
'+ + '
 '+ + ''+ + '
'+ + '
'+ + '
'+ + '
'; + } else { + searchBoxHtml='
'+ + ''+ + ' '+ + ''+ + ''+ + ''+ + ''+ + ''+ + '
'; + } + } + + $('#main-nav').before('
'+ + ''+ + ''+ + '
'); + $('#main-nav').append(makeTree(menudata,relPath)); + $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu'); + if (searchBoxHtml) { + $('#main-menu').append('
  • '); + } + var $mainMenuState = $('#main-menu-state'); + var prevWidth = 0; + if ($mainMenuState.length) { + function initResizableIfExists() { + if (typeof initResizable==='function') initResizable(); + } + // animate mobile menu + $mainMenuState.change(function(e) { + var $menu = $('#main-menu'); + var options = { duration: 250, step: initResizableIfExists }; + if (this.checked) { + options['complete'] = function() { $menu.css('display', 'block') }; + $menu.hide().slideDown(options); + } else { + options['complete'] = function() { $menu.css('display', 'none') }; + $menu.show().slideUp(options); + } + }); + // set default menu visibility + function resetState() { + var $menu = $('#main-menu'); + var $mainMenuState = $('#main-menu-state'); + var newWidth = $(window).outerWidth(); + if (newWidth!=prevWidth) { + if ($(window).outerWidth()<768) { + $mainMenuState.prop('checked',false); $menu.hide(); + $('#searchBoxPos1').html(searchBoxHtml); + $('#searchBoxPos2').hide(); + } else { + $menu.show(); + $('#searchBoxPos1').empty(); + $('#searchBoxPos2').html(searchBoxHtml); + $('#searchBoxPos2').show(); + } + if (typeof searchBox!=='undefined') { + searchBox.CloseResultsWindow(); + } + prevWidth = newWidth; + } + } + $(window).ready(function() { resetState(); initResizableIfExists(); }); + $(window).resize(resetState); + } + $('#main-menu').smartmenus(); +} +/* @license-end */ diff --git a/menudata.js b/menudata.js new file mode 100644 index 000000000..328c5d9d9 --- /dev/null +++ b/menudata.js @@ -0,0 +1,109 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file +*/ +var menudata={children:[ +{text:"Main Page",url:"index.html"}, +{text:"Related Pages",url:"pages.html"}, +{text:"Namespaces",url:"namespaces.html",children:[ +{text:"Namespace List",url:"namespaces.html"}, +{text:"Namespace Members",url:"namespacemembers.html",children:[ +{text:"All",url:"namespacemembers.html",children:[ +{text:"a",url:"namespacemembers.html#index_a"}, +{text:"c",url:"namespacemembers.html#index_c"}, +{text:"d",url:"namespacemembers.html#index_d"}, +{text:"f",url:"namespacemembers.html#index_f"}, +{text:"g",url:"namespacemembers.html#index_g"}, +{text:"i",url:"namespacemembers.html#index_i"}, +{text:"l",url:"namespacemembers.html#index_l"}, +{text:"o",url:"namespacemembers.html#index_o"}, +{text:"p",url:"namespacemembers.html#index_p"}, +{text:"r",url:"namespacemembers.html#index_r"}, +{text:"s",url:"namespacemembers.html#index_s"}, +{text:"t",url:"namespacemembers.html#index_t"}, +{text:"u",url:"namespacemembers.html#index_u"}]}, +{text:"Functions",url:"namespacemembers_func.html"}, +{text:"Typedefs",url:"namespacemembers_type.html"}, +{text:"Enumerations",url:"namespacemembers_enum.html"}]}]}, +{text:"Classes",url:"annotated.html",children:[ +{text:"Class List",url:"annotated.html"}, +{text:"Class Index",url:"classes.html"}, +{text:"Class Hierarchy",url:"inherits.html"}, +{text:"Class Members",url:"functions.html",children:[ +{text:"All",url:"functions.html",children:[ +{text:"_",url:"functions.html#index__5F"}, +{text:"a",url:"functions_a.html#index_a"}, +{text:"b",url:"functions_b.html#index_b"}, +{text:"c",url:"functions_c.html#index_c"}, +{text:"d",url:"functions_d.html#index_d"}, +{text:"e",url:"functions_e.html#index_e"}, +{text:"f",url:"functions_f.html#index_f"}, +{text:"g",url:"functions_g.html#index_g"}, +{text:"h",url:"functions_h.html#index_h"}, +{text:"i",url:"functions_i.html#index_i"}, +{text:"l",url:"functions_l.html#index_l"}, +{text:"m",url:"functions_m.html#index_m"}, +{text:"n",url:"functions_n.html#index_n"}, +{text:"o",url:"functions_o.html#index_o"}, +{text:"p",url:"functions_p.html#index_p"}, +{text:"r",url:"functions_r.html#index_r"}, +{text:"s",url:"functions_s.html#index_s"}, +{text:"t",url:"functions_t.html#index_t"}, +{text:"u",url:"functions_u.html#index_u"}, +{text:"v",url:"functions_v.html#index_v"}, +{text:"w",url:"functions_w.html#index_w"}, +{text:"~",url:"functions_~.html#index__7E"}]}, +{text:"Functions",url:"functions_func.html",children:[ +{text:"_",url:"functions_func.html#index__5F"}, +{text:"a",url:"functions_func_a.html#index_a"}, +{text:"b",url:"functions_func_b.html#index_b"}, +{text:"c",url:"functions_func_c.html#index_c"}, +{text:"d",url:"functions_func_d.html#index_d"}, +{text:"e",url:"functions_func_e.html#index_e"}, +{text:"f",url:"functions_func_f.html#index_f"}, +{text:"g",url:"functions_func_g.html#index_g"}, +{text:"h",url:"functions_func_h.html#index_h"}, +{text:"i",url:"functions_func_i.html#index_i"}, +{text:"l",url:"functions_func_l.html#index_l"}, +{text:"m",url:"functions_func_m.html#index_m"}, +{text:"n",url:"functions_func_n.html#index_n"}, +{text:"o",url:"functions_func_o.html#index_o"}, +{text:"p",url:"functions_func_p.html#index_p"}, +{text:"r",url:"functions_func_r.html#index_r"}, +{text:"s",url:"functions_func_s.html#index_s"}, +{text:"t",url:"functions_func_t.html#index_t"}, +{text:"u",url:"functions_func_u.html#index_u"}, +{text:"v",url:"functions_func_v.html#index_v"}, +{text:"w",url:"functions_func_w.html#index_w"}, +{text:"~",url:"functions_func_~.html#index__7E"}]}, +{text:"Variables",url:"functions_vars.html"}, +{text:"Typedefs",url:"functions_type.html"}, +{text:"Enumerations",url:"functions_enum.html"}, +{text:"Enumerator",url:"functions_eval.html"}, +{text:"Related Symbols",url:"functions_rela.html"}]}]}, +{text:"Files",url:"files.html",children:[ +{text:"File List",url:"files.html"}, +{text:"File Members",url:"globals.html",children:[ +{text:"All",url:"globals.html"}, +{text:"Macros",url:"globals_defs.html"}]}]}, +{text:"Github Page",url:"^https://github.com/BlueBrain/HighFive"}]} diff --git a/minus.svg b/minus.svg new file mode 100644 index 000000000..f70d0c1a1 --- /dev/null +++ b/minus.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/minusd.svg b/minusd.svg new file mode 100644 index 000000000..5f8e87962 --- /dev/null +++ b/minusd.svg @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/namespace_h5_easy.html b/namespace_h5_easy.html new file mode 100644 index 000000000..be1daf80f --- /dev/null +++ b/namespace_h5_easy.html @@ -0,0 +1,1034 @@ + + + + + + + +HighFive: H5Easy Namespace Reference + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    + +
    H5Easy Namespace Reference
    +
    +
    + +

    Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept: +More...

    + + + + + + + + +

    +Classes

    class  Compression
     Signal to set compression level for written DataSets. More...
     
    class  DumpOptions
     Define options for dumping data. More...
     
    + + + + + + + +

    +Enumerations

    enum class  DumpMode { Create = 0 +, Overwrite = 1 + }
     Write mode for DataSets. More...
     
    enum class  Flush { False = 0 +, True = 1 + }
     Signal to enable/disable automatic flushing after write operations. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    size_t getSize (const File &file, const std::string &path)
     Get the size of an existing DataSet in an open HDF5 file.
     
    std::vector< size_t > getShape (const File &file, const std::string &path)
     Get the shape of an existing DataSet in an readable file.
     
    template<class T >
    DataSet dump (File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)
     Write object (templated) to a (new) DataSet in an open HDF5 file.
     
    template<class T >
    DataSet dump (File &file, const std::string &path, const T &data, const DumpOptions &options)
     Write object (templated) to a (new) DataSet in an open HDF5 file.
     
    template<class T >
    DataSet dump (File &file, const std::string &path, const T &data, const std::vector< size_t > &idx)
     Write a scalar to a (new, extendible) DataSet in an open HDF5 file.
     
    template<class T >
    DataSet dump (File &file, const std::string &path, const T &data, const std::initializer_list< size_t > &idx)
     Write a scalar to a (new, extendable) DataSet in an open HDF5 file.
     
    template<class T >
    DataSet dump (File &file, const std::string &path, const T &data, const std::vector< size_t > &idx, const DumpOptions &options)
     Write a scalar to a (new, extendible) DataSet in an open HDF5 file.
     
    template<class T >
    DataSet dump (File &file, const std::string &path, const T &data, const std::initializer_list< size_t > &idx, const DumpOptions &options)
     Write a scalar to a (new, extendible) DataSet in an open HDF5 file.
     
    template<class T >
    load (const File &file, const std::string &path, const std::vector< size_t > &idx)
     Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.
     
    template<class T >
    load (const File &file, const std::string &path)
     Load a DataSet in an open HDF5 file to an object (templated).
     
    template<class T >
    Attribute dumpAttribute (File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)
     Write object (templated) to a (new) Attribute in an open HDF5 file.
     
    template<class T >
    Attribute dumpAttribute (File &file, const std::string &path, const std::string &key, const T &data, const DumpOptions &options)
     Write object (templated) to a (new) Attribute in an open HDF5 file.
     
    template<class T >
    loadAttribute (const File &file, const std::string &path, const std::string &key)
     Load a Attribute in an open HDF5 file to an object (templated).
     
    +

    Detailed Description

    +

    Read/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:

    +
      +
    • Any type accepted by HighFive
    • +
    • Eigen objects
    • +
    • xtensor objects
    • +
    • OpenCV objects
    • +
    +

    Enumeration Type Documentation

    + +

    ◆ DumpMode

    + +
    +
    + + + + + +
    + + + + +
    enum class H5Easy::DumpMode
    +
    +strong
    +
    + +

    Write mode for DataSets.

    + + + +
    Enumerator
    Create 

    Dump only if DataSet does not exist, otherwise throw.

    +
    Overwrite 

    Create or overwrite if DataSet of correct shape exists, otherwise throw.

    +
    + +
    +
    + +

    ◆ Flush

    + +
    +
    + + + + + +
    + + + + +
    enum class H5Easy::Flush
    +
    +strong
    +
    + +

    Signal to enable/disable automatic flushing after write operations.

    + + + +
    Enumerator
    False 

    No automatic flushing.

    +
    True 

    Automatic flushing.

    +
    + +
    +
    +

    Function Documentation

    + +

    ◆ dump() [1/6]

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    DataSet H5Easy::dump (Filefile,
    const std::string & path,
    const T & data,
    const DumpOptionsoptions 
    )
    +
    +inline
    +
    + +

    Write object (templated) to a (new) DataSet in an open HDF5 file.

    +
    Parameters
    + + + + + +
    fileopened file (has to be writeable)
    pathpath of the DataSet
    datathe data to write (any supported type)
    optionsdump options
    +
    +
    +
    Returns
    The newly created DataSet
    + +
    +
    + +

    ◆ dump() [2/6]

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    DataSet H5Easy::dump (Filefile,
    const std::string & path,
    const T & data,
    const std::initializer_list< size_t > & idx 
    )
    +
    +inline
    +
    + +

    Write a scalar to a (new, extendable) DataSet in an open HDF5 file.

    +
    Parameters
    + + + + + +
    fileopen File (has to be writeable)
    pathpath of the DataSet
    datathe data to write (any supported type)
    idxthe indices to which to write
    +
    +
    +
    Returns
    The newly created DataSet
    + +
    +
    + +

    ◆ dump() [3/6]

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    DataSet H5Easy::dump (Filefile,
    const std::string & path,
    const T & data,
    const std::initializer_list< size_t > & idx,
    const DumpOptionsoptions 
    )
    +
    +inline
    +
    + +

    Write a scalar to a (new, extendible) DataSet in an open HDF5 file.

    +
    Parameters
    + + + + + + +
    fileopened file (has to be writeable)
    pathpath of the DataSet
    datathe data to write (any supported type)
    idxthe indices to which to write
    optionsdump options
    +
    +
    +
    Returns
    The newly created DataSet
    + +
    +
    + +

    ◆ dump() [4/6]

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    DataSet H5Easy::dump (Filefile,
    const std::string & path,
    const T & data,
    const std::vector< size_t > & idx 
    )
    +
    +inline
    +
    + +

    Write a scalar to a (new, extendible) DataSet in an open HDF5 file.

    +
    Parameters
    + + + + + +
    fileopened file (has to be writeable)
    pathpath of the DataSet
    datathe data to write (any supported type)
    idxthe indices to which to write
    +
    +
    +
    Returns
    The newly created DataSet
    + +
    +
    + +

    ◆ dump() [5/6]

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    DataSet H5Easy::dump (Filefile,
    const std::string & path,
    const T & data,
    const std::vector< size_t > & idx,
    const DumpOptionsoptions 
    )
    +
    +inline
    +
    + +

    Write a scalar to a (new, extendible) DataSet in an open HDF5 file.

    +
    Parameters
    + + + + + + +
    fileopened file (has to be writeable)
    pathpath of the DataSet
    datathe data to write (any supported type)
    idxthe indices to which to write
    optionsdump options
    +
    +
    +
    Returns
    The newly created DataSet
    + +
    +
    + +

    ◆ dump() [6/6]

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    DataSet H5Easy::dump (Filefile,
    const std::string & path,
    const T & data,
    DumpMode mode = DumpMode::Create 
    )
    +
    +inline
    +
    + +

    Write object (templated) to a (new) DataSet in an open HDF5 file.

    +
    Parameters
    + + + + + +
    fileopened file (has to be writeable)
    pathpath of the DataSet
    datathe data to write (any supported type)
    modewrite mode
    +
    +
    +
    Returns
    The newly created DataSet
    + +
    +
    + +

    ◆ dumpAttribute() [1/2]

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Attribute H5Easy::dumpAttribute (Filefile,
    const std::string & path,
    const std::string & key,
    const T & data,
    const DumpOptionsoptions 
    )
    +
    +inline
    +
    + +

    Write object (templated) to a (new) Attribute in an open HDF5 file.

    +
    Parameters
    + + + + + + +
    fileopened file (has to be writeable)
    pathpath of the DataSet
    keyname of the attribute
    datathe data to write (any supported type)
    optionsdump options
    +
    +
    +
    Returns
    The newly created DataSet
    + +
    +
    + +

    ◆ dumpAttribute() [2/2]

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    Attribute H5Easy::dumpAttribute (Filefile,
    const std::string & path,
    const std::string & key,
    const T & data,
    DumpMode mode = DumpMode::Create 
    )
    +
    +inline
    +
    + +

    Write object (templated) to a (new) Attribute in an open HDF5 file.

    +
    Parameters
    + + + + + + +
    fileopened file (has to be writeable)
    pathpath of the DataSet
    keyname of the attribute
    datathe data to write (any supported type)
    modewrite mode
    +
    +
    +
    Returns
    The newly created DataSet
    + +
    +
    + +

    ◆ getShape()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    std::vector< size_t > H5Easy::getShape (const Filefile,
    const std::string & path 
    )
    +
    +inline
    +
    + +

    Get the shape of an existing DataSet in an readable file.

    +
    Parameters
    + + + +
    fileopened file (has to be readable)
    pathPath of the DataSet
    +
    +
    +
    Returns
    the shape of the DataSet
    + +
    +
    + +

    ◆ getSize()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    size_t H5Easy::getSize (const Filefile,
    const std::string & path 
    )
    +
    +inline
    +
    + +

    Get the size of an existing DataSet in an open HDF5 file.

    +
    Parameters
    + + + +
    fileopened file (has to be readable)
    pathpath of the DataSet
    +
    +
    +
    Returns
    Size of the DataSet
    + +
    +
    + +

    ◆ load() [1/2]

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    T H5Easy::load (const Filefile,
    const std::string & path 
    )
    +
    +inline
    +
    + +

    Load a DataSet in an open HDF5 file to an object (templated).

    +
    Parameters
    + + + +
    fileopened file (has to be writeable)
    pathpath of the DataSet
    +
    +
    +
    Returns
    The read data
    + +
    +
    + +

    ◆ load() [2/2]

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    T H5Easy::load (const Filefile,
    const std::string & path,
    const std::vector< size_t > & idx 
    )
    +
    +inline
    +
    + +

    Load entry {i, j, ...} from a DataSet in an open HDF5 file to a scalar.

    +
    Parameters
    + + + + +
    fileopened file (has to be writeable)
    idxthe indices to load
    pathpath of the DataSet
    +
    +
    +
    Returns
    The read data
    + +
    +
    + +

    ◆ loadAttribute()

    + +
    +
    +
    +template<class T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    T H5Easy::loadAttribute (const Filefile,
    const std::string & path,
    const std::string & key 
    )
    +
    +inline
    +
    + +

    Load a Attribute in an open HDF5 file to an object (templated).

    +
    Parameters
    + + + + +
    fileopened file (has to be writeable)
    pathpath of the DataSet
    keyname of the attribute
    +
    +
    +
    Returns
    The read data
    + +
    +
    +
    +
    + + + + diff --git a/namespace_h5_easy.js b/namespace_h5_easy.js new file mode 100644 index 000000000..aed670dd5 --- /dev/null +++ b/namespace_h5_easy.js @@ -0,0 +1,26 @@ +var namespace_h5_easy = +[ + [ "Compression", "class_h5_easy_1_1_compression.html", "class_h5_easy_1_1_compression" ], + [ "DumpOptions", "class_h5_easy_1_1_dump_options.html", "class_h5_easy_1_1_dump_options" ], + [ "DumpMode", "namespace_h5_easy.html#a6d10754b7f2ada9e3296560032dd81a0", [ + [ "Create", "namespace_h5_easy.html#a6d10754b7f2ada9e3296560032dd81a0a686e697538050e4664636337cc3b834f", null ], + [ "Overwrite", "namespace_h5_easy.html#a6d10754b7f2ada9e3296560032dd81a0ada364eb37e143f6b2b5559aa03f5913a", null ] + ] ], + [ "Flush", "namespace_h5_easy.html#af71ce7ab9b99227bdead69993d1f3b62", [ + [ "False", "namespace_h5_easy.html#af71ce7ab9b99227bdead69993d1f3b62af8320b26d30ab433c5a54546d21f414c", null ], + [ "True", "namespace_h5_easy.html#af71ce7ab9b99227bdead69993d1f3b62af827cf462f62848df37c5e1e94a4da74", null ] + ] ], + [ "dump", "namespace_h5_easy.html#a7614d902c22b74a18fb29c42599a6785", null ], + [ "dump", "namespace_h5_easy.html#a2e96c80337866b79777e52faa7d692cc", null ], + [ "dump", "namespace_h5_easy.html#a5f0af85e0fe3ac03af665dae2a3e9e16", null ], + [ "dump", "namespace_h5_easy.html#a727340de29b032fa860412f6a69f215c", null ], + [ "dump", "namespace_h5_easy.html#a26be50f813db9257d77b0c25adfdf726", null ], + [ "dump", "namespace_h5_easy.html#a3d74bc6b96493dbef4fb3b4e237cff88", null ], + [ "dumpAttribute", "namespace_h5_easy.html#a4a395eb642d1a2d5055282dacf32ee94", null ], + [ "dumpAttribute", "namespace_h5_easy.html#a85cad90855dbb23ba985be58b447a6b2", null ], + [ "getShape", "namespace_h5_easy.html#aa178d03fd7b8d435b5b41f613c1eaa8b", null ], + [ "getSize", "namespace_h5_easy.html#a225c8cffbe78d15254ecde0c8a42958b", null ], + [ "load", "namespace_h5_easy.html#a35bd0e824fe3dca2e2d9f9b5e42a18aa", null ], + [ "load", "namespace_h5_easy.html#a97ce3122b92fcf8322ed7e8c460c6862", null ], + [ "loadAttribute", "namespace_h5_easy.html#a6dc2a2016da5196913ab7036700006fa", null ] +]; \ No newline at end of file diff --git a/namespace_high_five.html b/namespace_high_five.html new file mode 100644 index 000000000..9290df8d3 --- /dev/null +++ b/namespace_high_five.html @@ -0,0 +1,1073 @@ + + + + + + + +HighFive: HighFive Namespace Reference + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    + +
    HighFive Namespace Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Classes

    class  AllocationTime
     When are datasets allocated? More...
     
    class  AnnotateTraits
     
    class  AtomicType
     create an HDF5 DataType from a C++ type More...
     
    class  AtomicType< char[StrLen]>
     
    class  AtomicType< FixedLenStringArray< StrLen > >
     
    class  AtomicType< std::complex< T > >
     
    class  Attribute
     Class representing an Attribute of a DataSet or Group. More...
     
    class  AttributeException
     Exception specific to HighFive Attribute interface. More...
     
    class  AttributePhaseChange
     Set threshold for attribute storage. More...
     
    class  Caching
     
    class  Chunking
     
    class  CompoundType
     Create a compound HDF5 datatype. More...
     
    class  CreateIntermediateGroup
     
    struct  CreationOrder
     
    class  DataSet
     Class representing a dataset. More...
     
    class  DataSetException
     Exception specific to HighFive DataSet interface. More...
     
    class  DataSpace
     Class representing the space (dimensions) of a DataSet. More...
     
    class  DataSpaceException
     Exception specific to HighFive DataSpace interface. More...
     
    class  DataType
     HDF5 Data Type. More...
     
    class  DataTypeException
     Exception specific to HighFive DataType interface. More...
     
    class  Deflate
     
    class  ElementSet
     
    class  EnumType
     Create a enum HDF5 datatype. More...
     
    class  EstimatedLinkInfo
     Set hints as to how many links to expect and their average length. More...
     
    class  Exception
     Basic HighFive Exception class. More...
     
    class  File
     File class. More...
     
    class  FileDriver
     file driver base concept More...
     
    class  FileException
     Exception specific to HighFive File interface. More...
     
    class  FileVersionBounds
     Configure the version bounds for the file. More...
     
    class  FixedLengthStringType
     
    class  FixedLenStringArray
     A structure representing a set of fixed-length strings. More...
     
    class  Group
     Represents an hdf5 group. More...
     
    class  GroupException
     Exception specific to HighFive Group interface. More...
     
    struct  HDF5ErrMapper
     
    class  HyperSlab
     
    class  LinkCreationOrder
     Track and index creation order time. More...
     
    class  Logger
     A logger with supporting basic functionality. More...
     
    class  MetadataBlockSize
     Configure the metadata block size to use writing to files. More...
     
    class  MPIOCollectiveMetadata
     Use collective MPI-IO for metadata read and write. More...
     
    class  MPIOCollectiveMetadataRead
     Use collective MPI-IO for metadata read? More...
     
    class  MPIOCollectiveMetadataWrite
     Use collective MPI-IO for metadata write? More...
     
    class  MPIOFileAccess
     Configure MPI access for the file. More...
     
    class  MPIOFileDriver
     MPIIO Driver for Parallel HDF5. More...
     
    class  MpioNoCollectiveCause
     The cause for non-collective I/O. More...
     
    class  NodeTraits
     NodeTraits: Base class for Group and File. More...
     
    class  Object
     
    class  ObjectException
     Exception specific to HighFive Object interface. More...
     
    class  ObjectInfo
     A class for accessing hdf5 objects info. More...
     
    class  PathTraits
     
    class  PropertyException
     Exception specific to HighFive Property interface. More...
     
    class  PropertyList
     HDF5 property Lists. More...
     
    class  PropertyListBase
     Base Class for Property lists, providing global default. More...
     
    class  RawPropertyList
     
    class  Reference
     An HDF5 (object) reference type. More...
     
    class  ReferenceException
     Exception specific to HighFive Reference interface. More...
     
    struct  RegularHyperSlab
     
    class  Selection
     Selection: represent a view on a slice/part of a dataset. More...
     
    class  Shuffle
     
    class  SilenceHDF5
     Utility class to disable HDF5 stack printing inside a scope. More...
     
    class  SliceTraits
     
    class  StringType
     
    class  Szip
     
    class  UseCollectiveIO
     
    class  VariableLengthStringType
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Typedefs

    using float16_t = half_float::half
     
    template<typename T >
    using unqualified_t = typename std::remove_const< typename std::remove_reference< T >::type >::type
     
    using ObjectCreateProps = PropertyList< PropertyType::OBJECT_CREATE >
     
    using FileCreateProps = PropertyList< PropertyType::FILE_CREATE >
     
    using FileAccessProps = PropertyList< PropertyType::FILE_ACCESS >
     
    using DataSetCreateProps = PropertyList< PropertyType::DATASET_CREATE >
     
    using DataSetAccessProps = PropertyList< PropertyType::DATASET_ACCESS >
     
    using DataTransferProps = PropertyList< PropertyType::DATASET_XFER >
     
    using GroupCreateProps = PropertyList< PropertyType::GROUP_CREATE >
     
    using GroupAccessProps = PropertyList< PropertyType::GROUP_ACCESS >
     
    using DataTypeCreateProps = PropertyList< PropertyType::DATATYPE_CREATE >
     
    using DataTypeAccessProps = PropertyList< PropertyType::DATATYPE_ACCESS >
     
    using StringCreateProps = PropertyList< PropertyType::STRING_CREATE >
     
    using AttributeCreateProps = PropertyList< PropertyType::ATTRIBUTE_CREATE >
     
    using ObjectCopyProps = PropertyList< PropertyType::OBJECT_COPY >
     
    using LinkCreateProps = PropertyList< PropertyType::LINK_CREATE >
     
    using LinkAccessProps = PropertyList< PropertyType::LINK_ACCESS >
     
    + + + + + + + + + + + + + + + + + + + + + +

    +Enumerations

    enum class  IndexType : std::underlying_type< H5_index_t >::type { NAME = H5_INDEX_NAME +, CRT_ORDER = H5_INDEX_CRT_ORDER + }
     
    enum class  LinkType { Hard +, Soft +, External +, Other + }
     The possible types of group entries (link concept) More...
     
    enum class  StringPadding : std::underlying_type< H5T_str_t >::type { NullTerminated = H5T_STR_NULLTERM +, NullPadded = H5T_STR_NULLPAD +, SpacePadded = H5T_STR_SPACEPAD + }
     
    enum class  DataTypeClass {
    +  Time = 1 << 1 +, Integer = 1 << 2 +, Float = 1 << 3 +, String = 1 << 4 +,
    +  BitField = 1 << 5 +, Opaque = 1 << 6 +, Compound = 1 << 7 +, Reference = 1 << 8 +,
    +  Enum = 1 << 9 +, VarLen = 1 << 10 +, Array = 1 << 11 +, Invalid = 0 +
    + }
     Enum of Fundamental data classes. More...
     
    enum class  CharacterSet : std::underlying_type< H5T_cset_t >::type { Ascii = H5T_CSET_ASCII +, Utf8 = H5T_CSET_UTF8 + }
     
    enum class  ObjectType {
    +  File +, Group +, UserDataType +, DataSpace +,
    +  Dataset +, Attribute +, Other +
    + }
     Enum of the types of objects (H5O api) More...
     
    enum class  PropertyType : int {
    +  PropertyType::OBJECT_CREATE +, PropertyType::FILE_CREATE +, PropertyType::FILE_ACCESS +, PropertyType::DATASET_CREATE +,
    +  PropertyType::DATASET_ACCESS +, PropertyType::DATASET_XFER +, PropertyType::GROUP_CREATE +, PropertyType::GROUP_ACCESS +,
    +  PropertyType::DATATYPE_CREATE +, PropertyType::DATATYPE_ACCESS +, PropertyType::STRING_CREATE +, PropertyType::ATTRIBUTE_CREATE +,
    +  PropertyType::OBJECT_COPY +, PropertyType::LINK_CREATE +, PropertyType::LINK_ACCESS +
    + }
     Types of property lists. More...
     
    enum class  LogSeverity { Debug = HIGHFIVE_LOG_LEVEL_DEBUG +, Info = HIGHFIVE_LOG_LEVEL_INFO +, Warn = HIGHFIVE_LOG_LEVEL_WARN +, Error = HIGHFIVE_LOG_LEVEL_ERROR + }
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    EnumType< details::Boolean > create_enum_boolean ()
     
    size_t find_first_atomic_member_size (hid_t hid)
     
    template<typename T >
    DataType create_datatype ()
     Create a DataType instance representing type T.
     
    template<typename T >
    DataType create_and_check_datatype ()
     Create a DataType instance representing type T and perform a sanity check on its size.
     
    size_t compute_total_size (const std::vector< size_t > &dims)
     
    std::vector< hsize_t > toHDF5SizeVector (const std::vector< size_t > &from)
     
    std::vector< size_t > toSTLSizeVector (const std::vector< hsize_t > &from)
     
    DataTypeClass operator| (DataTypeClass lhs, DataTypeClass rhs)
     
    DataTypeClass operator& (DataTypeClass lhs, DataTypeClass rhs)
     
    std::string to_string (LogSeverity severity)
     
    void default_logging_callback (LogSeverity severity, const std::string &message, const std::string &file, int line)
     
    Loggerget_global_logger ()
     Obtain a reference to the logger used by HighFive.
     
    void register_logging_callback (Logger::callback_type cb)
     Sets the callback that's used by the logger.
     
    +

    Typedef Documentation

    + +

    ◆ float16_t

    + +
    +
    + + + + +
    using HighFive::float16_t = typedef half_float::half
    +
    + +
    +
    + +

    ◆ unqualified_t

    + +
    +
    +
    +template<typename T >
    + + + + +
    using HighFive::unqualified_t = typedef typename std::remove_const<typename std::remove_reference<T>::type>::type
    +
    + +
    +
    +

    Enumeration Type Documentation

    + +

    ◆ CharacterSet

    + +
    +
    + + + + + +
    + + + + +
    enum class HighFive::CharacterSet : std::underlying_type< H5T_cset_t >::type
    +
    +strong
    +
    + + + +
    Enumerator
    Ascii 
    Utf8 
    + +
    +
    + +

    ◆ DataTypeClass

    + +
    +
    + + + + + +
    + + + + +
    enum class HighFive::DataTypeClass
    +
    +strong
    +
    + +

    Enum of Fundamental data classes.

    + + + + + + + + + + + + + +
    Enumerator
    Time 
    Integer 
    Float 
    String 
    BitField 
    Opaque 
    Compound 
    Reference 
    Enum 
    VarLen 
    Array 
    Invalid 
    + +
    +
    + +

    ◆ IndexType

    + +
    +
    + + + + + +
    + + + + +
    enum class HighFive::IndexType : std::underlying_type< H5_index_t >::type
    +
    +strong
    +
    + + + +
    Enumerator
    NAME 
    CRT_ORDER 
    + +
    +
    + +

    ◆ LinkType

    + +
    +
    + + + + + +
    + + + + +
    enum class HighFive::LinkType
    +
    +strong
    +
    + +

    The possible types of group entries (link concept)

    + + + + + +
    Enumerator
    Hard 
    Soft 
    External 
    Other 
    + +
    +
    + +

    ◆ LogSeverity

    + +
    +
    + + + + + +
    + + + + +
    enum class HighFive::LogSeverity
    +
    +strong
    +
    + + + + + +
    Enumerator
    Debug 
    Info 
    Warn 
    Error 
    + +
    +
    + +

    ◆ ObjectType

    + +
    +
    + + + + + +
    + + + + +
    enum class HighFive::ObjectType
    +
    +strong
    +
    + +

    Enum of the types of objects (H5O api)

    + + + + + + + + +
    Enumerator
    File 
    Group 
    UserDataType 
    DataSpace 
    Dataset 
    Attribute 
    Other 
    + +
    +
    + +

    ◆ StringPadding

    + +
    +
    + + + + + +
    + + + + +
    enum class HighFive::StringPadding : std::underlying_type< H5T_str_t >::type
    +
    +strong
    +
    + + + + +
    Enumerator
    NullTerminated 
    NullPadded 
    SpacePadded 
    + +
    +
    +

    Function Documentation

    + +

    ◆ compute_total_size()

    + +
    +
    + + + + + +
    + + + + + + + + +
    size_t HighFive::compute_total_size (const std::vector< size_t > & dims)
    +
    +inline
    +
    + +
    +
    + +

    ◆ create_and_check_datatype()

    + +
    +
    +
    +template<typename T >
    + + + + + +
    + + + + + + + +
    DataType HighFive::create_and_check_datatype ()
    +
    +inline
    +
    + +

    Create a DataType instance representing type T and perform a sanity check on its size.

    + +
    +
    + +

    ◆ create_datatype()

    + +
    +
    +
    +template<typename T >
    + + + + + +
    + + + + + + + +
    DataType HighFive::create_datatype ()
    +
    +inline
    +
    + +

    Create a DataType instance representing type T.

    + +
    +
    + +

    ◆ create_enum_boolean()

    + +
    +
    + + + + + +
    + + + + + + + +
    EnumType< details::Boolean > HighFive::create_enum_boolean ()
    +
    +inline
    +
    + +
    +
    + +

    ◆ default_logging_callback()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    void HighFive::default_logging_callback (LogSeverity severity,
    const std::string & message,
    const std::string & file,
    int line 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ find_first_atomic_member_size()

    + +
    +
    + + + + + +
    + + + + + + + + +
    size_t HighFive::find_first_atomic_member_size (hid_t hid)
    +
    +inline
    +
    + +
    +
    + +

    ◆ get_global_logger()

    + +
    +
    + + + + + +
    + + + + + + + +
    Logger & HighFive::get_global_logger ()
    +
    +inline
    +
    + +

    Obtain a reference to the logger used by HighFive.

    +

    This uses a Meyers singleton, to ensure that the global logger is initialized with a safe default logger, before it is used.

    +

    Note: You probably don't need to call this function explicitly.

    + +
    +
    + +

    ◆ operator&()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    DataTypeClass HighFive::operator& (DataTypeClass lhs,
    DataTypeClass rhs 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ operator|()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    DataTypeClass HighFive::operator| (DataTypeClass lhs,
    DataTypeClass rhs 
    )
    +
    +inline
    +
    + +
    +
    + +

    ◆ register_logging_callback()

    + +
    +
    + + + + + +
    + + + + + + + + +
    void HighFive::register_logging_callback (Logger::callback_type cb)
    +
    +inline
    +
    + +

    Sets the callback that's used by the logger.

    + +
    +
    + +

    ◆ to_string()

    + +
    +
    + + + + + +
    + + + + + + + + +
    std::string HighFive::to_string (LogSeverity severity)
    +
    +inline
    +
    + +
    +
    + +

    ◆ toHDF5SizeVector()

    + +
    +
    + + + + + +
    + + + + + + + + +
    std::vector< hsize_t > HighFive::toHDF5SizeVector (const std::vector< size_t > & from)
    +
    +inline
    +
    + +
    +
    + +

    ◆ toSTLSizeVector()

    + +
    +
    + + + + + +
    + + + + + + + + +
    std::vector< size_t > HighFive::toSTLSizeVector (const std::vector< hsize_t > & from)
    +
    +inline
    +
    + +
    +
    +
    +
    + + + + diff --git a/namespace_high_five.js b/namespace_high_five.js new file mode 100644 index 000000000..a92ad32e9 --- /dev/null +++ b/namespace_high_five.js @@ -0,0 +1,162 @@ +var namespace_high_five = +[ + [ "AllocationTime", "class_high_five_1_1_allocation_time.html", "class_high_five_1_1_allocation_time" ], + [ "AnnotateTraits", "class_high_five_1_1_annotate_traits.html", "class_high_five_1_1_annotate_traits" ], + [ "AtomicType", "class_high_five_1_1_atomic_type.html", "class_high_five_1_1_atomic_type" ], + [ "AtomicType< char[StrLen]>", "class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html", "class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4" ], + [ "AtomicType< FixedLenStringArray< StrLen > >", "class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html", "class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4" ], + [ "AtomicType< std::complex< T > >", "class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html", "class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4" ], + [ "Attribute", "class_high_five_1_1_attribute.html", "class_high_five_1_1_attribute" ], + [ "AttributeException", "class_high_five_1_1_attribute_exception.html", "class_high_five_1_1_attribute_exception" ], + [ "AttributePhaseChange", "class_high_five_1_1_attribute_phase_change.html", "class_high_five_1_1_attribute_phase_change" ], + [ "Caching", "class_high_five_1_1_caching.html", "class_high_five_1_1_caching" ], + [ "Chunking", "class_high_five_1_1_chunking.html", "class_high_five_1_1_chunking" ], + [ "CompoundType", "class_high_five_1_1_compound_type.html", "class_high_five_1_1_compound_type" ], + [ "CreateIntermediateGroup", "class_high_five_1_1_create_intermediate_group.html", "class_high_five_1_1_create_intermediate_group" ], + [ "CreationOrder", "struct_high_five_1_1_creation_order.html", "struct_high_five_1_1_creation_order" ], + [ "DataSet", "class_high_five_1_1_data_set.html", "class_high_five_1_1_data_set" ], + [ "DataSetException", "class_high_five_1_1_data_set_exception.html", "class_high_five_1_1_data_set_exception" ], + [ "DataSpace", "class_high_five_1_1_data_space.html", "class_high_five_1_1_data_space" ], + [ "DataSpaceException", "class_high_five_1_1_data_space_exception.html", "class_high_five_1_1_data_space_exception" ], + [ "DataType", "class_high_five_1_1_data_type.html", "class_high_five_1_1_data_type" ], + [ "DataTypeException", "class_high_five_1_1_data_type_exception.html", "class_high_five_1_1_data_type_exception" ], + [ "Deflate", "class_high_five_1_1_deflate.html", "class_high_five_1_1_deflate" ], + [ "ElementSet", "class_high_five_1_1_element_set.html", "class_high_five_1_1_element_set" ], + [ "EnumType", "class_high_five_1_1_enum_type.html", "class_high_five_1_1_enum_type" ], + [ "EstimatedLinkInfo", "class_high_five_1_1_estimated_link_info.html", "class_high_five_1_1_estimated_link_info" ], + [ "Exception", "class_high_five_1_1_exception.html", "class_high_five_1_1_exception" ], + [ "File", "class_high_five_1_1_file.html", "class_high_five_1_1_file" ], + [ "FileDriver", "class_high_five_1_1_file_driver.html", null ], + [ "FileException", "class_high_five_1_1_file_exception.html", "class_high_five_1_1_file_exception" ], + [ "FileVersionBounds", "class_high_five_1_1_file_version_bounds.html", "class_high_five_1_1_file_version_bounds" ], + [ "FixedLengthStringType", "class_high_five_1_1_fixed_length_string_type.html", "class_high_five_1_1_fixed_length_string_type" ], + [ "FixedLenStringArray", "class_high_five_1_1_fixed_len_string_array.html", "class_high_five_1_1_fixed_len_string_array" ], + [ "Group", "class_high_five_1_1_group.html", "class_high_five_1_1_group" ], + [ "GroupException", "class_high_five_1_1_group_exception.html", "class_high_five_1_1_group_exception" ], + [ "HDF5ErrMapper", "struct_high_five_1_1_h_d_f5_err_mapper.html", null ], + [ "HyperSlab", "class_high_five_1_1_hyper_slab.html", "class_high_five_1_1_hyper_slab" ], + [ "LinkCreationOrder", "class_high_five_1_1_link_creation_order.html", "class_high_five_1_1_link_creation_order" ], + [ "Logger", "class_high_five_1_1_logger.html", "class_high_five_1_1_logger" ], + [ "MetadataBlockSize", "class_high_five_1_1_metadata_block_size.html", "class_high_five_1_1_metadata_block_size" ], + [ "MPIOCollectiveMetadata", "class_high_five_1_1_m_p_i_o_collective_metadata.html", "class_high_five_1_1_m_p_i_o_collective_metadata" ], + [ "MPIOCollectiveMetadataRead", "class_high_five_1_1_m_p_i_o_collective_metadata_read.html", "class_high_five_1_1_m_p_i_o_collective_metadata_read" ], + [ "MPIOCollectiveMetadataWrite", "class_high_five_1_1_m_p_i_o_collective_metadata_write.html", "class_high_five_1_1_m_p_i_o_collective_metadata_write" ], + [ "MPIOFileAccess", "class_high_five_1_1_m_p_i_o_file_access.html", "class_high_five_1_1_m_p_i_o_file_access" ], + [ "MPIOFileDriver", "class_high_five_1_1_m_p_i_o_file_driver.html", "class_high_five_1_1_m_p_i_o_file_driver" ], + [ "MpioNoCollectiveCause", "class_high_five_1_1_mpio_no_collective_cause.html", "class_high_five_1_1_mpio_no_collective_cause" ], + [ "NodeTraits", "class_high_five_1_1_node_traits.html", "class_high_five_1_1_node_traits" ], + [ "Object", "class_high_five_1_1_object.html", "class_high_five_1_1_object" ], + [ "ObjectException", "class_high_five_1_1_object_exception.html", "class_high_five_1_1_object_exception" ], + [ "ObjectInfo", "class_high_five_1_1_object_info.html", "class_high_five_1_1_object_info" ], + [ "PathTraits", "class_high_five_1_1_path_traits.html", "class_high_five_1_1_path_traits" ], + [ "PropertyException", "class_high_five_1_1_property_exception.html", "class_high_five_1_1_property_exception" ], + [ "PropertyList", "class_high_five_1_1_property_list.html", "class_high_five_1_1_property_list" ], + [ "PropertyListBase", "class_high_five_1_1_property_list_base.html", "class_high_five_1_1_property_list_base" ], + [ "RawPropertyList", "class_high_five_1_1_raw_property_list.html", "class_high_five_1_1_raw_property_list" ], + [ "Reference", "class_high_five_1_1_reference.html", "class_high_five_1_1_reference" ], + [ "ReferenceException", "class_high_five_1_1_reference_exception.html", "class_high_five_1_1_reference_exception" ], + [ "RegularHyperSlab", "struct_high_five_1_1_regular_hyper_slab.html", "struct_high_five_1_1_regular_hyper_slab" ], + [ "Selection", "class_high_five_1_1_selection.html", "class_high_five_1_1_selection" ], + [ "Shuffle", "class_high_five_1_1_shuffle.html", "class_high_five_1_1_shuffle" ], + [ "SilenceHDF5", "class_high_five_1_1_silence_h_d_f5.html", "class_high_five_1_1_silence_h_d_f5" ], + [ "SliceTraits", "class_high_five_1_1_slice_traits.html", "class_high_five_1_1_slice_traits" ], + [ "StringType", "class_high_five_1_1_string_type.html", "class_high_five_1_1_string_type" ], + [ "Szip", "class_high_five_1_1_szip.html", "class_high_five_1_1_szip" ], + [ "UseCollectiveIO", "class_high_five_1_1_use_collective_i_o.html", "class_high_five_1_1_use_collective_i_o" ], + [ "VariableLengthStringType", "class_high_five_1_1_variable_length_string_type.html", "class_high_five_1_1_variable_length_string_type" ], + [ "AttributeCreateProps", "group___property_lists.html#gacb1c3dfd159c55b953758edb7685a049", null ], + [ "DataSetAccessProps", "group___property_lists.html#gaf44317987cc247ecd0a2c0fc7106ca24", null ], + [ "DataSetCreateProps", "group___property_lists.html#ga5d1374d565280c990d8ec175175dd25b", null ], + [ "DataTransferProps", "group___property_lists.html#ga0cf55aeace55556d9c828d69249733b9", null ], + [ "DataTypeAccessProps", "group___property_lists.html#gac8cba5869615a0ed534eabcd4fcf5764", null ], + [ "DataTypeCreateProps", "group___property_lists.html#gafc468b8dcc348886b27bc4edba46caf3", null ], + [ "FileAccessProps", "group___property_lists.html#gabb713eeb1c3198abc08924c3b47c7db2", null ], + [ "FileCreateProps", "group___property_lists.html#ga8b0174aba58621002ec76da62a5f5f13", null ], + [ "float16_t", "namespace_high_five.html#a257db0f77cf0c6735a6451a8de5e2c1b", null ], + [ "GroupAccessProps", "group___property_lists.html#ga68c5d34220b4d213a933c2b7308b174e", null ], + [ "GroupCreateProps", "group___property_lists.html#ga81ced798505b82c667922df6b6936de9", null ], + [ "LinkAccessProps", "group___property_lists.html#gab75da37bb03e01aab133b5addfc04e19", null ], + [ "LinkCreateProps", "group___property_lists.html#ga1808107b873f17c08bc69b747173f4cb", null ], + [ "ObjectCopyProps", "group___property_lists.html#gac6067de093761c8456301af3690b9125", null ], + [ "ObjectCreateProps", "group___property_lists.html#gab5f00c2acd27b216a83e220c5b8d42ec", null ], + [ "StringCreateProps", "group___property_lists.html#ga87ce367dfedef16f5d2c4d37a26e52eb", null ], + [ "unqualified_t", "namespace_high_five.html#a792f32000f201b45366989bd9e5c31c5", null ], + [ "CharacterSet", "namespace_high_five.html#a7133a7a677541ffa6780f5ca5eee6db9", [ + [ "Ascii", "namespace_high_five.html#a7133a7a677541ffa6780f5ca5eee6db9a76b8d0dcd02ccaf203c167ced6d7ef31", null ], + [ "Utf8", "namespace_high_five.html#a7133a7a677541ffa6780f5ca5eee6db9a81f91ccd37ce1d232cbfc1520374319d", null ] + ] ], + [ "DataTypeClass", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847b", [ + [ "Time", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847baa76d4ef5f3f6a672bbfab2865563e530", null ], + [ "Integer", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847baa0faef0851b4294c06f2b94bb1cb2044", null ], + [ "Float", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba22ae0e2b89e5e3d477f988cc36d3272b", null ], + [ "String", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba27118326006d3829667a400ad23d5d98", null ], + [ "BitField", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba2f706038ccc6843d07ebf1a34051a0a8", null ], + [ "Opaque", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847bafaa90538de35640e4b1e31ccf35b6eb5", null ], + [ "Compound", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba26154ea007c65f860de5333a555a56cf", null ], + [ "Reference", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba63d5049791d9d79d86e9a108b0a999ca", null ], + [ "Enum", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847bacf20423ed48998082c20099488a0917c", null ], + [ "VarLen", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba72c6842c18d1470d1c991f865a2fab3a", null ], + [ "Array", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba4410ec34d9e6c1a68100ca0ce033fb17", null ], + [ "Invalid", "namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba4bbb8f967da6d1a610596d7257179c2b", null ] + ] ], + [ "IndexType", "namespace_high_five.html#afed91f5950b7a58ec51a33d260773996", [ + [ "NAME", "namespace_high_five.html#afed91f5950b7a58ec51a33d260773996aad32e604e17467fc435538334fbddf3e", null ], + [ "CRT_ORDER", "namespace_high_five.html#afed91f5950b7a58ec51a33d260773996ac83c60110da7010a6dd3168fb2c8b8a7", null ] + ] ], + [ "LinkType", "namespace_high_five.html#abe5895b8113887accd6bff2392b24c40", [ + [ "Hard", "namespace_high_five.html#abe5895b8113887accd6bff2392b24c40a3656183169810334a96b91129dc9d881", null ], + [ "Soft", "namespace_high_five.html#abe5895b8113887accd6bff2392b24c40a682160fc6ad12f783f70608a9b46b9b9", null ], + [ "External", "namespace_high_five.html#abe5895b8113887accd6bff2392b24c40ab206a1b4ea1097761f78e8876f6da779", null ], + [ "Other", "namespace_high_five.html#abe5895b8113887accd6bff2392b24c40a6311ae17c1ee52b36e68aaf4ad066387", null ] + ] ], + [ "LogSeverity", "namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246", [ + [ "Debug", "namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246aa603905470e2a5b8c13e96b579ef0dba", null ], + [ "Info", "namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a4059b0251f66a18cb56f544728796875", null ], + [ "Warn", "namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a56525ae64d370c0b448ac0d60710ef17", null ], + [ "Error", "namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a902b0d55fddef6f8d651fe1035b7d4bd", null ] + ] ], + [ "ObjectType", "namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474", [ + [ "File", "namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a0b27918290ff5323bea1e3b78a9cf04e", null ], + [ "Group", "namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a03937134cedab9078be39a77ee3a48a0", null ], + [ "UserDataType", "namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a99f109983e5e6524be1f6fbcc819691c", null ], + [ "DataSpace", "namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a546863182b9bd136e5295389d0e8343e", null ], + [ "Dataset", "namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a239658e016e3d5d06ae719d280a79fec", null ], + [ "Attribute", "namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474af2bbdf9f72c085adc4d0404e370f0f4c", null ], + [ "Other", "namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a6311ae17c1ee52b36e68aaf4ad066387", null ] + ] ], + [ "PropertyType", "group___property_lists.html#ga097a358bdda37ff6e6b48d9f43664ad4", [ + [ "OBJECT_CREATE", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4afcea7f1287d62768c2fc0ee0cf18023f", null ], + [ "FILE_CREATE", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a5534109883a2d6699c0262b228c14f67", null ], + [ "FILE_ACCESS", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a8f93e8ee202d29ba296afdfb6c08550e", null ], + [ "DATASET_CREATE", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4aafd89ef46ba1fc317f8b8cfadbc8e89d", null ], + [ "DATASET_ACCESS", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a1f9f49c3a9b29c99fd336a46e1fb0b8c", null ], + [ "DATASET_XFER", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4adbac4060e0053cc521283eb9f7d0869e", null ], + [ "GROUP_CREATE", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4aa9f9694169963af7096ae421df5025ce", null ], + [ "GROUP_ACCESS", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4aff3aa98325265641dfb5b6c727973774", null ], + [ "DATATYPE_CREATE", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a4a9bef3e26735c56f85701720da97704", null ], + [ "DATATYPE_ACCESS", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a023c2a1da4192ec57c9589f2adcf0375", null ], + [ "STRING_CREATE", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a8c7bdf2b95146589251f8ecff10ca084", null ], + [ "ATTRIBUTE_CREATE", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a518c30284a8061ffe051004a0670f135", null ], + [ "OBJECT_COPY", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a9b0ceee4dc388106832eabb5522d4506", null ], + [ "LINK_CREATE", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a57fb2f103675cde088df70923f6224b1", null ], + [ "LINK_ACCESS", "group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a49f33864cd831c0b35b59fc99cb75293", null ] + ] ], + [ "StringPadding", "namespace_high_five.html#ad9265809238043adba9b446b5c61e953", [ + [ "NullTerminated", "namespace_high_five.html#ad9265809238043adba9b446b5c61e953ab90111c75972f26b57ab364724b34921", null ], + [ "NullPadded", "namespace_high_five.html#ad9265809238043adba9b446b5c61e953a5b56f95d458ea27c9c62e62260bbef81", null ], + [ "SpacePadded", "namespace_high_five.html#ad9265809238043adba9b446b5c61e953a4ca955dd1a77b70b5a0a28512c0e5f24", null ] + ] ], + [ "compute_total_size", "namespace_high_five.html#ae473192dc3e4e3f42c470f682817a32c", null ], + [ "create_and_check_datatype", "namespace_high_five.html#a43d3946c0bb037e99c803ec90dc247b4", null ], + [ "create_datatype", "namespace_high_five.html#a6f3b307cc5b6bd82d6360f13cacac2de", null ], + [ "create_enum_boolean", "namespace_high_five.html#a361e2132e78bca627125eba4295b9ae6", null ], + [ "default_logging_callback", "namespace_high_five.html#abf6fe5be71a00bfb4d6b5f65e6248132", null ], + [ "find_first_atomic_member_size", "namespace_high_five.html#ac4e5e1ccbc6a1c20bcd581f71fb5e6d5", null ], + [ "get_global_logger", "namespace_high_five.html#ad2f60aec2c40524b30248aac67f5eeb5", null ], + [ "operator&", "namespace_high_five.html#ad11e24eec8492d0d2c977b58b1e64dbc", null ], + [ "operator|", "namespace_high_five.html#a98688378bfbae23ab35a06c6916c5a44", null ], + [ "register_logging_callback", "namespace_high_five.html#a4fc91cda37008aea40efbb20a39cf1c9", null ], + [ "to_string", "namespace_high_five.html#ace8358255410138c5e223747e2a06f36", null ], + [ "toHDF5SizeVector", "namespace_high_five.html#acd815ee14c714bfa4ba0f05acc6e486d", null ], + [ "toSTLSizeVector", "namespace_high_five.html#a1de5c5eaf17007862e5cf63ec186a64e", null ] +]; \ No newline at end of file diff --git a/namespacemembers.html b/namespacemembers.html new file mode 100644 index 000000000..5a51675e7 --- /dev/null +++ b/namespacemembers.html @@ -0,0 +1,201 @@ + + + + + + + +HighFive: Namespace Members + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    Here is a list of all namespace members with links to the namespace documentation for each member:
    + +

    - a -

    + + +

    - c -

    + + +

    - d -

    + + +

    - f -

    + + +

    - g -

    + + +

    - i -

    + + +

    - l -

    + + +

    - o -

    + + +

    - p -

    + + +

    - r -

      +
    • register_logging_callback() : HighFive
    • +
    + + +

    - s -

    + + +

    - t -

    + + +

    - u -

    +
    +
    + + + + diff --git a/namespacemembers_enum.html b/namespacemembers_enum.html new file mode 100644 index 000000000..1ca1e9516 --- /dev/null +++ b/namespacemembers_enum.html @@ -0,0 +1,115 @@ + + + + + + + +HighFive: Namespace Members + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    Here is a list of all namespace enums with links to the namespace documentation for each enum:
    +
    +
    + + + + diff --git a/namespacemembers_func.html b/namespacemembers_func.html new file mode 100644 index 000000000..85e2a2c2d --- /dev/null +++ b/namespacemembers_func.html @@ -0,0 +1,124 @@ + + + + + + + +HighFive: Namespace Members + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    Here is a list of all namespace functions with links to the namespace documentation for each function:
    +
    +
    + + + + diff --git a/namespacemembers_type.html b/namespacemembers_type.html new file mode 100644 index 000000000..69a78dfbd --- /dev/null +++ b/namespacemembers_type.html @@ -0,0 +1,122 @@ + + + + + + + +HighFive: Namespace Members + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    Here is a list of all namespace typedefs with links to the namespace documentation for each typedef:
    +
    +
    + + + + diff --git a/namespaces.html b/namespaces.html new file mode 100644 index 000000000..9feb8071f --- /dev/null +++ b/namespaces.html @@ -0,0 +1,180 @@ + + + + + + + +HighFive: Namespace List + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    Namespace List
    +
    +
    +
    Here is a list of all namespaces with brief descriptions:
    +
    [detail level 123]
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     NH5EasyRead/dump DataSets or Attribute using a minimalistic syntax. To this end, the functions are templated, and accept:
     CCompressionSignal to set compression level for written DataSets
     CDumpOptionsDefine options for dumping data
     NHighFive
     CAllocationTimeWhen are datasets allocated?
     CAnnotateTraits
     CAtomicTypeCreate an HDF5 DataType from a C++ type
     CAtomicType< char[StrLen]>
     CAtomicType< FixedLenStringArray< StrLen > >
     CAtomicType< std::complex< T > >
     CAttributeClass representing an Attribute of a DataSet or Group
     CAttributeExceptionException specific to HighFive Attribute interface
     CAttributePhaseChangeSet threshold for attribute storage
     CCaching
     CChunking
     CCompoundTypeCreate a compound HDF5 datatype
     Cmember_defUse for defining a sub-type of compound type
     CCreateIntermediateGroup
     CCreationOrder
     CDataSetClass representing a dataset
     CDataSetExceptionException specific to HighFive DataSet interface
     CDataSpaceClass representing the space (dimensions) of a DataSet
     CDataSpaceExceptionException specific to HighFive DataSpace interface
     CDataTypeHDF5 Data Type
     CDataTypeExceptionException specific to HighFive DataType interface
     CDeflate
     CElementSet
     CEnumTypeCreate a enum HDF5 datatype
     Cmember_defUse for defining a member of enum type
     CEstimatedLinkInfoSet hints as to how many links to expect and their average length
     CExceptionBasic HighFive Exception class
     CFileFile class
     CFileDriverFile driver base concept
     CFileExceptionException specific to HighFive File interface
     CFileVersionBoundsConfigure the version bounds for the file
     CFixedLengthStringType
     CFixedLenStringArrayA structure representing a set of fixed-length strings
     CGroupRepresents an hdf5 group
     CGroupExceptionException specific to HighFive Group interface
     CHDF5ErrMapper
     CHyperSlab
     CLinkCreationOrderTrack and index creation order time
     CLoggerA logger with supporting basic functionality
     CMetadataBlockSizeConfigure the metadata block size to use writing to files
     CMPIOCollectiveMetadataUse collective MPI-IO for metadata read and write
     CMPIOCollectiveMetadataReadUse collective MPI-IO for metadata read?
     CMPIOCollectiveMetadataWriteUse collective MPI-IO for metadata write?
     CMPIOFileAccessConfigure MPI access for the file
     CMPIOFileDriverMPIIO Driver for Parallel HDF5
     CMpioNoCollectiveCauseThe cause for non-collective I/O
     CNodeTraitsNodeTraits: Base class for Group and File
     CObject
     CObjectExceptionException specific to HighFive Object interface
     CObjectInfoA class for accessing hdf5 objects info
     CPathTraits
     CPropertyExceptionException specific to HighFive Property interface
     CPropertyListHDF5 property Lists
     CPropertyListBaseBase Class for Property lists, providing global default
     CRawPropertyList
     CReferenceAn HDF5 (object) reference type
     CReferenceExceptionException specific to HighFive Reference interface
     CRegularHyperSlab
     CSelectionSelection: represent a view on a slice/part of a dataset
     CShuffle
     CSilenceHDF5Utility class to disable HDF5 stack printing inside a scope
     CSliceTraits
     CStringType
     CSzip
     CUseCollectiveIO
     CVariableLengthStringType
    +
    +
    +
    + + + + diff --git a/namespaces_dup.js b/namespaces_dup.js new file mode 100644 index 000000000..6bcb1d4db --- /dev/null +++ b/namespaces_dup.js @@ -0,0 +1,5 @@ +var namespaces_dup = +[ + [ "H5Easy", "namespace_h5_easy.html", "namespace_h5_easy" ], + [ "HighFive", "namespace_high_five.html", "namespace_high_five" ] +]; \ No newline at end of file diff --git a/nav_f.png b/nav_f.png new file mode 100644 index 000000000..72a58a529 Binary files /dev/null and b/nav_f.png differ diff --git a/nav_fd.png b/nav_fd.png new file mode 100644 index 000000000..032fbdd4c Binary files /dev/null and b/nav_fd.png differ diff --git a/nav_g.png b/nav_g.png new file mode 100644 index 000000000..2093a237a Binary files /dev/null and b/nav_g.png differ diff --git a/nav_h.png b/nav_h.png new file mode 100644 index 000000000..33389b101 Binary files /dev/null and b/nav_h.png differ diff --git a/nav_hd.png b/nav_hd.png new file mode 100644 index 000000000..de80f18ad Binary files /dev/null and b/nav_hd.png differ diff --git a/navtree.css b/navtree.css new file mode 100644 index 000000000..69211d4a7 --- /dev/null +++ b/navtree.css @@ -0,0 +1,149 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: var(--nav-text-active-color); + text-shadow: var(--nav-text-active-shadow); +} + +#nav-tree .selected .arrow { + color: var(--nav-arrow-selected-color); + text-shadow: none; +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px var(--font-family-nav); +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:var(--nav-text-active-color); +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: $width; + overflow : hidden; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background-image:var(--nav-splitbar-image); + background-size:100%; + background-repeat:repeat-y; + background-attachment: scroll; + cursor:ew-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-repeat:repeat-x; + background-color: var(--nav-background-color); + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/navtree.js b/navtree.js new file mode 100644 index 000000000..93dd3d462 --- /dev/null +++ b/navtree.js @@ -0,0 +1,559 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +var navTreeSubIndices = new Array(); +var arrowDown = '▼'; +var arrowRight = '►'; + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function hashValue() +{ + return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,''); +} + +function hashUrl() +{ + return '#'+hashValue(); +} + +function pathName() +{ + return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, ''); +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + var level=-1; + var n = node; + while (n.parentNode) { level++; n=n.parentNode; } + if (node.childrenData) { + var imgNode = document.createElement("span"); + imgNode.className = 'arrow'; + imgNode.style.paddingLeft=(16*level).toString()+'px'; + imgNode.innerHTML=arrowRight; + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + node.plus_img.innerHTML=arrowRight; + node.expanded = false; + } else { + expandNode(o, node, false, true); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + } else { + var span = document.createElement("span"); + span.className = 'arrow'; + span.style.width = 16*(level+1)+'px'; + span.innerHTML = ' '; + domNode.appendChild(span); + } +} + +var animationInProgress = false; + +function gotoAnchor(anchor,aname,updateLocation) +{ + var pos, docContent = $('#doc-content'); + var ancParent = $(anchor.parent()); + if (ancParent.hasClass('memItemLeft') || + ancParent.hasClass('memtitle') || + ancParent.hasClass('fieldname') || + ancParent.hasClass('fieldtype') || + ancParent.is(':header')) + { + pos = ancParent.position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + animationInProgress=true; + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + if (updateLocation) window.location.href=aname; + animationInProgress=false; + }); + } +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath(pathName()); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : "javascript:void(0)"; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var anchor = $(aname); + gotoAnchor(anchor,aname,true); + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',100,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, setFocus) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, setFocus); + }); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).slideDown("fast"); + node.plus_img.innerHTML = arrowDown; + node.expanded = true; + if (setFocus) { + $(node.expandToggle).focus(); + } + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var aname = hashUrl(); + var anchor = $(aname); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+hashValue()+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parent().attr('class')=='fieldname'){ + glowEffect(anchor.parent().parent(),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath(pathName())+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + var topOffset=5; + if (typeof page_layout!=='undefined' && page_layout==1) { + topOffset+=$('#top').outerHeight(); + } + if ($('#nav-tree-contents .item:first').hasClass('selected')) { + topOffset+=25; + } + $('#nav-sync').css('top',topOffset+'px'); + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + }); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).css({'display':'block'}); + node.plus_img.innerHTML = arrowDown; + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1].replace(/[^\w\-]/g,''); + else hash=''; + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + }); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2(pathName())+hashUrl()); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +var loadTriggered = false; +var readyTriggered = false; +var loadObject,loadToRoot,loadUrl,loadRelPath; + +$(window).on('load',function(){ + if (readyTriggered) { // ready first + navTo(loadObject,loadToRoot,loadUrl,loadRelPath); + showRoot(); + } + loadTriggered=true; +}); + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("span"); + o.node.plus_img.className = 'arrow'; + o.node.plus_img.innerHTML = arrowRight; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + if (loadTriggered) { // load before ready + navTo(o,toroot,hashUrl(),relpath); + showRoot(); + } else { // ready before load + loadObject = o; + loadToRoot = toroot; + loadUrl = hashUrl(); + loadRelPath = relpath; + readyTriggered=true; + } + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath(pathName())+':'+hashValue(); + a=$('.item a[class$="'+clslink.replace(/ + + + + + + +HighFive: Related Pages + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    Related Pages
    +
    +
    +
    Here is a list of all related documentation pages:
    +
    +
    + + + + diff --git a/plus.svg b/plus.svg new file mode 100644 index 000000000..075201655 --- /dev/null +++ b/plus.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/plusd.svg b/plusd.svg new file mode 100644 index 000000000..0c65bfe94 --- /dev/null +++ b/plusd.svg @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/poster/example1_hdf5.cpp b/poster/example1_hdf5.cpp new file mode 100644 index 000000000..f551d90c1 --- /dev/null +++ b/poster/example1_hdf5.cpp @@ -0,0 +1,53 @@ +#include +#include "hdf5.h" + +void data_io() { + hid_t file_id, dset_id, dspace_id, group_id; /* identifiers */ + herr_t status; + + // Setup dataset dimensions and input data + int ndims = 1; + hsize_t dims[ndims]; + dims[0] = 50; + std::vector data(50, 1); + + // Open a file + file_id = H5Fcreate("new_file.h5", H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT); + + // Create a group + group_id = H5Gcreate2(file_id, "/group", H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); + + // Create a dataset + dspace_id = H5Screate_simple(1, dims, NULL); + dset_id = H5Dcreate2( + group_id, "dset1", H5T_STD_I32BE, dspace_id, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT); + + // Write the data + status = H5Dwrite(dset_id, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, data.data()); + + // Close dataset after writing + status = H5Dclose(dset_id); + + // Retrieve result size and preallocate vector + std::vector result; + dset_id = H5Dopen(file_id, "/group/dset1", H5P_DEFAULT); + dspace_id = H5Dget_space(dset_id); + ndims = H5Sget_simple_extent_ndims(dspace_id); + hsize_t res_dims[ndims]; + status = H5Sget_simple_extent_dims(dspace_id, res_dims, NULL); + int res_sz = 1; + for (int i = 0; i < ndims; i++) { + res_sz *= res_dims[i]; + } + result.resize(res_sz); + + // Read the data + status = H5Dread(dset_id, H5T_NATIVE_INT, H5S_ALL, H5S_ALL, H5P_DEFAULT, result.data()); + + // Close the dataset and group + status = H5Dclose(dset_id); + status = H5Gclose(group_id); + + // Close the file + status = H5Fclose(file_id); +} diff --git a/poster/example1_highfive.cpp b/poster/example1_highfive.cpp new file mode 100644 index 000000000..1d3c5148a --- /dev/null +++ b/poster/example1_highfive.cpp @@ -0,0 +1,17 @@ +#include + +using HighFive::File; + +void write_io() { + std::vector d1(50, 1); + + // Open a file + File file("tmp.h5", File::ReadWrite | File::Truncate); + + // Create DataSet and write data (short form) + file.createDataSet("/group/dset1", d1); + + // Read the data + std::vector d1_read; + file.getDataSet("/group/dset1").read(d1_read); +} diff --git a/poster/example3.cpp b/poster/example3.cpp new file mode 100644 index 000000000..e18fbbf83 --- /dev/null +++ b/poster/example3.cpp @@ -0,0 +1,29 @@ +#include + + +typedef struct { + double width; + double height; +} Size2D; + + +HighFive::CompoundType create_compound_Size2D() { + return {{"width", HighFive::AtomicType{}}, {"height", HighFive::AtomicType{}}}; +} + +HIGHFIVE_REGISTER_TYPE(Size2D, create_compound_Size2D) + +int data_io() { + const std::string DATASET_NAME("points"); + + HighFive::File file("compounds.h5", HighFive::File::Truncate); + + auto t1 = create_compound_Size2D(); + t1.commit(file, "Size2D"); + + std::vector pts = {{1., 2.5}, {3., 4.5}}; + auto dataset = file.createDataSet(DATASET_NAME, pts); + + auto g1 = file.createGroup("group1"); + g1.createAttribute(DATASET_NAME, pts); +} diff --git a/poster/example6.cpp b/poster/example6.cpp new file mode 100644 index 000000000..41a050570 --- /dev/null +++ b/poster/example6.cpp @@ -0,0 +1,49 @@ +#include + +#include + +#include + + +int main(int argc, char** argv) { + int mpi_rank, mpi_size; + const std::string DATASET_NAME("dset"); + + // initialize MPI + MPI_Init(&argc, &argv); + MPI_Comm_size(MPI_COMM_WORLD, &mpi_size); + MPI_Comm_rank(MPI_COMM_WORLD, &mpi_rank); + + using namespace HighFive; + try { + // open a new file with the MPI IO driver for parallel Read/Write + File file("parallel_highfive.h5", + File::ReadWrite | File::Create | File::Truncate, + MPIOFileDriver(MPI_COMM_WORLD, MPI_INFO_NULL)); + + // we define the size of our dataset to + // lines : total number of mpi_rank + // columns : 2 + std::vector dims(2); + dims[0] = std::size_t(mpi_size); + dims[1] = 2; + + // Create the dataset + DataSet dset = file.createDataSet(DATASET_NAME, DataSpace(dims)); + + // Each node want to write its own rank two time in + // its associated row + int data[1][2] = {{mpi_rank, mpi_rank}}; + + // write it to the associated mpi_rank + dset.select({std::size_t(mpi_rank), 0}, {1, 2}).write(data); + + } catch (const Exception& err) { + // catch and print any HDF5 error + std::cerr << err.what() << std::endl; + MPI_Abort(MPI_COMM_WORLD, 1); + } + + MPI_Finalize(); + return 0; +} diff --git a/poster/example_boost.cpp b/poster/example_boost.cpp new file mode 100644 index 000000000..56b78d074 --- /dev/null +++ b/poster/example_boost.cpp @@ -0,0 +1,21 @@ +#include + +#define H5_USE_BOOST 1 +#include + +#include + +using complex_t = std::complex; + +void data_io() { + boost::multi_array multi_array(boost::extents[3][2][1][1]); + std::fill_n(multi_array.origin(), multi_array.num_elements(), 1.0); + multi_array[1][1][0][0] = complex_t{1.1, 1.2}; + + HighFive::File file("multi_array_complex.h5", HighFive::File::Truncate); + + HighFive::DataSet dataset = + file.createDataSet("multi_array", HighFive::DataSpace::From(multi_array)); + + dataset.write(multi_array); +} diff --git a/poster/example_boost_ublas.cpp b/poster/example_boost_ublas.cpp new file mode 100644 index 000000000..986a671de --- /dev/null +++ b/poster/example_boost_ublas.cpp @@ -0,0 +1,47 @@ +#include + +#define H5_USE_BOOST 1 +#include + +// In some versions of Boost (starting with 1.64), you have to +// include the serialization header before ublas +#include + +#include +#include + +using namespace HighFive; + +void data_io() { + const std::string DATASET_NAME("dset"); + const size_t size_x = 10; + const size_t size_y = 10; + + try { + typedef typename boost::numeric::ublas::matrix Matrix; + + // create a 10x10 matrix + Matrix mat(size_x, size_y); + + // fill it + for (std::size_t i = 0; i < size_x; ++i) { + mat(i, i) = static_cast(i); + } + + // Create a new HDF5 file + File file("boost_ublas.h5", File::ReadWrite | File::Create | File::Truncate); + + DataSet dataset = file.createDataSet(DATASET_NAME, DataSpace::From(mat)); + + dataset.write(mat); + + Matrix result; + dataset.read(result); + + std::cout << "Matrix result:\n" << result << std::endl; + + } catch (const Exception& err) { + // catch and print any HDF5 error + std::cerr << err.what() << std::endl; + } +} diff --git a/poster/example_easy_h5py.py b/poster/example_easy_h5py.py new file mode 100644 index 000000000..aca093490 --- /dev/null +++ b/poster/example_easy_h5py.py @@ -0,0 +1,26 @@ +import h5py +import numpy as np + +A = np.ones([10, 3]) + +with h5py.File("tmp.h5", "w") as file: + + # write dataset (automatically creates groups if needed) + file["/path/to/A"] = A + + # read from dataset + B = file["/path/to/A"] + + # write attribute + file["/path/to/A"].attrs["date"] = "today" + + # read from attribute + d = file["/path/to/A"].attrs["date"] + + # create extendible dataset and extend it + dset = file.create_dataset("/path/to/extendible", (1,), maxshape=(None,)) + dset[0] = 0 + + for i in range(1, 10): + dset.resize((i + 1,)) + dset[i] = i diff --git a/poster/example_easy_highfive.cpp b/poster/example_easy_highfive.cpp new file mode 100644 index 000000000..700056cae --- /dev/null +++ b/poster/example_easy_highfive.cpp @@ -0,0 +1,29 @@ +#include + +#include + +int main() { + xt::xarray A = xt::ones({10, 3}); + + // open a file + H5Easy::File file("tmp.h5", H5Easy::File::Overwrite); + + // write dataset (automatically creates groups if needed) + H5Easy::dump(file, "/path/to/A", A); + + // read from dataset + auto B = H5Easy::load>(file, "/path/to/A"); + + // write attribute + H5Easy::dumpAttribute(file, "/path/to/A", "date", std::string("today")); + + // read from attribute + auto d = H5Easy::loadAttribute(file, "/path/to/A", "date"); + + // create extendible dataset and extend it + for (size_t i = 0; i < 10; ++i) { + H5Easy::dump(file, "/path/to/extendible", i, {i}); + } + + return 0; +} diff --git a/poster/example_props.cpp b/poster/example_props.cpp new file mode 100644 index 000000000..0e5b14bde --- /dev/null +++ b/poster/example_props.cpp @@ -0,0 +1,24 @@ +#include + +using namespace HighFive; + +int write_data() { + FileDriver fdrv; + + fdrv.add(FileVersionBounds(H5F_LIBVER_LATEST, H5F_LIBVER_LATEST)); + fdrv.add(MetadataBlockSize(10240)); + + File file("example2.h5", File::Truncate, fdrv); + + GroupCreateProps props; + props.add(EstimatedLinkInfo(1000, 500)); + auto group = file.createGroup("g", props); + + DataSetCreateProps dsprops; + dsprops.add(Chunking(std::vector{2, 2})); + dsprops.add(Deflate(9)); + + + std::vector d1(100000, 1); + group.createDataSet("dset1", d1, dsprops); +} diff --git a/poster/examples.js b/poster/examples.js new file mode 100644 index 000000000..7870d7ef8 --- /dev/null +++ b/poster/examples.js @@ -0,0 +1,37 @@ + + +function compile_on_godbolt(example_id) { + + let src = $('#' + example_id).attr("rawsrc"); + + let url = `https://godbolt.org/#g:!((g:!((g:!((h:codeEditor,i:(filename:'1',fontScale:14,fontUsePx:'0',j:1,lang:c%2B%2B,source:'${src}'),l:'5',n:'0',o:'C%2B%2B+source+%231',t:'0')),k:50,l:'4',n:'0',o:'',s:0,t:'0'),(g:!((h:compiler,i:(compiler:g112,filters:(b:'0',binary:'1',commentOnly:'0',demangle:'0',directives:'0',execute:'1',intel:'0',libraryCode:'0',trim:'1'),flagsViewOpen:'1',fontScale:14,fontUsePx:'0',j:1,lang:c%2B%2B,libs:!((name:hdf5,ver:'1121'),(name:highfive,ver:trunk)),options:'',selection:(endColumn:1,endLineNumber:1,positionColumn:1,positionLineNumber:1,selectionStartColumn:1,selectionStartLineNumber:1,startColumn:1,startLineNumber:1),source:1,tree:'1'),l:'5',n:'0',o:'x86-64+gcc+11.2+(C%2B%2B,+Editor+%231,+Compiler+%231)',t:'0')),k:50,l:'4',n:'0',o:'',s:0,t:'0')),l:'2',n:'0',o:'',t:'0')),version:4`; + window.open(url); + +} + +function setup_examples() { + $(".example").each(function () { + let cblock = this; + let file = this.id + '.' + this.dataset.lang; + $.ajax( {url: file, + dataType: 'text', + success: function( code ) { + res = hljs.highlight(code, {language: cblock.dataset.lang, ignoreIllegals: true }); + cblock.innerHTML += res.value; + let encoded = encodeURIComponent(code); + cblock.setAttribute("rawsrc",encoded); + }}); + + }); + + $(".godbolt").each(function(idx, el) { + let example_id = el.id.substring(3); + el.addEventListener("click", function () { + compile_on_godbolt(example_id); + }); + }); + +} + + +setup_examples(); diff --git a/poster/godbolt.org.ico b/poster/godbolt.org.ico new file mode 100644 index 000000000..e3e20daef Binary files /dev/null and b/poster/godbolt.org.ico differ diff --git a/poster/index.html b/poster/index.html new file mode 100644 index 000000000..127122744 --- /dev/null +++ b/poster/index.html @@ -0,0 +1,264 @@ + + + + + HighFive: An easy-to-use, header-only C++ library for HDF5 + + + + + + + + + + +
    +
    + +
    +
    +

    HighFive: An easy-to-use, header-only C++ library for HDF5

    + +

    Adrien Devresse1, Omar Awile1, Jorge + Blanco1, Tristan Carel1, Nicolas Cornu1, + Tom de Geus2, Luc Grosheintz-Laval1, Pramod Kumbhar1, + Fernando Pereira1, Sergio Rivas Gomez1, Matthias Wolf1, + James King1

    +
    +
    +

    + 1 Blue Brain Project, École Polytechnique Fédérale de Lausanne, Switzerland
    + 2 Physics of Complex Systems Laboratory, École Polytechnique Fédérale de Lausanne, + Switzerland

    +
    + +
    +

    Introduction

    +

    The use of portable scientific data formats are vital for managing complex workflows, + reliable data storage, knowledge transfer, and long-term maintainability and + reproducibility. Hierarchical Data Format (HDF) 5 is considered the de-facto + industry-standard for this purpose. While the official HDF5 library is versatile and + well supported, it only provides a low-level C/C++ interface. Lacking proper high-level + C++ abstractions dissuades the use of HDF5 in scientific applications. There are a + number of C++ wrapper libraries available. Many, however, are domain-specific, + incomplete or not actively maintained.

    +

    HighFive is an attempt to address these challenges.

    +
    +
    +

    Basic use of HighFive

    +

    It is an easy to use modern C++ header-only library that reduces most of the + book-keeping overhead required by HDF5. HighFive uses RAII to handle object life-times + and automatically handles reference counting on HDF5 objects. The library makes use of + C++ templating for automatic type mapping. These features significantly increase + programmer productivity and reduce coding bugs.

    + + + + + + + + + + + + + +
    HighFiveHDF5
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +

    Support for HDF5 advanced features

    +

    Its simplified data-management does not come at a loss of HDF5's flexibility and + advanced features and tunable parameters are exposed through a simple interface. File + version bounds can be read and written to define object compatibility, the metadata + block size can be set. Group properties for compression, chunking and link info + estimates can be set and read:

    +
    +
    +
    +
    +
    +
    +
    +

    Complex data types

    +

    HighFive is built with scientific applications in mind. Besides scalar and simple STL + vectors it is possible to map C++ structs to HDF5 compound types and to read and write + Boost, Boost ublas, Eigen and XTensor array types. The library is also able to handle + combinations of array types (e.g. std::vector<Eigen::Matrix>). This is + achieved through various templated converters. Additionally, HighFive supports enums and + various string types.

    +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    +
    + +
    +
    +
    +
    +
    +
    +

    HighFive for parallel applications

    +

    With the aim to support large-scale scientific application, we have made an effort to + also natively support the HDF5 MPI backend in HighFive. A special + MPIOFileDriver is used in the application code to ensure that HDF5 is correctly + initialized. No other special API calls are required since all necessary provisions are + handled transparently.

    +
    +
    +
    +
    +
    +
    + +
    +

    H5Easy: one-liners

    +

    HighFive also offers the H5Easy API (on its own namespace). + This has an API in which things can be done in one-liners, with a syntax comparable + to for example h5py for Python. + It offers overloads for STL containers, Boost, Eigen, xtensor, and OpenCV.

    + + + + + + + + + + + + + +
    H5Easyh5py
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    +
    + +
    +

    Obtaining and building HighFive

    +

    HighFive is developed open-source and can be cloned and forked from + GitHub. + It can also be installed from the clone, + via spack, + or via conda. + It can then be used for example with find_package(HighFive) in CMake. + Being a header-only library, HighFive can be used directly as a subfolder in a C++ project, + for example by adding it as a submodule. + More details can be found in the + README.md file. +

    +
    +
    +
    +
    + © 2022 Blue Brain Project/EPFL
    + The development of this software was supported by funding to the Blue Brain + Project, a research center of the École polytechnique fédérale de Lausanne (EPFL), + from the Swiss government's ETH Board of the Swiss Federal Institutes of + Technology. +

    + + +
    +
    + Boost Software License 1.0 +
    +
    +
    + + + +
    + + diff --git a/resize.js b/resize.js new file mode 100644 index 000000000..aaeb6fc0a --- /dev/null +++ b/resize.js @@ -0,0 +1,155 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +var once=1; +function initResizable() +{ + var cookie_namespace = 'doxygen'; + var sidenav,navtree,content,header,barWidth=6,desktop_vp=768,titleHeight; + + function readSetting(cookie) + { + if (window.chrome) { + var val = localStorage.getItem(cookie_namespace+'_width'); + if (val) return val; + } else { + var myCookie = cookie_namespace+"_"+cookie+"="; + if (document.cookie) { + var index = document.cookie.indexOf(myCookie); + if (index != -1) { + var valStart = index + myCookie.length; + var valEnd = document.cookie.indexOf(";", valStart); + if (valEnd == -1) { + valEnd = document.cookie.length; + } + var val = document.cookie.substring(valStart, valEnd); + return val; + } + } + } + return 250; + } + + function writeSetting(cookie, val) + { + if (window.chrome) { + localStorage.setItem(cookie_namespace+"_width",val); + } else { + var date = new Date(); + date.setTime(date.getTime()+(10*365*24*60*60*1000)); // default expiration is one week + expiration = date.toGMTString(); + document.cookie = cookie_namespace + "_" + cookie + "=" + val + "; SameSite=Lax; expires=" + expiration+"; path=/"; + } + } + + function resizeWidth() + { + var windowWidth = $(window).width() + "px"; + var sidenavWidth = $(sidenav).outerWidth(); + content.css({marginLeft:parseInt(sidenavWidth)+"px"}); + if (typeof page_layout!=='undefined' && page_layout==1) { + footer.css({marginLeft:parseInt(sidenavWidth)+"px"}); + } + writeSetting('width',sidenavWidth-barWidth); + } + + function restoreWidth(navWidth) + { + var windowWidth = $(window).width() + "px"; + content.css({marginLeft:parseInt(navWidth)+barWidth+"px"}); + if (typeof page_layout!=='undefined' && page_layout==1) { + footer.css({marginLeft:parseInt(navWidth)+barWidth+"px"}); + } + sidenav.css({width:navWidth + "px"}); + } + + function resizeHeight() + { + var headerHeight = header.outerHeight(); + var footerHeight = footer.outerHeight(); + var windowHeight = $(window).height(); + var contentHeight,navtreeHeight,sideNavHeight; + if (typeof page_layout==='undefined' || page_layout==0) { /* DISABLE_INDEX=NO */ + contentHeight = windowHeight - headerHeight - footerHeight; + navtreeHeight = contentHeight; + sideNavHeight = contentHeight; + } else if (page_layout==1) { /* DISABLE_INDEX=YES */ + contentHeight = windowHeight - footerHeight; + navtreeHeight = windowHeight - headerHeight; + sideNavHeight = windowHeight; + } + content.css({height:contentHeight + "px"}); + navtree.css({height:navtreeHeight + "px"}); + sidenav.css({height:sideNavHeight + "px"}); + if (location.hash.slice(1)) { + (document.getElementById(location.hash.slice(1))||document.body).scrollIntoView(); + } + } + + function collapseExpand() + { + var newWidth; + if (sidenav.width()>0) { + newWidth=0; + } + else { + var width = readSetting('width'); + newWidth = (width>250 && width<$(window).width()) ? width : 250; + } + restoreWidth(newWidth); + var sidenavWidth = $(sidenav).outerWidth(); + writeSetting('width',sidenavWidth-barWidth); + } + + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(sidenav).resizable({ minWidth: 0 }); + $(window).resize(function() { resizeHeight(); }); + var device = navigator.userAgent.toLowerCase(); + var touch_device = device.match(/(iphone|ipod|ipad|android)/); + if (touch_device) { /* wider split bar for touch only devices */ + $(sidenav).css({ paddingRight:'20px' }); + $('.ui-resizable-e').css({ width:'20px' }); + $('#nav-sync').css({ right:'34px' }); + barWidth=20; + } + var width = readSetting('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + if (once) { + $(".ui-resizable-handle").dblclick(collapseExpand); + once=0 + } + $(window).on('load',resizeHeight); +} +/* @license-end */ diff --git a/search/all_0.js b/search/all_0.js new file mode 100644 index 000000000..ff3e038e0 --- /dev/null +++ b/search/all_0.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['_5fcreationorder_0',['_CreationOrder',['../struct_high_five_1_1_creation_order.html#aaaeb7940131b73a9385f499e08d2c0df',1,'HighFive::CreationOrder']]], + ['_5ferr_5fmajor_1',['_err_major',['../class_high_five_1_1_exception.html#a835aebf45a86bbd81bf59b5975d69608',1,'HighFive::Exception']]], + ['_5ferr_5fminor_2',['_err_minor',['../class_high_five_1_1_exception.html#ad62a656089c5e551f258138b48a1eb6c',1,'HighFive::Exception']]], + ['_5ferrmsg_3',['_errmsg',['../class_high_five_1_1_exception.html#aa2d52ba9b9f7ca9157d46569b13e8462',1,'HighFive::Exception']]], + ['_5ffile_5fobj_4',['_file_obj',['../class_high_five_1_1_path_traits.html#a9d0db67d0c4a3d1afacdb4fc9f17a302',1,'HighFive::PathTraits']]], + ['_5fh5_5fstruct_5fpadding_5',['_H5_STRUCT_PADDING',['../_h5_data_type__misc_8hpp.html#a8411b26baa96407eb4f3de2ba4bcd6f7',1,'H5DataType_misc.hpp']]], + ['_5fhid_6',['_hid',['../class_high_five_1_1_object.html#a8e28f684d63a33646aa107a41d9cf521',1,'HighFive::Object']]], + ['_5finitializeifneeded_7',['_initializeIfNeeded',['../class_high_five_1_1_property_list.html#a532f2e881eb1cb05da42d687c1d5e97e',1,'HighFive::PropertyList']]], + ['_5fnext_8',['_next',['../class_high_five_1_1_exception.html#a45f55e73e6d6e5ba8187ba15c799d829',1,'HighFive::Exception']]] +]; diff --git a/search/all_1.js b/search/all_1.js new file mode 100644 index 000000000..97e26f5d7 --- /dev/null +++ b/search/all_1.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['add_0',['add',['../class_high_five_1_1_raw_property_list.html#a7f1ab49326895254c10c8d39724aa944',1,'HighFive::RawPropertyList::add()'],['../class_high_five_1_1_property_list.html#af982152b36c4216bdcdf60dbf10f0a1d',1,'HighFive::PropertyList::add()']]], + ['allocationtime_1',['allocationtime',['../class_high_five_1_1_allocation_time.html',1,'HighFive::AllocationTime'],['../class_high_five_1_1_allocation_time.html#a6855f0c3f6c66d4c1ec41d95aebb2ad3',1,'HighFive::AllocationTime::AllocationTime(const DataSetCreateProps &dcpl)'],['../class_high_five_1_1_allocation_time.html#aa9b8f91669815c7579e952f1ab5d7c64',1,'HighFive::AllocationTime::AllocationTime(H5D_alloc_time_t alloc_time)']]], + ['annotatetraits_2',['AnnotateTraits',['../class_high_five_1_1_annotate_traits.html',1,'HighFive']]], + ['annotatetraits_3c_20dataset_20_3e_3',['AnnotateTraits< DataSet >',['../class_high_five_1_1_annotate_traits.html',1,'HighFive']]], + ['annotatetraits_3c_20file_20_3e_4',['AnnotateTraits< File >',['../class_high_five_1_1_annotate_traits.html',1,'HighFive']]], + ['annotatetraits_3c_20group_20_3e_5',['AnnotateTraits< Group >',['../class_high_five_1_1_annotate_traits.html',1,'HighFive']]], + ['apply_6',['apply',['../class_high_five_1_1_hyper_slab.html#afecb4503d3ce92815710f03b3d0a85b8',1,'HighFive::HyperSlab']]], + ['array_7',['Array',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba4410ec34d9e6c1a68100ca0ce033fb17',1,'HighFive']]], + ['ascii_8',['Ascii',['../namespace_high_five.html#a7133a7a677541ffa6780f5ca5eee6db9a76b8d0dcd02ccaf203c167ced6d7ef31',1,'HighFive']]], + ['asstringtype_9',['asStringType',['../class_high_five_1_1_data_type.html#ab959e9cd8ccd474542bf220627ec7844',1,'HighFive::DataType']]], + ['at_10',['at',['../class_high_five_1_1_fixed_len_string_array.html#a4f181ea68d6acaff1368236498aa4058',1,'HighFive::FixedLenStringArray']]], + ['atomictype_11',['atomictype',['../class_high_five_1_1_atomic_type.html#a68a295d57afe890a26c49523ca06eceb',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a06c87a3e42844220d3f1acf7e220588f',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a0b4d0f1d9c5b18020a460ac1591b0665',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a43016c14b0c4731802ff4468486a3f83',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#aa6082308b8707466a329e02a59a92e0f',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#ad7288e7c84ac324b4dea8169f071e4ee',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a82b6070cd38dd7456d29018765539d0f',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a9b68b644e1e8b20e36ab5098561590fd',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a0edf612da138154aa497d6a2706876ba',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a45b7187829cdc797fba98c530253b7fa',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#ab17d941585baab34c224e0e448b824a6',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#abaf0327b4db9b70f0aa922f92edaa76e',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a8291e490374e7584d5309b24a86f1615',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a7e64d2707996b3b03657c0be2172cbdb',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a7e51e6773bb9934eb8d7fe9881fe4fe9',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#af8b6e9ffdb076ecd7b9ea8e825b1d7c9',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#ace690f26cabac4bd472f47e6629fe7ae',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html#afce941c6b3480ed7cfcf5a787396c500',1,'HighFive::AtomicType< std::complex< T > >::AtomicType()'],['../class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html#ae837edf90c28aaf2229c7a7de899e133',1,'HighFive::AtomicType< FixedLenStringArray< StrLen > >::AtomicType()'],['../class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html#a4ae18629788947cdb9c5f6893017376b',1,'HighFive::AtomicType< char[StrLen]>::AtomicType()'],['../class_high_five_1_1_atomic_type.html',1,'HighFive::AtomicType< T >'],['../class_high_five_1_1_atomic_type.html#ae8cebf936468a862589b073db0d28d44',1,'HighFive::AtomicType::AtomicType()']]], + ['atomictype_3c_20char_5bstrlen_5d_3e_12',['AtomicType< char[StrLen]>',['../class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html',1,'HighFive']]], + ['atomictype_3c_20fixedlenstringarray_3c_20strlen_20_3e_20_3e_13',['AtomicType< FixedLenStringArray< StrLen > >',['../class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html',1,'HighFive']]], + ['atomictype_3c_20std_3a_3acomplex_3c_20t_20_3e_20_3e_14',['AtomicType< std::complex< T > >',['../class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html',1,'HighFive']]], + ['attribute_15',['attribute',['../class_high_five_1_1_attribute.html',1,'HighFive::Attribute'],['../class_high_five_1_1_data_space.html#abd4bab8f7ee748d7ea63f7f9b6248611',1,'HighFive::DataSpace::Attribute'],['../class_high_five_1_1_data_type.html#abd4bab8f7ee748d7ea63f7f9b6248611',1,'HighFive::DataType::Attribute'],['../class_high_five_1_1_attribute.html#aa2ac0bfc7aa4f29ef5d32a6518cb40a3',1,'HighFive::Attribute::Attribute()'],['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474af2bbdf9f72c085adc4d0404e370f0f4c',1,'HighFive::Attribute']]], + ['attribute_5fcreate_16',['ATTRIBUTE_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a518c30284a8061ffe051004a0670f135',1,'HighFive']]], + ['attributecreateprops_17',['AttributeCreateProps',['../group___property_lists.html#gacb1c3dfd159c55b953758edb7685a049',1,'HighFive']]], + ['attributeexception_18',['attributeexception',['../class_high_five_1_1_attribute_exception.html#ade502f58024a58bea7454e8a4d58c4f0',1,'HighFive::AttributeException::AttributeException()'],['../class_high_five_1_1_attribute_exception.html',1,'HighFive::AttributeException']]], + ['attributephasechange_19',['attributephasechange',['../class_high_five_1_1_attribute_phase_change.html#a979a5ef023e9c45b1d8b3de253fb69ef',1,'HighFive::AttributePhaseChange::AttributePhaseChange(unsigned max_compact, unsigned min_dense)'],['../class_high_five_1_1_attribute_phase_change.html#a06649e848cb2fe58934d2a750e853e9b',1,'HighFive::AttributePhaseChange::AttributePhaseChange(const GroupCreateProps &gcpl)'],['../class_high_five_1_1_attribute_phase_change.html',1,'HighFive::AttributePhaseChange']]] +]; diff --git a/search/all_10.js b/search/all_10.js new file mode 100644 index 000000000..e543914f5 --- /dev/null +++ b/search/all_10.js @@ -0,0 +1,26 @@ +var searchData= +[ + ['select_0',['select',['../class_high_five_1_1_slice_traits.html#aa67c235ff1633d91f77b4f3fd911da75',1,'HighFive::SliceTraits::select(const ElementSet &elements) const'],['../class_high_five_1_1_slice_traits.html#a52c44cc1bdfac24890b999e902099c83',1,'HighFive::SliceTraits::select(const std::vector< size_t > &columns) const'],['../class_high_five_1_1_slice_traits.html#a6a76a20247d0e8f8629b81c17425d73c',1,'HighFive::SliceTraits::select(const std::vector< size_t > &offset, const std::vector< size_t > &count, const std::vector< size_t > &stride={}, const std::vector< size_t > &block={}) const'],['../class_high_five_1_1_slice_traits.html#a71175dfcf7e9fa5ca5d5e2919163dece',1,'HighFive::SliceTraits::select(const HyperSlab &hyperslab, const DataSpace &memspace) const'],['../class_high_five_1_1_slice_traits.html#aa11ef45e433e18ce8f4706f17a8d7463',1,'HighFive::SliceTraits::select(const HyperSlab &hyperslab) const']]], + ['selection_1',['selection',['../class_high_five_1_1_selection.html',1,'HighFive::Selection'],['../class_high_five_1_1_selection.html#ae5ffe93f0e0a4d6e04d531420fd63e29',1,'HighFive::Selection::Selection()']]], + ['set_2',['set',['../class_h5_easy_1_1_dump_options.html#a026e6c7714cae7e1b9a93b0e39ca71d0',1,'H5Easy::DumpOptions::set(Flush mode)'],['../class_h5_easy_1_1_dump_options.html#aca2b65d5fe5b5fa9bc74f62bb8c52871',1,'H5Easy::DumpOptions::set(DumpMode mode)'],['../class_h5_easy_1_1_dump_options.html#ae1db6010b692e7a0c260ce86e80f5e28',1,'H5Easy::DumpOptions::set(const Compression &level)'],['../class_h5_easy_1_1_dump_options.html#aa242b2d0698060317ba538349b193656',1,'H5Easy::DumpOptions::set(T arg, Args... args)']]], + ['set_5flogging_5fcallback_3',['set_logging_callback',['../class_high_five_1_1_logger.html#a9b42228f1091409f5fc4b09a25fed4fc',1,'HighFive::Logger']]], + ['setchunksize_4',['setchunksize',['../class_h5_easy_1_1_dump_options.html#af8cb0dc019344b41643cbcebb4c88f01',1,'H5Easy::DumpOptions::setChunkSize(const std::vector< T > &shape)'],['../class_h5_easy_1_1_dump_options.html#ac5fa831c573ee5a7f03aea5967cf3301',1,'H5Easy::DumpOptions::setChunkSize(std::initializer_list< size_t > shape)']]], + ['seterrormsg_5',['setErrorMsg',['../class_high_five_1_1_exception.html#a7c9b65fc87cf1abfed6d24309c74f0cf',1,'HighFive::Exception']]], + ['shuffle_6',['shuffle',['../class_high_five_1_1_shuffle.html#a7fc2632a04860fee90b30867afb43f46',1,'HighFive::Shuffle::Shuffle()'],['../class_high_five_1_1_shuffle.html',1,'HighFive::Shuffle']]], + ['silencehdf5_7',['silencehdf5',['../class_high_five_1_1_silence_h_d_f5.html',1,'HighFive::SilenceHDF5'],['../class_high_five_1_1_silence_h_d_f5.html#a87e3b628feb913044cf4859fce72e9b5',1,'HighFive::SilenceHDF5::SilenceHDF5()']]], + ['size_8',['size',['../class_high_five_1_1_fixed_len_string_array.html#ac3097dafb2c4aa731fe154a746b937b5',1,'HighFive::FixedLenStringArray']]], + ['slicetraits_9',['slicetraits',['../class_high_five_1_1_slice_traits.html',1,'HighFive::SliceTraits< Derivate >'],['../class_high_five_1_1_element_set.html#addb06cbd22277a5199483352358a5e4f',1,'HighFive::ElementSet::SliceTraits']]], + ['slicetraits_3c_20dataset_20_3e_10',['SliceTraits< DataSet >',['../class_high_five_1_1_slice_traits.html',1,'HighFive']]], + ['slicetraits_3c_20selection_20_3e_11',['SliceTraits< Selection >',['../class_high_five_1_1_slice_traits.html',1,'HighFive']]], + ['soft_12',['Soft',['../namespace_high_five.html#abe5895b8113887accd6bff2392b24c40a682160fc6ad12f783f70608a9b46b9b9',1,'HighFive']]], + ['spacepadded_13',['SpacePadded',['../namespace_high_five.html#ad9265809238043adba9b446b5c61e953a4ca955dd1a77b70b5a0a28512c0e5f24',1,'HighFive']]], + ['stackwalk_14',['stackWalk',['../struct_high_five_1_1_h_d_f5_err_mapper.html#a6b5c9457c40015e9c57896e68cf86069',1,'HighFive::HDF5ErrMapper']]], + ['stride_15',['stride',['../struct_high_five_1_1_regular_hyper_slab.html#afee214170da6b05c0b08727664c599e6',1,'HighFive::RegularHyperSlab']]], + ['string_16',['string',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba27118326006d3829667a400ad23d5d98',1,'HighFive::String'],['../class_high_five_1_1_data_type.html#a957ea4848ba76cab82d7b4cff7210c87',1,'HighFive::DataType::string()']]], + ['string_5fcreate_17',['STRING_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a8c7bdf2b95146589251f8ecff10ca084',1,'HighFive']]], + ['string_5fpadding_2ehpp_18',['string_padding.hpp',['../string__padding_8hpp.html',1,'']]], + ['stringcreateprops_19',['StringCreateProps',['../group___property_lists.html#ga87ce367dfedef16f5d2c4d37a26e52eb',1,'HighFive']]], + ['stringpadding_20',['StringPadding',['../namespace_high_five.html#ad9265809238043adba9b446b5c61e953',1,'HighFive']]], + ['stringtype_21',['StringType',['../class_high_five_1_1_string_type.html',1,'HighFive']]], + ['szip_22',['szip',['../class_high_five_1_1_szip.html#a2857efb608427dbfcea9356fbd0f1cea',1,'HighFive::Szip::Szip()'],['../class_high_five_1_1_szip.html',1,'HighFive::Szip']]] +]; diff --git a/search/all_11.js b/search/all_11.js new file mode 100644 index 000000000..50a660da3 --- /dev/null +++ b/search/all_11.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['time_0',['Time',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847baa76d4ef5f3f6a672bbfab2865563e530',1,'HighFive']]], + ['to_5fstring_1',['to_string',['../namespace_high_five.html#ace8358255410138c5e223747e2a06f36',1,'HighFive']]], + ['toexception_2',['ToException',['../struct_high_five_1_1_h_d_f5_err_mapper.html#abce55b175d5b366589798b0bef28cae6',1,'HighFive::HDF5ErrMapper']]], + ['tohdf5sizevector_3',['toHDF5SizeVector',['../namespace_high_five.html#acd815ee14c714bfa4ba0f05acc6e486d',1,'HighFive']]], + ['tostlsizevector_4',['toSTLSizeVector',['../namespace_high_five.html#a1de5c5eaf17007862e5cf63ec186a64e',1,'HighFive']]], + ['tracked_5',['Tracked',['../struct_high_five_1_1_creation_order.html#aaaeb7940131b73a9385f499e08d2c0dfa63264d38eb4b2f184d68299f689e78b8',1,'HighFive::CreationOrder']]], + ['true_6',['True',['../namespace_h5_easy.html#af71ce7ab9b99227bdead69993d1f3b62af827cf462f62848df37c5e1e94a4da74',1,'H5Easy']]], + ['truncate_7',['Truncate',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431a2ee578fa7edc24587051a920880711c6',1,'HighFive::File']]], + ['type_8',['type',['../class_high_five_1_1_attribute.html#a820ea0440c7b9e3782088b8f3a4a06e5',1,'HighFive::Attribute::type'],['../class_high_five_1_1_data_set.html#ab70bd92f4760b776cc65eb3d627b61a0',1,'HighFive::DataSet::type'],['../class_high_five_1_1_data_space.html#a205c246e100975eda4dfd199e5ed11eb',1,'HighFive::DataSpace::type'],['../class_high_five_1_1_file.html#a9a4b0faf816423f39268ead24fb40683',1,'HighFive::File::type'],['../class_high_five_1_1_group.html#a6be13115b3540cbc134190a424b0134e',1,'HighFive::Group::type']]] +]; diff --git a/search/all_12.js b/search/all_12.js new file mode 100644 index 000000000..59021698b --- /dev/null +++ b/search/all_12.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['unlimited_0',['UNLIMITED',['../class_high_five_1_1_data_space.html#ae88be51fa3f0348a25152f4829f586b3',1,'HighFive::DataSpace']]], + ['unlink_1',['unlink',['../class_high_five_1_1_node_traits.html#a37ed4a7bc21f02b14d1f71e097b3d4bf',1,'HighFive::NodeTraits']]], + ['unqualified_5ft_2',['unqualified_t',['../namespace_high_five.html#a792f32000f201b45366989bd9e5c31c5',1,'HighFive']]], + ['usecollectiveio_3',['usecollectiveio',['../class_high_five_1_1_use_collective_i_o.html',1,'HighFive::UseCollectiveIO'],['../class_high_five_1_1_use_collective_i_o.html#a2e69f2c3f51af01f979094e5f8624327',1,'HighFive::UseCollectiveIO::UseCollectiveIO(bool enable=true)'],['../class_high_five_1_1_use_collective_i_o.html#a91ea36587502d39431c7fbb565e9debe',1,'HighFive::UseCollectiveIO::UseCollectiveIO(const DataTransferProps &dxpl)']]], + ['userdatatype_4',['UserDataType',['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a99f109983e5e6524be1f6fbcc819691c',1,'HighFive']]], + ['utf8_5',['Utf8',['../namespace_high_five.html#a7133a7a677541ffa6780f5ca5eee6db9a81f91ccd37ce1d232cbfc1520374319d',1,'HighFive']]] +]; diff --git a/search/all_13.js b/search/all_13.js new file mode 100644 index 000000000..8e280cf4f --- /dev/null +++ b/search/all_13.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['value_0',['value',['../struct_high_five_1_1_enum_type_1_1member__def.html#a08173394e258379cd6d223d302ff73ce',1,'HighFive::EnumType::member_def']]], + ['value_5ftype_1',['value_type',['../class_high_five_1_1_fixed_len_string_array.html#ab7d8bfeb0fb6ac5369084f7cd7ee907c',1,'HighFive::FixedLenStringArray']]], + ['variablelengthstringtype_2',['variablelengthstringtype',['../class_high_five_1_1_variable_length_string_type.html',1,'HighFive::VariableLengthStringType'],['../class_high_five_1_1_variable_length_string_type.html#acc03c514d450d31741a103765de509de',1,'HighFive::VariableLengthStringType::VariableLengthStringType()']]], + ['varlen_3',['VarLen',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba72c6842c18d1470d1c991f865a2fab3a',1,'HighFive']]] +]; diff --git a/search/all_14.js b/search/all_14.js new file mode 100644 index 000000000..202163c4e --- /dev/null +++ b/search/all_14.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['warn_0',['Warn',['../namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a56525ae64d370c0b448ac0d60710ef17',1,'HighFive']]], + ['wascollective_1',['wasCollective',['../class_high_five_1_1_mpio_no_collective_cause.html#a6d388115bac6e233bec17c6833206425',1,'HighFive::MpioNoCollectiveCause']]], + ['what_2',['what',['../class_high_five_1_1_exception.html#ac68d010bb13e90124360fa0f7c0e6f53',1,'HighFive::Exception']]], + ['write_3',['write',['../class_high_five_1_1_slice_traits.html#a307d4d8539a69feda2bbf11bf8622e60',1,'HighFive::SliceTraits::write()'],['../class_high_five_1_1_attribute.html#a9f7585585d281f09ab231df1637e29c7',1,'HighFive::Attribute::write()']]], + ['write_5fraw_4',['write_raw',['../class_high_five_1_1_slice_traits.html#aeac937f71ee942fafac7d19fb658721a',1,'HighFive::SliceTraits::write_raw(const T *buffer, const DataType &mem_datatype, const DataTransferProps &xfer_props=DataTransferProps())'],['../class_high_five_1_1_slice_traits.html#a4396e0774fd015f081dcc3eb12efe97c',1,'HighFive::SliceTraits::write_raw(const T *buffer, const DataTransferProps &xfer_props=DataTransferProps())'],['../class_high_five_1_1_attribute.html#aaf08f65d5477d96922aa257a2af86efa',1,'HighFive::Attribute::write_raw(const T *buffer, const DataType &mem_datatype)'],['../class_high_five_1_1_attribute.html#abb15f4324cc70aabaaaf9aaf9c7922c9',1,'HighFive::Attribute::write_raw(const T *buffer)']]] +]; diff --git a/search/all_15.js b/search/all_15.js new file mode 100644 index 000000000..2e9feb6df --- /dev/null +++ b/search/all_15.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['_7eexception_0',['~Exception',['../class_high_five_1_1_exception.html#a5b14aa4572f3e72eff27529413442f29',1,'HighFive::Exception']]], + ['_7eobject_1',['~Object',['../class_high_five_1_1_object.html#a26aecd6a0812960b13eff054fe3a78aa',1,'HighFive::Object']]], + ['_7esilencehdf5_2',['~SilenceHDF5',['../class_high_five_1_1_silence_h_d_f5.html#a56bfc9798ec749255cdd7960a73409a0',1,'HighFive::SilenceHDF5']]] +]; diff --git a/search/all_2.js b/search/all_2.js new file mode 100644 index 000000000..fd02278b1 --- /dev/null +++ b/search/all_2.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['back_0',['back',['../class_high_five_1_1_fixed_len_string_array.html#a575f76607299a2bfd870461532c42767',1,'HighFive::FixedLenStringArray']]], + ['base_5ftype_1',['base_type',['../struct_high_five_1_1_compound_type_1_1member__def.html#ac5ec615c6b321e2bcab9737a944b45ef',1,'HighFive::CompoundType::member_def']]], + ['basic_5ftype_2',['basic_type',['../class_high_five_1_1_atomic_type.html#aec235e205643310cbfeb2438b17fdc4d',1,'HighFive::AtomicType']]], + ['begin_3',['begin',['../class_high_five_1_1_fixed_len_string_array.html#ac93fca9a8c1847e2ebcba946766e47fe',1,'HighFive::FixedLenStringArray::begin() noexcept'],['../class_high_five_1_1_fixed_len_string_array.html#a13ebd6706d31cb69d05a60ce814b06b7',1,'HighFive::FixedLenStringArray::begin() const noexcept']]], + ['beginners_20installation_20guide_20on_20linux_4',['Beginners Installation Guide on Linux',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html',1,'']]], + ['bitfield_5',['BitField',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba2f706038ccc6843d07ebf1a34051a0a8',1,'HighFive']]], + ['block_6',['block',['../struct_high_five_1_1_regular_hyper_slab.html#a3cdc12f6910add0f049e672d115d3097',1,'HighFive::RegularHyperSlab']]] +]; diff --git a/search/all_3.js b/search/all_3.js new file mode 100644 index 000000000..ce004796b --- /dev/null +++ b/search/all_3.js @@ -0,0 +1,36 @@ +var searchData= +[ + ['c_20library_0',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]], + ['caching_1',['caching',['../class_high_five_1_1_caching.html',1,'HighFive::Caching'],['../class_high_five_1_1_caching.html#a4ad5bc32240ca22d19c154d6c7691e76',1,'HighFive::Caching::Caching(const size_t numSlots, const size_t cacheSize, const double w0=static_cast< double >(H5D_CHUNK_CACHE_W0_DEFAULT))'],['../class_high_five_1_1_caching.html#a1103a422af4e81b1f4c044996d66d72b',1,'HighFive::Caching::Caching(const DataSetCreateProps &dcpl)']]], + ['callback_5ftype_2',['callback_type',['../class_high_five_1_1_logger.html#a538145a3e19ae36b55a7637dcfe5f414',1,'HighFive::Logger']]], + ['cbegin_3',['cbegin',['../class_high_five_1_1_fixed_len_string_array.html#adbd25ca7ba7ca704f7e2ae4f59521a98',1,'HighFive::FixedLenStringArray']]], + ['cend_4',['cend',['../class_high_five_1_1_fixed_len_string_array.html#a0b2157856658953e64c39fb4c2711a59',1,'HighFive::FixedLenStringArray']]], + ['changelog_2emd_5',['CHANGELOG.md',['../_c_h_a_n_g_e_l_o_g_8md.html',1,'']]], + ['changes_6',['Changes',['../md__2home_2runner_2work_2_high_five_2_high_five_2_c_h_a_n_g_e_l_o_g.html',1,'']]], + ['characterset_7',['CharacterSet',['../namespace_high_five.html#a7133a7a677541ffa6780f5ca5eee6db9',1,'HighFive']]], + ['chunking_8',['chunking',['../class_high_five_1_1_chunking.html',1,'HighFive::Chunking'],['../class_high_five_1_1_chunking.html#a3c16ed55527bf30ae056cb2f52adb3bc',1,'HighFive::Chunking::Chunking(DataSetCreateProps &plist, size_t max_dims=32)'],['../class_high_five_1_1_chunking.html#a67ef8c92794bef91bb521dd1a8771034',1,'HighFive::Chunking::Chunking(hsize_t item, Args... args)'],['../class_high_five_1_1_chunking.html#abfd796a2842296cce52f56563d5e3f1b',1,'HighFive::Chunking::Chunking(const std::vector< hsize_t > &dims)'],['../class_high_five_1_1_chunking.html#ae6f0394d31da862755c2a828b7340578',1,'HighFive::Chunking::Chunking(const std::initializer_list< hsize_t > &items)']]], + ['clone_9',['clone',['../class_high_five_1_1_data_space.html#a902be8659c05c859158631230b78f3f4',1,'HighFive::DataSpace']]], + ['commit_10',['commit',['../class_high_five_1_1_compound_type.html#a15cef864f40910add938415ffb8eeac1',1,'HighFive::CompoundType::commit()'],['../class_high_five_1_1_enum_type.html#a989ae33cd573624dcbdcaf0d5bed5eea',1,'HighFive::EnumType::commit()']]], + ['compound_11',['Compound',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba26154ea007c65f860de5333a555a56cf',1,'HighFive']]], + ['compoundtype_12',['compoundtype',['../class_high_five_1_1_compound_type.html',1,'HighFive::CompoundType'],['../class_high_five_1_1_compound_type.html#ad8de9032c191ca6ca6221eb80dcf23da',1,'HighFive::CompoundType::CompoundType(DataType &&type)'],['../class_high_five_1_1_compound_type.html#a928622671e9da1ffcc7df491b746680d',1,'HighFive::CompoundType::CompoundType(const std::initializer_list< member_def > &t_members, size_t size=0)'],['../class_high_five_1_1_compound_type.html#af41ef356cdeb6f369ea2c3f5c6acb317',1,'HighFive::CompoundType::CompoundType(std::vector< member_def > &&t_members, size_t size=0)'],['../class_high_five_1_1_compound_type.html#a7a9a5ba8596390d58597efe77c986282',1,'HighFive::CompoundType::CompoundType(const CompoundType &other)=default'],['../class_high_five_1_1_data_type.html#a9531936c7f60cc4739426e6a25f23e7e',1,'HighFive::DataType::CompoundType'],['../class_high_five_1_1_compound_type.html#ac8f84671aaca1a6e4aadf599464f822d',1,'HighFive::CompoundType::CompoundType()'],['../class_high_five_1_1_object.html#a9531936c7f60cc4739426e6a25f23e7e',1,'HighFive::Object::CompoundType']]], + ['compress_13',['compress',['../class_h5_easy_1_1_dump_options.html#aef7625dc82a01d05a1e2047f0325dcd1',1,'H5Easy::DumpOptions']]], + ['compression_14',['compression',['../class_h5_easy_1_1_compression.html#af85134056dad9c8b46bb51835cba11d7',1,'H5Easy::Compression::Compression(bool enable=true)'],['../class_h5_easy_1_1_compression.html#aae59d202e4dfe95c53ee626d3439f6e4',1,'H5Easy::Compression::Compression(T level)'],['../class_h5_easy_1_1_compression.html',1,'H5Easy::Compression']]], + ['compute_5ftotal_5fsize_15',['compute_total_size',['../namespace_high_five.html#ae473192dc3e4e3f42c470f682817a32c',1,'HighFive']]], + ['const_5fiterator_16',['const_iterator',['../class_high_five_1_1_fixed_len_string_array.html#a2294199cf6a8d597e0cba376bbd85231',1,'HighFive::FixedLenStringArray']]], + ['const_5freverse_5fiterator_17',['const_reverse_iterator',['../class_high_five_1_1_fixed_len_string_array.html#aeaca38cc497e758037390083f0d192a2',1,'HighFive::FixedLenStringArray']]], + ['count_18',['count',['../struct_high_five_1_1_regular_hyper_slab.html#ad1e6e23554a49dfabf633fd7a928cbb8',1,'HighFive::RegularHyperSlab']]], + ['create_19',['create',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431a6c1f31f0e601d0b3982ac64dc50cdd69',1,'HighFive::File::Create'],['../namespace_h5_easy.html#a6d10754b7f2ada9e3296560032dd81a0a686e697538050e4664636337cc3b834f',1,'H5Easy::Create']]], + ['create_5fand_5fcheck_5fdatatype_20',['create_and_check_datatype',['../namespace_high_five.html#a43d3946c0bb037e99c803ec90dc247b4',1,'HighFive']]], + ['create_5fdatatype_21',['create_datatype',['../namespace_high_five.html#a6f3b307cc5b6bd82d6360f13cacac2de',1,'HighFive']]], + ['create_5fenum_5fboolean_22',['create_enum_boolean',['../namespace_high_five.html#a361e2132e78bca627125eba4295b9ae6',1,'HighFive']]], + ['create_5fref_23',['create_ref',['../class_high_five_1_1_reference.html#af33dd1870b37db8c90287df4f0c7d622',1,'HighFive::Reference']]], + ['createattribute_24',['createattribute',['../class_high_five_1_1_annotate_traits.html#ae4e2ba30f074187856b98bdc61bbd646',1,'HighFive::AnnotateTraits::createAttribute(const std::string &attribute_name, const T &data)'],['../class_high_five_1_1_annotate_traits.html#a7218895780698f2bbab4d029fdab0284',1,'HighFive::AnnotateTraits::createAttribute(const std::string &attribute_name, const DataSpace &space)'],['../class_high_five_1_1_annotate_traits.html#a43db973fb33b6abbd8cc8cd7a6dc4bec',1,'HighFive::AnnotateTraits::createAttribute(const std::string &attribute_name, const DataSpace &space, const DataType &type)']]], + ['createdataset_25',['createdataset',['../class_high_five_1_1_node_traits.html#afe17f9c1eb52c53679594f80b0d1bb8d',1,'HighFive::NodeTraits::createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)'],['../class_high_five_1_1_node_traits.html#a3adbf1f9a4c0bb6a5824cd1e4dc0a181',1,'HighFive::NodeTraits::createDataSet(const std::string &dataset_name, const FixedLenStringArray< N > &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)'],['../class_high_five_1_1_node_traits.html#ac53402ee0dc01b86ac475dfa8db172c3',1,'HighFive::NodeTraits::createDataSet(const std::string &dataset_name, const T &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)'],['../class_high_five_1_1_node_traits.html#afe17f9c1eb52c53679594f80b0d1bb8d',1,'HighFive::NodeTraits::createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)'],['../class_high_five_1_1_node_traits.html#a941a8deb4c9971d27af7b7b73a534709',1,'HighFive::NodeTraits::createDataSet(const std::string &dataset_name, const DataSpace &space, const DataType &type, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)']]], + ['createexternallink_26',['createExternalLink',['../class_high_five_1_1_node_traits.html#a4f63ab185617fac1597087e8079a0989',1,'HighFive::NodeTraits']]], + ['creategroup_27',['creategroup',['../class_high_five_1_1_node_traits.html#a3da8ee379234a7d0d18e0abbd6019196',1,'HighFive::NodeTraits::createGroup(const std::string &group_name, const GroupCreateProps &createProps, bool parents=true)'],['../class_high_five_1_1_node_traits.html#a8b966c4e5ee90aa9d86421646f2ecb99',1,'HighFive::NodeTraits::createGroup(const std::string &group_name, bool parents=true)']]], + ['createhardlink_28',['createHardLink',['../class_high_five_1_1_node_traits.html#a7f11136752f9a2ec632e0b2f94fb475e',1,'HighFive::NodeTraits']]], + ['createintermediategroup_29',['createintermediategroup',['../class_high_five_1_1_create_intermediate_group.html',1,'HighFive::CreateIntermediateGroup'],['../class_high_five_1_1_create_intermediate_group.html#a5d3a1f7a0201c8735bb27493717b67a8',1,'HighFive::CreateIntermediateGroup::CreateIntermediateGroup(const LinkCreateProps &lcpl)'],['../class_high_five_1_1_create_intermediate_group.html#ab7b461991cf2489e2ec80c17c2a15462',1,'HighFive::CreateIntermediateGroup::CreateIntermediateGroup(const ObjectCreateProps &ocpl)'],['../class_high_five_1_1_create_intermediate_group.html#a05ff59987cddf8b82e3bd7a3eec0394f',1,'HighFive::CreateIntermediateGroup::CreateIntermediateGroup(bool create=true)']]], + ['createsoftlink_30',['createsoftlink',['../class_high_five_1_1_node_traits.html#a44f7cc437ed68cb9d534f2fe2ffe3c79',1,'HighFive::NodeTraits::createSoftLink(const std::string &link_name, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)'],['../class_high_five_1_1_node_traits.html#a6f4f9127e6626fdc9d3456a77899217b',1,'HighFive::NodeTraits::createSoftLink(const std::string &linkName, const T &obj)']]], + ['creationorder_31',['CreationOrder',['../struct_high_five_1_1_creation_order.html',1,'HighFive']]], + ['crt_5forder_32',['CRT_ORDER',['../namespace_high_five.html#afed91f5950b7a58ec51a33d260773996ac83c60110da7010a6dd3168fb2c8b8a7',1,'HighFive']]] +]; diff --git a/search/all_4.js b/search/all_4.js new file mode 100644 index 000000000..c9c4b9e3e --- /dev/null +++ b/search/all_4.js @@ -0,0 +1,37 @@ +var searchData= +[ + ['data_0',['data',['../class_high_five_1_1_fixed_len_string_array.html#a7f05997860932a452aaa786b77c0058d',1,'HighFive::FixedLenStringArray::data() noexcept'],['../class_high_five_1_1_fixed_len_string_array.html#a1f3bd411e653c928a3d852d38fd7ef31',1,'HighFive::FixedLenStringArray::data() const noexcept']]], + ['dataset_1',['dataset',['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a239658e016e3d5d06ae719d280a79fec',1,'HighFive::Dataset'],['../class_high_five_1_1_data_set.html',1,'HighFive::DataSet'],['../class_high_five_1_1_data_space.html#aef648af6c56fa8ee0738c93629e725dc',1,'HighFive::DataSpace::DataSet'],['../class_high_five_1_1_data_type.html#aef648af6c56fa8ee0738c93629e725dc',1,'HighFive::DataType::DataSet'],['../class_high_five_1_1_data_set.html#a1a43c3413fef0f376d85dbf47e38ad55',1,'HighFive::DataSet::DataSet()=default'],['../class_high_five_1_1_data_set.html#a99bb1d77991fd975fb559372b4b0fb6b',1,'HighFive::DataSet::DataSet(Object &&o) noexcept']]], + ['dataset_5faccess_2',['DATASET_ACCESS',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a1f9f49c3a9b29c99fd336a46e1fb0b8c',1,'HighFive']]], + ['dataset_5fcreate_3',['DATASET_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4aafd89ef46ba1fc317f8b8cfadbc8e89d',1,'HighFive']]], + ['dataset_5fxfer_4',['DATASET_XFER',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4adbac4060e0053cc521283eb9f7d0869e',1,'HighFive']]], + ['datasetaccessprops_5',['DataSetAccessProps',['../group___property_lists.html#gaf44317987cc247ecd0a2c0fc7106ca24',1,'HighFive']]], + ['datasetcreateprops_6',['DataSetCreateProps',['../group___property_lists.html#ga5d1374d565280c990d8ec175175dd25b',1,'HighFive']]], + ['datasetexception_7',['datasetexception',['../class_high_five_1_1_data_set_exception.html',1,'HighFive::DataSetException'],['../class_high_five_1_1_data_set_exception.html#a12e2ef42d52a26486cbaa10ff9c02534',1,'HighFive::DataSetException::DataSetException()']]], + ['dataspace_8',['dataspace',['../class_high_five_1_1_data_space.html#a40b1526be36b7ebb536122f9c413feef',1,'HighFive::DataSpace::DataSpace(const std::vector< size_t > &dims)'],['../class_high_five_1_1_data_space.html#a978628751ce6f7ecf92961fa44e2a821',1,'HighFive::DataSpace::DataSpace(const std::array< size_t, N > &dims)'],['../class_high_five_1_1_data_space.html#a6558726da6bff24df406751a4429e10b',1,'HighFive::DataSpace::DataSpace(const std::initializer_list< size_t > &dims)'],['../class_high_five_1_1_data_space.html#a2771c3df1c0578278bfbd0e2263e7abf',1,'HighFive::DataSpace::DataSpace(size_t dim1, Args... dims)'],['../class_high_five_1_1_data_space.html#a5d48bf7863b08eed90d4357ac476b4a1',1,'HighFive::DataSpace::DataSpace(const IT begin, const IT end)'],['../class_high_five_1_1_data_space.html#a435085d2b1d06d54966c13d0d84a6e77',1,'HighFive::DataSpace::DataSpace(const std::vector< size_t > &dims, const std::vector< size_t > &maxdims)'],['../class_high_five_1_1_data_space.html#ab9230eeb6124dee3fbbc49c725e988ee',1,'HighFive::DataSpace::DataSpace(DataspaceType space_type)'],['../class_high_five_1_1_data_space.html#aaf4d7229b87d8175eaf0ab2314e9675a',1,'HighFive::DataSpace::DataSpace()=default'],['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a546863182b9bd136e5295389d0e8343e',1,'HighFive::DataSpace'],['../class_high_five_1_1_data_space.html',1,'HighFive::DataSpace']]], + ['dataspace_5fnull_9',['dataspace_null',['../class_high_five_1_1_data_space.html#a7169f30770f2b72b4d28841da2d6c153ac1a4c13c2bac8e1679bf850e76ad6092',1,'HighFive::DataSpace']]], + ['dataspace_5fscalar_10',['dataspace_scalar',['../class_high_five_1_1_data_space.html#a7169f30770f2b72b4d28841da2d6c153a49388b6d4ad7831a6589af61d6e60409',1,'HighFive::DataSpace']]], + ['dataspaceexception_11',['dataspaceexception',['../class_high_five_1_1_data_space_exception.html#a6838cd3e42fc092ed25594f8e4e98093',1,'HighFive::DataSpaceException::DataSpaceException()'],['../class_high_five_1_1_data_space_exception.html',1,'HighFive::DataSpaceException']]], + ['dataspacetype_12',['DataspaceType',['../class_high_five_1_1_data_space.html#a7169f30770f2b72b4d28841da2d6c153',1,'HighFive::DataSpace']]], + ['datatransferprops_13',['DataTransferProps',['../group___property_lists.html#ga0cf55aeace55556d9c828d69249733b9',1,'HighFive']]], + ['datatype_14',['datatype',['../class_high_five_1_1_string_type.html#a3891af67cf0b0e58640245a7ba31176f',1,'HighFive::StringType::DataType'],['../class_high_five_1_1_data_type.html',1,'HighFive::DataType']]], + ['datatype_5faccess_15',['DATATYPE_ACCESS',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a023c2a1da4192ec57c9589f2adcf0375',1,'HighFive']]], + ['datatype_5fcreate_16',['DATATYPE_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a4a9bef3e26735c56f85701720da97704',1,'HighFive']]], + ['datatypeaccessprops_17',['DataTypeAccessProps',['../group___property_lists.html#gac8cba5869615a0ed534eabcd4fcf5764',1,'HighFive']]], + ['datatypeclass_18',['DataTypeClass',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847b',1,'HighFive']]], + ['datatypecreateprops_19',['DataTypeCreateProps',['../group___property_lists.html#gafc468b8dcc348886b27bc4edba46caf3',1,'HighFive']]], + ['datatypeexception_20',['datatypeexception',['../class_high_five_1_1_data_type_exception.html#abfbd23381af62882f92fa1308f21948a',1,'HighFive::DataTypeException::DataTypeException()'],['../class_high_five_1_1_data_type_exception.html',1,'HighFive::DataTypeException']]], + ['debug_21',['debug',['../namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246aa603905470e2a5b8c13e96b579ef0dba',1,'HighFive::Debug'],['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431ac2400c1be1f6d184f2f7e2d5f6ac82c3',1,'HighFive::File::Debug']]], + ['default_22',['default',['../class_high_five_1_1_property_list.html#a632188590f43c420a203c41909963a73',1,'HighFive::PropertyList::Default()'],['../class_high_five_1_1_property_list_base.html#aceba0c0241a36365b737e58baeb657ca',1,'HighFive::PropertyListBase::Default()']]], + ['default_5flogging_5fcallback_23',['default_logging_callback',['../namespace_high_five.html#abf6fe5be71a00bfb4d6b5f65e6248132',1,'HighFive']]], + ['deflate_24',['deflate',['../class_high_five_1_1_deflate.html#aec7e6cfb91ee39beb916c0a96921fd6b',1,'HighFive::Deflate::Deflate()'],['../class_high_five_1_1_deflate.html',1,'HighFive::Deflate']]], + ['deleteattribute_25',['deleteAttribute',['../class_high_five_1_1_annotate_traits.html#a6aa353a99c57bc526da0b2f1a06318b3',1,'HighFive::AnnotateTraits']]], + ['deprecated_20list_26',['Deprecated List',['../deprecated.html',1,'']]], + ['dereference_27',['dereference',['../class_high_five_1_1_reference.html#a083d46fbe580304f8416f73e57a5b414',1,'HighFive::Reference']]], + ['developer_20guide_28',['Developer Guide',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2developer__guide.html',1,'']]], + ['developer_5fguide_2emd_29',['developer_guide.md',['../developer__guide_8md.html',1,'']]], + ['dump_30',['dump',['../namespace_h5_easy.html#a3d74bc6b96493dbef4fb3b4e237cff88',1,'H5Easy::dump(File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)'],['../namespace_h5_easy.html#a5f0af85e0fe3ac03af665dae2a3e9e16',1,'H5Easy::dump(File &file, const std::string &path, const T &data, const std::initializer_list< size_t > &idx, const DumpOptions &options)'],['../namespace_h5_easy.html#a26be50f813db9257d77b0c25adfdf726',1,'H5Easy::dump(File &file, const std::string &path, const T &data, const std::vector< size_t > &idx, const DumpOptions &options)'],['../namespace_h5_easy.html#a2e96c80337866b79777e52faa7d692cc',1,'H5Easy::dump(File &file, const std::string &path, const T &data, const std::initializer_list< size_t > &idx)'],['../namespace_h5_easy.html#a727340de29b032fa860412f6a69f215c',1,'H5Easy::dump(File &file, const std::string &path, const T &data, const std::vector< size_t > &idx)'],['../namespace_h5_easy.html#a7614d902c22b74a18fb29c42599a6785',1,'H5Easy::dump(File &file, const std::string &path, const T &data, const DumpOptions &options)']]], + ['dumpattribute_31',['dumpattribute',['../namespace_h5_easy.html#a85cad90855dbb23ba985be58b447a6b2',1,'H5Easy::dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)'],['../namespace_h5_easy.html#a4a395eb642d1a2d5055282dacf32ee94',1,'H5Easy::dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, const DumpOptions &options)']]], + ['dumpmode_32',['DumpMode',['../namespace_h5_easy.html#a6d10754b7f2ada9e3296560032dd81a0',1,'H5Easy']]], + ['dumpoptions_33',['dumpoptions',['../class_h5_easy_1_1_dump_options.html#af2a89678a725e2cb33b4f4a824d102d3',1,'H5Easy::DumpOptions::DumpOptions()'],['../class_h5_easy_1_1_dump_options.html',1,'H5Easy::DumpOptions'],['../class_h5_easy_1_1_dump_options.html#a692690dae0de400b885791b9ce1434b7',1,'H5Easy::DumpOptions::DumpOptions()']]] +]; diff --git a/search/all_5.js b/search/all_5.js new file mode 100644 index 000000000..a44ce3dcc --- /dev/null +++ b/search/all_5.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['elementset_0',['elementset',['../class_high_five_1_1_element_set.html',1,'HighFive::ElementSet'],['../class_high_five_1_1_element_set.html#a1479938205bd9d66267a58a11651b04f',1,'HighFive::ElementSet::ElementSet(std::initializer_list< std::size_t > list)'],['../class_high_five_1_1_element_set.html#a294be4e23eff7d07faa08e128d4b0afc',1,'HighFive::ElementSet::ElementSet(std::initializer_list< std::vector< std::size_t > > list)'],['../class_high_five_1_1_element_set.html#aedd3703eec6465101d2eef43ddbb5788',1,'HighFive::ElementSet::ElementSet(const std::vector< std::size_t > &element_ids)'],['../class_high_five_1_1_element_set.html#afc31e0be89f28aea060d8482ea525996',1,'HighFive::ElementSet::ElementSet(const std::vector< std::vector< std::size_t > > &element_ids)']]], + ['empty_1',['empty',['../class_high_five_1_1_data_type.html#a546aceb9cdbc45d5e471811b8e9cdce8',1,'HighFive::DataType::empty()'],['../class_high_five_1_1_fixed_len_string_array.html#ae4e45b62e6aa12d7e1889250d347aca0',1,'HighFive::FixedLenStringArray::empty() const noexcept']]], + ['end_2',['end',['../class_high_five_1_1_fixed_len_string_array.html#adbfe9953b715595267130ac4e46e0dfc',1,'HighFive::FixedLenStringArray::end() noexcept'],['../class_high_five_1_1_fixed_len_string_array.html#a4d71a772f55f81a5e9fa9a333e64899d',1,'HighFive::FixedLenStringArray::end() const noexcept']]], + ['enum_3',['Enum',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847bacf20423ed48998082c20099488a0917c',1,'HighFive']]], + ['enumtype_4',['enumtype',['../class_high_five_1_1_enum_type.html',1,'HighFive::EnumType< T >'],['../class_high_five_1_1_enum_type.html#a36c34fffd466b4a2c0c4f3bdf9f6a1a3',1,'HighFive::EnumType::EnumType(std::initializer_list< member_def > t_members)'],['../class_high_five_1_1_enum_type.html#aa1c30f28b5387421406e184c5f77b854',1,'HighFive::EnumType::EnumType(const std::vector< member_def > &t_members)'],['../class_high_five_1_1_enum_type.html#a7d2b0c5fd6d77ea600687d6536b8ecdb',1,'HighFive::EnumType::EnumType(const EnumType &other)=default']]], + ['error_5',['Error',['../namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a902b0d55fddef6f8d651fe1035b7d4bd',1,'HighFive']]], + ['estimatedlinkinfo_6',['estimatedlinkinfo',['../class_high_five_1_1_estimated_link_info.html#a3c311eb0f98aaa4dc1c7a26fab57a43d',1,'HighFive::EstimatedLinkInfo::EstimatedLinkInfo(unsigned entries, unsigned length)'],['../class_high_five_1_1_estimated_link_info.html#ae8d47670a7adee47bf69d0fc1a53ebf2',1,'HighFive::EstimatedLinkInfo::EstimatedLinkInfo(const GroupCreateProps &gcpl)'],['../class_high_five_1_1_estimated_link_info.html',1,'HighFive::EstimatedLinkInfo']]], + ['exception_7',['exception',['../class_high_five_1_1_exception.html',1,'HighFive::Exception'],['../class_high_five_1_1_exception.html#adbde3ec927a2402f5f1f23e50f02c155',1,'HighFive::Exception::Exception()']]], + ['excl_8',['Excl',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431ae9e864626c6d41245a375541c95fbc1b',1,'HighFive::File']]], + ['exist_9',['exist',['../class_high_five_1_1_node_traits.html#aa3c8c4e09ebba6d997768ad72bc3bf82',1,'HighFive::NodeTraits']]], + ['external_10',['External',['../namespace_high_five.html#abe5895b8113887accd6bff2392b24c40ab206a1b4ea1097761f78e8876f6da779',1,'HighFive']]] +]; diff --git a/search/all_6.js b/search/all_6.js new file mode 100644 index 000000000..cc7f737cb --- /dev/null +++ b/search/all_6.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['false_0',['False',['../namespace_h5_easy.html#af71ce7ab9b99227bdead69993d1f3b62af8320b26d30ab433c5a54546d21f414c',1,'H5Easy']]], + ['file_1',['file',['../class_high_five_1_1_file.html#a8795099e29b71240c772e7c57d072a9d',1,'HighFive::File::File()'],['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a0b27918290ff5323bea1e3b78a9cf04e',1,'HighFive::File'],['../class_high_five_1_1_file.html',1,'HighFive::File'],['../class_high_five_1_1_file.html#aae2430c3529c4896a207f6dbe64a943e',1,'HighFive::File::File(const std::string &filename, unsigned openFlags, const FileCreateProps &fileCreateProps, const FileAccessProps &fileAccessProps=FileAccessProps::Default())'],['../class_high_five_1_1_file.html#a28ecd0313429c95671fe4baa6be076df',1,'HighFive::File::File(const std::string &filename, unsigned openFlags=ReadOnly, const FileAccessProps &fileAccessProps=FileAccessProps::Default())'],['../class_high_five_1_1_group.html#a68d15876ad188b7628261b12d0eac8aa',1,'HighFive::Group::File'],['../class_high_five_1_1_data_type.html#a68d15876ad188b7628261b12d0eac8aa',1,'HighFive::DataType::File'],['../class_high_five_1_1_data_space.html#a68d15876ad188b7628261b12d0eac8aa',1,'HighFive::DataSpace::File']]], + ['file_5faccess_2',['FILE_ACCESS',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a8f93e8ee202d29ba296afdfb6c08550e',1,'HighFive']]], + ['file_5fcreate_3',['FILE_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a5534109883a2d6699c0262b228c14f67',1,'HighFive']]], + ['fileaccessprops_4',['FileAccessProps',['../group___property_lists.html#gabb713eeb1c3198abc08924c3b47c7db2',1,'HighFive']]], + ['filecreateprops_5',['FileCreateProps',['../group___property_lists.html#ga8b0174aba58621002ec76da62a5f5f13',1,'HighFive']]], + ['filedriver_6',['FileDriver',['../class_high_five_1_1_file_driver.html',1,'HighFive']]], + ['fileexception_7',['fileexception',['../class_high_five_1_1_file_exception.html#a68c676392c9ea3f7e5e7ecc1149609ee',1,'HighFive::FileException::FileException()'],['../class_high_five_1_1_file_exception.html',1,'HighFive::FileException']]], + ['fileversionbounds_8',['fileversionbounds',['../class_high_five_1_1_file_version_bounds.html#aff11691ee13ebbd765d9c1f18e379b4b',1,'HighFive::FileVersionBounds::FileVersionBounds(H5F_libver_t low, H5F_libver_t high)'],['../class_high_five_1_1_file_version_bounds.html#a9517df3be7e25b4a6770165ffe07430d',1,'HighFive::FileVersionBounds::FileVersionBounds(const FileAccessProps &fapl)'],['../class_high_five_1_1_file_version_bounds.html',1,'HighFive::FileVersionBounds']]], + ['find_5ffirst_5fatomic_5fmember_5fsize_9',['find_first_atomic_member_size',['../namespace_high_five.html#ac4e5e1ccbc6a1c20bcd581f71fb5e6d5',1,'HighFive']]], + ['fixedlengthstringtype_10',['fixedlengthstringtype',['../class_high_five_1_1_fixed_length_string_type.html',1,'HighFive::FixedLengthStringType'],['../class_high_five_1_1_fixed_length_string_type.html#a861eb3227c2387d3c0754b795cde204e',1,'HighFive::FixedLengthStringType::FixedLengthStringType()']]], + ['fixedlenstringarray_11',['fixedlenstringarray',['../class_high_five_1_1_fixed_len_string_array.html#a328d0aa4879af0eec80efbc1f4c7491a',1,'HighFive::FixedLenStringArray::FixedLenStringArray(const std::string *iter_begin, const std::string *iter_end)'],['../class_high_five_1_1_fixed_len_string_array.html#adc28fb9f211c154a23c49329bf9b24aa',1,'HighFive::FixedLenStringArray::FixedLenStringArray(const std::initializer_list< std::string > &)'],['../class_high_five_1_1_fixed_len_string_array.html#aacb1f323d88e86e39c648eb56f63ae23',1,'HighFive::FixedLenStringArray::FixedLenStringArray(const std::vector< std::string > &vec)'],['../class_high_five_1_1_fixed_len_string_array.html#a1ce46702ecda8c52f8a04ab78eb7edde',1,'HighFive::FixedLenStringArray::FixedLenStringArray(const char array[][N], std::size_t n_strings)'],['../class_high_five_1_1_fixed_len_string_array.html#abe5666a64c15fde7771c57f42c447d33',1,'HighFive::FixedLenStringArray::FixedLenStringArray()=default'],['../class_high_five_1_1_fixed_len_string_array.html',1,'HighFive::FixedLenStringArray< N >']]], + ['float_12',['Float',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba22ae0e2b89e5e3d477f988cc36d3272b',1,'HighFive']]], + ['float16_5ft_13',['float16_t',['../namespace_high_five.html#a257db0f77cf0c6735a6451a8de5e2c1b',1,'HighFive']]], + ['flush_14',['flush',['../class_high_five_1_1_file.html#a1e607911df10307dd3cc75a0dd6c5158',1,'HighFive::File::flush()'],['../class_h5_easy_1_1_dump_options.html#a2ed02e1afc1926b7a58346b9bf2017f9',1,'H5Easy::DumpOptions::flush()'],['../namespace_h5_easy.html#af71ce7ab9b99227bdead69993d1f3b62',1,'H5Easy::Flush']]], + ['from_15',['From',['../class_high_five_1_1_data_space.html#a4b0ebf9d884bf33a6b95e7eed989555a',1,'HighFive::DataSpace']]], + ['fromchararraystrings_16',['FromCharArrayStrings',['../class_high_five_1_1_data_space.html#a1ec5754826f5f43385e971da7f279559',1,'HighFive::DataSpace']]], + ['fromhdf5sizes_17',['fromHDF5Sizes',['../struct_high_five_1_1_regular_hyper_slab.html#af685fbdbe7d8dd7425c6c57719348a01',1,'HighFive::RegularHyperSlab']]], + ['frompropertylist_18',['frompropertylist',['../class_high_five_1_1_create_intermediate_group.html#a815c0e49561c0b4a774cc59a4aa017b7',1,'HighFive::CreateIntermediateGroup::fromPropertyList()'],['../class_high_five_1_1_link_creation_order.html#a6bcc5d01c7a4aa1630b192aa62ff3dd9',1,'HighFive::LinkCreationOrder::fromPropertyList()']]], + ['front_19',['front',['../class_high_five_1_1_fixed_len_string_array.html#a00303ff83d040a9b165eac585f43770d',1,'HighFive::FixedLenStringArray']]] +]; diff --git a/search/all_7.js b/search/all_7.js new file mode 100644 index 000000000..34290eff2 --- /dev/null +++ b/search/all_7.js @@ -0,0 +1,71 @@ +var searchData= +[ + ['get_0',['get',['../class_h5_easy_1_1_compression.html#a925d2e96ddbc9fc459b81ecf31fc121e',1,'H5Easy::Compression']]], + ['get_5fglobal_5flogger_1',['get_global_logger',['../namespace_high_five.html#ad2f60aec2c40524b30248aac67f5eeb5',1,'HighFive']]], + ['getaccesspropertylist_2',['getaccesspropertylist',['../class_high_five_1_1_data_set.html#ada59836ba9ddb3973fa80076e4242734',1,'HighFive::DataSet::getAccessPropertyList()'],['../class_high_five_1_1_file.html#a3a75e93bc3748614dff7e850d82ed495',1,'HighFive::File::getAccessPropertyList()']]], + ['getaddress_3',['getAddress',['../class_high_five_1_1_object_info.html#a9275887ab016ce89fc24938f8d86aa11',1,'HighFive::ObjectInfo']]], + ['getallocationtime_4',['getAllocationTime',['../class_high_five_1_1_allocation_time.html#a0fee45a52a542fedaa06300e177f7f01',1,'HighFive::AllocationTime']]], + ['getattribute_5',['getAttribute',['../class_high_five_1_1_annotate_traits.html#ad82448659b7a92cac2e7eeb5d8b974d6',1,'HighFive::AnnotateTraits']]], + ['getcachesize_6',['getCacheSize',['../class_high_five_1_1_caching.html#a54d4f322493e56f22fd5d70b1f64ea26',1,'HighFive::Caching']]], + ['getcause_7',['getCause',['../class_high_five_1_1_mpio_no_collective_cause.html#a7b1b28211a950b4652a0336559f4be6d',1,'HighFive::MpioNoCollectiveCause']]], + ['getcharacterset_8',['getCharacterSet',['../class_high_five_1_1_string_type.html#a81ae2382aeeccb15d53d70d04496fcab',1,'HighFive::StringType']]], + ['getchunksize_9',['getChunkSize',['../class_h5_easy_1_1_dump_options.html#a68181f4e69da1dc455606d006864e088',1,'H5Easy::DumpOptions']]], + ['getclass_10',['getClass',['../class_high_five_1_1_data_type.html#a98e6e07ff15a8e1b73673bc51a1a1339',1,'HighFive::DataType']]], + ['getcompressionlevel_11',['getCompressionLevel',['../class_h5_easy_1_1_dump_options.html#a8c58af708cddcbaebb03fcfff6b6356c',1,'H5Easy::DumpOptions']]], + ['getcreatepropertylist_12',['getcreatepropertylist',['../class_high_five_1_1_attribute.html#acee2136593f83a803e4b000916d3020b',1,'HighFive::Attribute::getCreatePropertyList()'],['../class_high_five_1_1_data_set.html#a565ee99d20689e662f17ab8ce3b57000',1,'HighFive::DataSet::getCreatePropertyList()'],['../class_high_five_1_1_data_type.html#a1a1b47fdec00d9814dd861fa51420c9e',1,'HighFive::DataType::getCreatePropertyList()'],['../class_high_five_1_1_file.html#a03938d3708dbafeaf6a83f982aee3909',1,'HighFive::File::getCreatePropertyList()'],['../class_high_five_1_1_group.html#a74f31ef804cbebe13b36db113ef5f235',1,'HighFive::Group::getCreatePropertyList()']]], + ['getcreationtime_13',['getCreationTime',['../class_high_five_1_1_object_info.html#a3afa78a1134a890934ade597a171b482',1,'HighFive::ObjectInfo']]], + ['getdataset_14',['getdataset',['../class_high_five_1_1_selection.html#a99180045db6986a3aa99aa19b0b97c07',1,'HighFive::Selection::getDataset() noexcept'],['../class_high_five_1_1_selection.html#a883952cb62d668308d875bfbcc121fc8',1,'HighFive::Selection::getDataset() const noexcept'],['../class_high_five_1_1_node_traits.html#a6d42bb7aa92a8be5567a42a2f134115f',1,'HighFive::NodeTraits::getDataSet(const std::string &dataset_name, const DataSetAccessProps &accessProps=DataSetAccessProps::Default()) const']]], + ['getdatatype_15',['getdatatype',['../class_high_five_1_1_node_traits.html#a5b618ebe1b03f24194b5a8ed1b9c59b6',1,'HighFive::NodeTraits::getDataType()'],['../class_high_five_1_1_attribute.html#a600131e681e98f5f03e64e662e3fa325',1,'HighFive::Attribute::getDataType()'],['../class_high_five_1_1_data_set.html#a52b7938b1c7e48f7600fbc3be4a0f24e',1,'HighFive::DataSet::getDataType()'],['../class_high_five_1_1_selection.html#a32e87dff815356a9fa9546a0c09f1d39',1,'HighFive::Selection::getDataType()']]], + ['getdimensions_16',['getdimensions',['../class_high_five_1_1_data_set.html#af7b75de38d47c2c68d4f384ee611bc66',1,'HighFive::DataSet::getDimensions()'],['../class_high_five_1_1_data_space.html#a8c0f85ba275d1d61c332b164070493c8',1,'HighFive::DataSpace::getDimensions()'],['../class_high_five_1_1_chunking.html#ab7241caf43e07ff7bfdb192770270bf2',1,'HighFive::Chunking::getDimensions()']]], + ['getelementcount_17',['getelementcount',['../class_high_five_1_1_data_set.html#abd786ba50bb11b92c9d760f7f77e4ca7',1,'HighFive::DataSet::getElementCount()'],['../class_high_five_1_1_data_space.html#a8b0fb67e77eed8e4b36b67bb352ec07b',1,'HighFive::DataSpace::getElementCount()']]], + ['getentries_18',['getEntries',['../class_high_five_1_1_estimated_link_info.html#a15fe39d3abcec1d56eae67246ed88848',1,'HighFive::EstimatedLinkInfo']]], + ['geterrmajor_19',['getErrMajor',['../class_high_five_1_1_exception.html#a9f29fccb5cbf3b5cb698cf7de68ba56c',1,'HighFive::Exception']]], + ['geterrminor_20',['getErrMinor',['../class_high_five_1_1_exception.html#ad19349814671c76249834ff802695145',1,'HighFive::Exception']]], + ['getestimatedlinkinfo_21',['getEstimatedLinkInfo',['../class_high_five_1_1_group.html#aeca9409bc3a21e9934728293bc24d960',1,'HighFive::Group']]], + ['getfile_22',['getFile',['../class_high_five_1_1_path_traits.html#a9d741a5f2d404314287b18b119136abf',1,'HighFive::PathTraits']]], + ['getfilesize_23',['getFileSize',['../class_high_five_1_1_file.html#a072b1759a2c8b033eea6d020a9ed1d08',1,'HighFive::File']]], + ['getflags_24',['getFlags',['../class_high_five_1_1_link_creation_order.html#ae4f83f749697446de9d56e593bc78a1a',1,'HighFive::LinkCreationOrder']]], + ['getfreespace_25',['getFreeSpace',['../class_high_five_1_1_file.html#a2cd2322084c2c60f5b07af3c3daf1c16',1,'HighFive::File']]], + ['getglobalcause_26',['getGlobalCause',['../class_high_five_1_1_mpio_no_collective_cause.html#a4b3a653e043b86ea0dfb3a7afdff2cb7',1,'HighFive::MpioNoCollectiveCause']]], + ['getgroup_27',['getGroup',['../class_high_five_1_1_node_traits.html#a286d9f9c2232c25abc5876bdc9d66edd',1,'HighFive::NodeTraits']]], + ['getid_28',['getId',['../class_high_five_1_1_object.html#a0efb623a7ceb36777ce81e215995a3bc',1,'HighFive::Object']]], + ['getinfo_29',['getInfo',['../class_high_five_1_1_object.html#a134549df53c4c0a04f728db983b2f947',1,'HighFive::Object']]], + ['getlinktype_30',['getLinkType',['../class_high_five_1_1_node_traits.html#aeab19b9f1fef90db036e1ea6238ef4eb',1,'HighFive::NodeTraits']]], + ['getlocalcause_31',['getLocalCause',['../class_high_five_1_1_mpio_no_collective_cause.html#affcbf437d343b3442cfda7da969f4d37',1,'HighFive::MpioNoCollectiveCause']]], + ['getmaxdimensions_32',['getMaxDimensions',['../class_high_five_1_1_data_space.html#a6563a285d1078bdff32e6662835e7a7b',1,'HighFive::DataSpace']]], + ['getmembers_33',['getMembers',['../class_high_five_1_1_compound_type.html#a771d62eb1c025b13c511de6959816d95',1,'HighFive::CompoundType']]], + ['getmemspace_34',['getmemspace',['../class_high_five_1_1_attribute.html#a9a4f37c223c52078d91c843f2ba6d994',1,'HighFive::Attribute::getMemSpace()'],['../class_high_five_1_1_data_set.html#a37f31fc5f14192b9a9fcdc7707e0ceee',1,'HighFive::DataSet::getMemSpace()'],['../class_high_five_1_1_selection.html#a0a1461d53a4d91d265a696a6da0fc57c',1,'HighFive::Selection::getMemSpace()']]], + ['getmetadatablocksize_35',['getMetadataBlockSize',['../class_high_five_1_1_file.html#a3e3772ae94caca4b2422b536a1cf2472',1,'HighFive::File']]], + ['getmodificationtime_36',['getModificationTime',['../class_high_five_1_1_object_info.html#ad9e7a6bfd1b5f046745fab423f40750e',1,'HighFive::ObjectInfo']]], + ['getname_37',['getname',['../class_high_five_1_1_attribute.html#a70021d5bf236c431d93013a4ae0ff910',1,'HighFive::Attribute::getName()'],['../class_high_five_1_1_file.html#af555f50958667264563b0cb17b8f902b',1,'HighFive::File::getName()']]], + ['getnamelength_38',['getNameLength',['../class_high_five_1_1_estimated_link_info.html#ab41597c8411f3a4023d82ebd1323a5f7',1,'HighFive::EstimatedLinkInfo']]], + ['getnumberattributes_39',['getNumberAttributes',['../class_high_five_1_1_annotate_traits.html#ae35a70acace4c47935400398d4671d69',1,'HighFive::AnnotateTraits']]], + ['getnumberdimensions_40',['getNumberDimensions',['../class_high_five_1_1_data_space.html#a53c27afc9308d2c44fa6d0e09f1ede9a',1,'HighFive::DataSpace']]], + ['getnumberobjects_41',['getNumberObjects',['../class_high_five_1_1_node_traits.html#ad90f036b55bd3e155c73ece61233210e',1,'HighFive::NodeTraits']]], + ['getnumslots_42',['getNumSlots',['../class_high_five_1_1_caching.html#a0de6bc2b09373107cd10a0fc6211d030',1,'HighFive::Caching']]], + ['getobjectname_43',['getObjectName',['../class_high_five_1_1_node_traits.html#ae10cb4bd9e20c651c136b284f3d8cd46',1,'HighFive::NodeTraits']]], + ['getobjecttype_44',['getObjectType',['../class_high_five_1_1_node_traits.html#abc2c385a18e2caaae71366139b57d8f2',1,'HighFive::NodeTraits']]], + ['getoffset_45',['getOffset',['../class_high_five_1_1_data_set.html#a662e1f9f8d9dfbbf02e135f6be2ee471',1,'HighFive::DataSet']]], + ['getoptionsmask_46',['getOptionsMask',['../class_high_five_1_1_szip.html#ae2a9cc8055aad910598e3f03c4bba3c0',1,'HighFive::Szip']]], + ['getpadding_47',['getPadding',['../class_high_five_1_1_string_type.html#a4f914467563cab045807517baee82c2d',1,'HighFive::StringType']]], + ['getpath_48',['getpath',['../class_high_five_1_1_path_traits.html#aca32b01b8c7eb54d398daeaac0b64399',1,'HighFive::PathTraits::getPath()'],['../class_high_five_1_1_file.html#af141a4c6c9fe058b121646b2079f2c6b',1,'HighFive::File::getPath()']]], + ['getpixelsperblock_49',['getPixelsPerBlock',['../class_high_five_1_1_szip.html#a9ad6b7b8022b89ac1a30bf2cfdbd7cf0',1,'HighFive::Szip']]], + ['getrefcount_50',['getRefCount',['../class_high_five_1_1_object_info.html#aa43efa7e90bebf6f39769d7cd56f8bbe',1,'HighFive::ObjectInfo']]], + ['getshape_51',['getShape',['../namespace_h5_easy.html#aa178d03fd7b8d435b5b41f613c1eaa8b',1,'H5Easy']]], + ['getsize_52',['getsize',['../class_high_five_1_1_data_type.html#a2658ec3c1c3c77dadeb0b1b053d3a7d3',1,'HighFive::DataType::getSize()'],['../class_high_five_1_1_metadata_block_size.html#aee2a49ebdc426f1794c154e3d1b2f871',1,'HighFive::MetadataBlockSize::getSize()'],['../namespace_h5_easy.html#a225c8cffbe78d15254ecde0c8a42958b',1,'H5Easy::getSize()']]], + ['getspace_53',['getspace',['../class_high_five_1_1_attribute.html#a4378b9e1603b22509c1495ac4362116d',1,'HighFive::Attribute::getSpace()'],['../class_high_five_1_1_data_set.html#aa9405c8f1bdb72d28e971c8645fb47aa',1,'HighFive::DataSet::getSpace()'],['../class_high_five_1_1_selection.html#ae9f659387f72554c7747fc80ddfce280',1,'HighFive::Selection::getSpace()']]], + ['getstoragesize_54',['getstoragesize',['../class_high_five_1_1_data_set.html#a9f1da81f89bdaa08561fb35779586f64',1,'HighFive::DataSet::getStorageSize()'],['../class_high_five_1_1_attribute.html#ab2ab807ffa3fc8cb6d72ac7ab75a58f1',1,'HighFive::Attribute::getStorageSize()']]], + ['getstring_55',['getString',['../class_high_five_1_1_fixed_len_string_array.html#ab48dc990ff82ec16e859d0b822a1d8aa',1,'HighFive::FixedLenStringArray']]], + ['gettype_56',['gettype',['../class_high_five_1_1_object.html#a60a33f44d524aae5936131770811bd58',1,'HighFive::Object::getType()'],['../class_high_five_1_1_property_list.html#ac5be2be6430f56234db215589ebdee5e',1,'HighFive::PropertyList::getType()'],['../class_high_five_1_1_reference.html#ab5596af0210db020de67f3e04a22da31',1,'HighFive::Reference::getType()']]], + ['getversion_57',['getVersion',['../class_high_five_1_1_file_version_bounds.html#a6d55273a22fb8ecbba0079cc08ae9c79',1,'HighFive::FileVersionBounds']]], + ['getversionbounds_58',['getVersionBounds',['../class_high_five_1_1_file.html#a1c5b148c4e906bcde448b4eea1f66b91',1,'HighFive::File']]], + ['getw0_59',['getW0',['../class_high_five_1_1_caching.html#ae8777cc455ef27d20d44f9aea32720b7',1,'HighFive::Caching']]], + ['group_60',['group',['../class_high_five_1_1_group.html',1,'HighFive::Group'],['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a03937134cedab9078be39a77ee3a48a0',1,'HighFive::Group'],['../class_high_five_1_1_group.html#aa5a251bd5db04d9f05b8c1df4c989b18',1,'HighFive::Group::Group(Object &&o) noexcept'],['../class_high_five_1_1_group.html#a64f8b882c1f7844570be07bb7b012f04',1,'HighFive::Group::Group()=default']]], + ['group_5faccess_61',['GROUP_ACCESS',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4aff3aa98325265641dfb5b6c727973774',1,'HighFive']]], + ['group_5fcreate_62',['GROUP_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4aa9f9694169963af7096ae421df5025ce',1,'HighFive']]], + ['groupaccessprops_63',['GroupAccessProps',['../group___property_lists.html#ga68c5d34220b4d213a933c2b7308b174e',1,'HighFive']]], + ['groupcreateprops_64',['GroupCreateProps',['../group___property_lists.html#ga81ced798505b82c667922df6b6936de9',1,'HighFive']]], + ['groupexception_65',['groupexception',['../class_high_five_1_1_group_exception.html',1,'HighFive::GroupException'],['../class_high_five_1_1_group_exception.html#a3230fc495c7c0bbcab847dc12fbf09df',1,'HighFive::GroupException::GroupException()']]], + ['guide_66',['Developer Guide',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2developer__guide.html',1,'']]], + ['guide_20on_20linux_67',['Beginners Installation Guide on Linux',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html',1,'']]] +]; diff --git a/search/all_8.js b/search/all_8.js new file mode 100644 index 000000000..9189ad696 --- /dev/null +++ b/search/all_8.js @@ -0,0 +1,81 @@ +var searchData= +[ + ['h5_5fdefinitions_2ehpp_0',['H5_definitions.hpp',['../_h5__definitions_8hpp.html',1,'']]], + ['h5_5fdeprecated_1',['H5_DEPRECATED',['../_h5__definitions_8hpp.html#ac2f1b4314e067c8a44383228d8a47cce',1,'H5_definitions.hpp']]], + ['h5annotate_5ftraits_2ehpp_2',['H5Annotate_traits.hpp',['../_h5_annotate__traits_8hpp.html',1,'']]], + ['h5annotate_5ftraits_5fmisc_2ehpp_3',['H5Annotate_traits_misc.hpp',['../_h5_annotate__traits__misc_8hpp.html',1,'']]], + ['h5attribute_2ehpp_4',['H5Attribute.hpp',['../_h5_attribute_8hpp.html',1,'']]], + ['h5attribute_5fmisc_2ehpp_5',['H5Attribute_misc.hpp',['../_h5_attribute__misc_8hpp.html',1,'']]], + ['h5converter_5fmisc_2ehpp_6',['H5Converter_misc.hpp',['../_h5_converter__misc_8hpp.html',1,'']]], + ['h5dataset_2ehpp_7',['H5DataSet.hpp',['../_h5_data_set_8hpp.html',1,'']]], + ['h5dataset_5fmisc_2ehpp_8',['H5DataSet_misc.hpp',['../_h5_data_set__misc_8hpp.html',1,'']]], + ['h5dataspace_2ehpp_9',['H5DataSpace.hpp',['../_h5_data_space_8hpp.html',1,'']]], + ['h5dataspace_5fmisc_2ehpp_10',['H5Dataspace_misc.hpp',['../_h5_dataspace__misc_8hpp.html',1,'']]], + ['h5datatype_2ehpp_11',['H5DataType.hpp',['../_h5_data_type_8hpp.html',1,'']]], + ['h5datatype_5fmisc_2ehpp_12',['H5DataType_misc.hpp',['../_h5_data_type__misc_8hpp.html',1,'']]], + ['h5easy_13',['H5Easy',['../namespace_h5_easy.html',1,'']]], + ['h5easy_2ehpp_14',['H5Easy.hpp',['../_h5_easy_8hpp.html',1,'']]], + ['h5easy_5feigen_2ehpp_15',['H5Easy_Eigen.hpp',['../_h5_easy___eigen_8hpp.html',1,'']]], + ['h5easy_5fmisc_2ehpp_16',['H5Easy_misc.hpp',['../_h5_easy__misc_8hpp.html',1,'']]], + ['h5easy_5fopencv_2ehpp_17',['H5Easy_opencv.hpp',['../_h5_easy__opencv_8hpp.html',1,'']]], + ['h5easy_5fpublic_2ehpp_18',['H5Easy_public.hpp',['../_h5_easy__public_8hpp.html',1,'']]], + ['h5easy_5fscalar_2ehpp_19',['H5Easy_scalar.hpp',['../_h5_easy__scalar_8hpp.html',1,'']]], + ['h5easy_5fvector_2ehpp_20',['H5Easy_vector.hpp',['../_h5_easy__vector_8hpp.html',1,'']]], + ['h5easy_5fxtensor_2ehpp_21',['H5Easy_xtensor.hpp',['../_h5_easy__xtensor_8hpp.html',1,'']]], + ['h5exception_2ehpp_22',['H5Exception.hpp',['../_h5_exception_8hpp.html',1,'']]], + ['h5exception_5fmisc_2ehpp_23',['H5Exception_misc.hpp',['../_h5_exception__misc_8hpp.html',1,'']]], + ['h5file_2ehpp_24',['H5File.hpp',['../_h5_file_8hpp.html',1,'']]], + ['h5file_5fmisc_2ehpp_25',['H5File_misc.hpp',['../_h5_file__misc_8hpp.html',1,'']]], + ['h5filedriver_2ehpp_26',['H5FileDriver.hpp',['../_h5_file_driver_8hpp.html',1,'']]], + ['h5filedriver_5fmisc_2ehpp_27',['H5FileDriver_misc.hpp',['../_h5_file_driver__misc_8hpp.html',1,'']]], + ['h5friends_2ehpp_28',['H5Friends.hpp',['../_h5_friends_8hpp.html',1,'']]], + ['h5group_2ehpp_29',['H5Group.hpp',['../_h5_group_8hpp.html',1,'']]], + ['h5inspector_5fmisc_2ehpp_30',['H5Inspector_misc.hpp',['../_h5_inspector__misc_8hpp.html',1,'']]], + ['h5iterables_5fmisc_2ehpp_31',['H5Iterables_misc.hpp',['../_h5_iterables__misc_8hpp.html',1,'']]], + ['h5node_5ftraits_2ehpp_32',['H5Node_traits.hpp',['../_h5_node__traits_8hpp.html',1,'']]], + ['h5node_5ftraits_5fmisc_2ehpp_33',['H5Node_traits_misc.hpp',['../_h5_node__traits__misc_8hpp.html',1,'']]], + ['h5object_2ehpp_34',['H5Object.hpp',['../_h5_object_8hpp.html',1,'']]], + ['h5object_5fmisc_2ehpp_35',['H5Object_misc.hpp',['../_h5_object__misc_8hpp.html',1,'']]], + ['h5path_5ftraits_2ehpp_36',['H5Path_traits.hpp',['../_h5_path__traits_8hpp.html',1,'']]], + ['h5path_5ftraits_5fmisc_2ehpp_37',['H5Path_traits_misc.hpp',['../_h5_path__traits__misc_8hpp.html',1,'']]], + ['h5propertylist_2ehpp_38',['H5PropertyList.hpp',['../_h5_property_list_8hpp.html',1,'']]], + ['h5propertylist_5fmisc_2ehpp_39',['H5PropertyList_misc.hpp',['../_h5_property_list__misc_8hpp.html',1,'']]], + ['h5readwrite_5fmisc_2ehpp_40',['H5ReadWrite_misc.hpp',['../_h5_read_write__misc_8hpp.html',1,'']]], + ['h5reference_2ehpp_41',['H5Reference.hpp',['../_h5_reference_8hpp.html',1,'']]], + ['h5reference_5fmisc_2ehpp_42',['H5Reference_misc.hpp',['../_h5_reference__misc_8hpp.html',1,'']]], + ['h5selection_2ehpp_43',['H5Selection.hpp',['../_h5_selection_8hpp.html',1,'']]], + ['h5selection_5fmisc_2ehpp_44',['H5Selection_misc.hpp',['../_h5_selection__misc_8hpp.html',1,'']]], + ['h5slice_5ftraits_2ehpp_45',['H5Slice_traits.hpp',['../_h5_slice__traits_8hpp.html',1,'']]], + ['h5slice_5ftraits_5fmisc_2ehpp_46',['H5Slice_traits_misc.hpp',['../_h5_slice__traits__misc_8hpp.html',1,'']]], + ['h5utility_2ehpp_47',['H5Utility.hpp',['../_h5_utility_8hpp.html',1,'']]], + ['h5utils_2ehpp_48',['H5Utils.hpp',['../_h5_utils_8hpp.html',1,'']]], + ['h5version_2ehpp_49',['H5Version.hpp',['../_h5_version_8hpp.html',1,'']]], + ['hard_50',['Hard',['../namespace_high_five.html#abe5895b8113887accd6bff2392b24c40a3656183169810334a96b91129dc9d881',1,'HighFive']]], + ['hasattribute_51',['hasAttribute',['../class_high_five_1_1_annotate_traits.html#add90f8bddb79edc973aa70f967c92724',1,'HighFive::AnnotateTraits']]], + ['hdf5_20header_20only_20c_20library_52',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]], + ['hdf5errmapper_53',['hdf5errmapper',['../class_high_five_1_1_exception.html#a1f3f174381f90e2f63dc4dbd5eb62e52',1,'HighFive::Exception::HDF5ErrMapper'],['../struct_high_five_1_1_h_d_f5_err_mapper.html',1,'HighFive::HDF5ErrMapper']]], + ['header_20only_20c_20library_54',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]], + ['highfive_55',['HighFive',['../namespace_high_five.html',1,'']]], + ['highfive_20hdf5_20header_20only_20c_20library_56',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]], + ['highfive_2ehpp_57',['highfive.hpp',['../highfive_8hpp.html',1,'']]], + ['highfive_5flog_5fdebug_58',['HIGHFIVE_LOG_DEBUG',['../_h5_utility_8hpp.html#a45004ae7b6ee4d36ece02625b803dae1',1,'H5Utility.hpp']]], + ['highfive_5flog_5fdebug_5fif_59',['HIGHFIVE_LOG_DEBUG_IF',['../_h5_utility_8hpp.html#acb450a6ca0ce4ede86eeb543dbb97fd5',1,'H5Utility.hpp']]], + ['highfive_5flog_5ferror_60',['HIGHFIVE_LOG_ERROR',['../_h5_utility_8hpp.html#ada09af07f5ee416f589dc4c6b7dfc28d',1,'H5Utility.hpp']]], + ['highfive_5flog_5ferror_5fif_61',['HIGHFIVE_LOG_ERROR_IF',['../_h5_utility_8hpp.html#aacdac9e7e0e29eb62f7d68b1bddb08b7',1,'H5Utility.hpp']]], + ['highfive_5flog_5finfo_62',['HIGHFIVE_LOG_INFO',['../_h5_utility_8hpp.html#aea7948282a427dd2d5a04b87c66d38a0',1,'H5Utility.hpp']]], + ['highfive_5flog_5finfo_5fif_63',['HIGHFIVE_LOG_INFO_IF',['../_h5_utility_8hpp.html#a15521059b105b67127f790239ab149e5',1,'H5Utility.hpp']]], + ['highfive_5flog_5flevel_64',['HIGHFIVE_LOG_LEVEL',['../_h5_utility_8hpp.html#a8e389ca826af6e2e77d72db9fe9a71ee',1,'H5Utility.hpp']]], + ['highfive_5flog_5flevel_5fdebug_65',['HIGHFIVE_LOG_LEVEL_DEBUG',['../_h5_utility_8hpp.html#a89e04aa74828b90f31d3d12cf53d3347',1,'H5Utility.hpp']]], + ['highfive_5flog_5flevel_5ferror_66',['HIGHFIVE_LOG_LEVEL_ERROR',['../_h5_utility_8hpp.html#a35fe0e7a0a4ea952af9ecaa18594ef7e',1,'H5Utility.hpp']]], + ['highfive_5flog_5flevel_5finfo_67',['HIGHFIVE_LOG_LEVEL_INFO',['../_h5_utility_8hpp.html#ab7ac8b069d562c15b358763734b4aa07',1,'H5Utility.hpp']]], + ['highfive_5flog_5flevel_5fwarn_68',['HIGHFIVE_LOG_LEVEL_WARN',['../_h5_utility_8hpp.html#a233481164afb1c4337fb2c4501dadcb7',1,'H5Utility.hpp']]], + ['highfive_5flog_5fwarn_69',['HIGHFIVE_LOG_WARN',['../_h5_utility_8hpp.html#a6512d9a30b5c76e13ec5f2756144c91a',1,'H5Utility.hpp']]], + ['highfive_5flog_5fwarn_5fif_70',['HIGHFIVE_LOG_WARN_IF',['../_h5_utility_8hpp.html#a018b242d83052245f9f602f5bac1067f',1,'H5Utility.hpp']]], + ['highfive_5fregister_5ftype_71',['HIGHFIVE_REGISTER_TYPE',['../_h5_data_type_8hpp.html#aabbf38f2b276343c2b2a85116e60313c',1,'H5DataType.hpp']]], + ['highfive_5fversion_72',['HIGHFIVE_VERSION',['../_h5_version_8hpp.html#a34c5e47396e70779257b4db31ac7b842',1,'H5Version.hpp']]], + ['highfive_5fversion_5fmajor_73',['HIGHFIVE_VERSION_MAJOR',['../_h5_version_8hpp.html#acbea9a5d26e85ae32c220007e9a8f4b2',1,'H5Version.hpp']]], + ['highfive_5fversion_5fminor_74',['HIGHFIVE_VERSION_MINOR',['../_h5_version_8hpp.html#ad6bd311c44f04b43f52c0e74cefc6e7a',1,'H5Version.hpp']]], + ['highfive_5fversion_5fpatch_75',['HIGHFIVE_VERSION_PATCH',['../_h5_version_8hpp.html#ab47cd23c1c1cf25b17b14eacc9866d89',1,'H5Version.hpp']]], + ['highfive_5fversion_5fstring_76',['HIGHFIVE_VERSION_STRING',['../_h5_version_8hpp.html#aaa84ff2fb9a733a1dd79e654e0839702',1,'H5Version.hpp']]], + ['hyperslab_77',['hyperslab',['../class_high_five_1_1_hyper_slab.html',1,'HighFive::HyperSlab'],['../class_high_five_1_1_hyper_slab.html#adf8bf61c7a39ea30b73f0409c034e4aa',1,'HighFive::HyperSlab::HyperSlab(const RegularHyperSlab &sel)'],['../class_high_five_1_1_hyper_slab.html#a906f51584d65e1b6fc777d4bc2022553',1,'HighFive::HyperSlab::HyperSlab()']]] +]; diff --git a/search/all_9.js b/search/all_9.js new file mode 100644 index 000000000..5254c48f1 --- /dev/null +++ b/search/all_9.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['indexed_0',['Indexed',['../struct_high_five_1_1_creation_order.html#aaaeb7940131b73a9385f499e08d2c0dfaaa056e331f82016fbdf6dc751bd97ff6',1,'HighFive::CreationOrder']]], + ['indextype_1',['IndexType',['../namespace_high_five.html#afed91f5950b7a58ec51a33d260773996',1,'HighFive']]], + ['info_2',['Info',['../namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a4059b0251f66a18cb56f544728796875',1,'HighFive']]], + ['installation_20guide_20on_20linux_3',['Beginners Installation Guide on Linux',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html',1,'']]], + ['installation_2emd_4',['installation.md',['../installation_8md.html',1,'']]], + ['integer_5',['Integer',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847baa0faef0851b4294c06f2b94bb1cb2044',1,'HighFive']]], + ['invalid_6',['Invalid',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba4bbb8f967da6d1a610596d7257179c2b',1,'HighFive']]], + ['ischunked_7',['isChunked',['../class_h5_easy_1_1_dump_options.html#a4329501c533ec014d987a202e09413c8',1,'H5Easy::DumpOptions']]], + ['iscollective_8',['iscollective',['../class_high_five_1_1_m_p_i_o_collective_metadata_write.html#a15d145eb132a4009717cfde7a657c5e1',1,'HighFive::MPIOCollectiveMetadataWrite::isCollective()'],['../class_high_five_1_1_use_collective_i_o.html#a2c5a378080dd17e736bd0f6b0ae81e1c',1,'HighFive::UseCollectiveIO::isCollective()'],['../class_high_five_1_1_m_p_i_o_collective_metadata_read.html#a4265828f973406654c64a83469aac0c7',1,'HighFive::MPIOCollectiveMetadataRead::isCollective()']]], + ['iscollectiveread_9',['isCollectiveRead',['../class_high_five_1_1_m_p_i_o_collective_metadata.html#af3ebb2ba4ab6fb2d662a0b2ba8090241',1,'HighFive::MPIOCollectiveMetadata']]], + ['iscollectivewrite_10',['isCollectiveWrite',['../class_high_five_1_1_m_p_i_o_collective_metadata.html#a9282c33bb738a814f8d33fdeecc12a5a',1,'HighFive::MPIOCollectiveMetadata']]], + ['isfixedlenstr_11',['isFixedLenStr',['../class_high_five_1_1_data_type.html#a0d74bf84217ed4b71818d53db9077d5f',1,'HighFive::DataType']]], + ['isreference_12',['isReference',['../class_high_five_1_1_data_type.html#a9c9656462b3b4442fd0a8ba7fb0ce93f',1,'HighFive::DataType']]], + ['isset_13',['isSet',['../class_high_five_1_1_create_intermediate_group.html#af4a9eb748f1c06199c9ad19daafd8632',1,'HighFive::CreateIntermediateGroup']]], + ['isvalid_14',['isValid',['../class_high_five_1_1_object.html#a7b4b75cd26da783a0ad21ca7f2a593d3',1,'HighFive::Object']]], + ['isvariablestr_15',['isVariableStr',['../class_high_five_1_1_data_type.html#a3f239e86eb8235d0cad445421f97af7c',1,'HighFive::DataType']]], + ['iterator_16',['iterator',['../class_high_five_1_1_fixed_len_string_array.html#aedfe77629b033e469fe706b07ee0b834',1,'HighFive::FixedLenStringArray']]] +]; diff --git a/search/all_a.js b/search/all_a.js new file mode 100644 index 000000000..05680457b --- /dev/null +++ b/search/all_a.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['library_0',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]], + ['link_5faccess_1',['LINK_ACCESS',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a49f33864cd831c0b35b59fc99cb75293',1,'HighFive']]], + ['link_5fcreate_2',['LINK_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a57fb2f103675cde088df70923f6224b1',1,'HighFive']]], + ['linkaccessprops_3',['LinkAccessProps',['../group___property_lists.html#gab75da37bb03e01aab133b5addfc04e19',1,'HighFive']]], + ['linkcreateprops_4',['LinkCreateProps',['../group___property_lists.html#ga1808107b873f17c08bc69b747173f4cb',1,'HighFive']]], + ['linkcreationorder_5',['linkcreationorder',['../class_high_five_1_1_link_creation_order.html#aff78af3c9313f37f86bb9aa172440377',1,'HighFive::LinkCreationOrder::LinkCreationOrder()'],['../class_high_five_1_1_link_creation_order.html',1,'HighFive::LinkCreationOrder'],['../class_high_five_1_1_link_creation_order.html#a1048f06282af8a1a5441e359fc5944f3',1,'HighFive::LinkCreationOrder::LinkCreationOrder(const GroupCreateProps &gcpl)'],['../class_high_five_1_1_link_creation_order.html#a5a0c8614e72358c1723153a06d2c11e6',1,'HighFive::LinkCreationOrder::LinkCreationOrder(unsigned flags)']]], + ['linktype_6',['LinkType',['../namespace_high_five.html#abe5895b8113887accd6bff2392b24c40',1,'HighFive']]], + ['linux_7',['Beginners Installation Guide on Linux',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html',1,'']]], + ['list_8',['Deprecated List',['../deprecated.html',1,'']]], + ['listattributenames_9',['listAttributeNames',['../class_high_five_1_1_annotate_traits.html#a4f19dffbf3bb1be6ba8279fb49917f22',1,'HighFive::AnnotateTraits']]], + ['listobjectnames_10',['listObjectNames',['../class_high_five_1_1_node_traits.html#a30bd43382f4e1f77bc6358ad5f7ed7ce',1,'HighFive::NodeTraits']]], + ['lists_11',['Property Lists',['../group___property_lists.html',1,'']]], + ['load_12',['load',['../namespace_h5_easy.html#a97ce3122b92fcf8322ed7e8c460c6862',1,'H5Easy::load(const File &file, const std::string &path, const std::vector< size_t > &idx)'],['../namespace_h5_easy.html#a35bd0e824fe3dca2e2d9f9b5e42a18aa',1,'H5Easy::load(const File &file, const std::string &path)']]], + ['loadattribute_13',['loadAttribute',['../namespace_h5_easy.html#a6dc2a2016da5196913ab7036700006fa',1,'H5Easy']]], + ['log_14',['log',['../class_high_five_1_1_logger.html#ae9138a12937186d1ebea1900a488b13c',1,'HighFive::Logger']]], + ['logger_15',['logger',['../class_high_five_1_1_logger.html',1,'HighFive::Logger'],['../class_high_five_1_1_logger.html#ac5aff73990e80aab9f83c798462115c3',1,'HighFive::Logger::Logger(callback_type cb)'],['../class_high_five_1_1_logger.html#aac5d99393c23b4f206a743864e80f7c8',1,'HighFive::Logger::Logger(Logger &&)=delete'],['../class_high_five_1_1_logger.html#a202182c21665e372d6e4585484fccae5',1,'HighFive::Logger::Logger(const Logger &)=delete'],['../class_high_five_1_1_logger.html#ac6a56a0dea78afb911374249840cc01a',1,'HighFive::Logger::Logger()=delete']]], + ['logseverity_16',['LogSeverity',['../namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246',1,'HighFive']]] +]; diff --git a/search/all_b.js b/search/all_b.js new file mode 100644 index 000000000..b84bfcfb2 --- /dev/null +++ b/search/all_b.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['max_5fcompact_0',['max_compact',['../class_high_five_1_1_attribute_phase_change.html#a4a01e8527aaecaffe2db1094f1e4b6c8',1,'HighFive::AttributePhaseChange']]], + ['member_5fdef_1',['member_def',['../struct_high_five_1_1_enum_type_1_1member__def.html',1,'HighFive::EnumType< T >::member_def'],['../struct_high_five_1_1_compound_type_1_1member__def.html',1,'HighFive::CompoundType::member_def'],['../struct_high_five_1_1_enum_type_1_1member__def.html#aa666de7e76f872e2e392442c8e691bb3',1,'HighFive::EnumType::member_def::member_def()'],['../struct_high_five_1_1_compound_type_1_1member__def.html#ac0c5ca4212cf886f498cfe79ff354e60',1,'HighFive::CompoundType::member_def::member_def()']]], + ['metadatablocksize_2',['metadatablocksize',['../class_high_five_1_1_metadata_block_size.html#a02efd5d5aa5311ecc74f44c4b8b82d78',1,'HighFive::MetadataBlockSize::MetadataBlockSize(hsize_t size)'],['../class_high_five_1_1_metadata_block_size.html#a23661a48122522263bd7f3ec3f245101',1,'HighFive::MetadataBlockSize::MetadataBlockSize(const FileAccessProps &fapl)'],['../class_high_five_1_1_metadata_block_size.html',1,'HighFive::MetadataBlockSize']]], + ['min_5fdense_3',['min_dense',['../class_high_five_1_1_attribute_phase_change.html#aa40d91cf6907a2013573e691c96d1bc7',1,'HighFive::AttributePhaseChange']]], + ['mpiocollectivemetadata_4',['mpiocollectivemetadata',['../class_high_five_1_1_m_p_i_o_collective_metadata.html',1,'HighFive::MPIOCollectiveMetadata'],['../class_high_five_1_1_m_p_i_o_collective_metadata.html#aa273f14cc489a313724a59913bd8840d',1,'HighFive::MPIOCollectiveMetadata::MPIOCollectiveMetadata(bool collective=true)'],['../class_high_five_1_1_m_p_i_o_collective_metadata.html#a716e7e59938e1525153101fdfa034e69',1,'HighFive::MPIOCollectiveMetadata::MPIOCollectiveMetadata(const FileAccessProps &plist)']]], + ['mpiocollectivemetadataread_5',['mpiocollectivemetadataread',['../class_high_five_1_1_m_p_i_o_collective_metadata_read.html',1,'HighFive::MPIOCollectiveMetadataRead'],['../class_high_five_1_1_m_p_i_o_collective_metadata_read.html#af8ac47ce64a701baf44b64d667a856f5',1,'HighFive::MPIOCollectiveMetadataRead::MPIOCollectiveMetadataRead(bool collective=true)'],['../class_high_five_1_1_m_p_i_o_collective_metadata_read.html#ac2f4ca377bba5b754b234af54feef0fb',1,'HighFive::MPIOCollectiveMetadataRead::MPIOCollectiveMetadataRead(const FileAccessProps &plist)']]], + ['mpiocollectivemetadatawrite_6',['mpiocollectivemetadatawrite',['../class_high_five_1_1_m_p_i_o_collective_metadata_write.html',1,'HighFive::MPIOCollectiveMetadataWrite'],['../class_high_five_1_1_m_p_i_o_collective_metadata_write.html#a46a964115d60428283787bba9a0e132c',1,'HighFive::MPIOCollectiveMetadataWrite::MPIOCollectiveMetadataWrite(bool collective=true)'],['../class_high_five_1_1_m_p_i_o_collective_metadata_write.html#ad06fd31a56e9437171af557649de8a2b',1,'HighFive::MPIOCollectiveMetadataWrite::MPIOCollectiveMetadataWrite(const FileAccessProps &plist)']]], + ['mpiofileaccess_7',['mpiofileaccess',['../class_high_five_1_1_m_p_i_o_file_access.html',1,'HighFive::MPIOFileAccess'],['../class_high_five_1_1_m_p_i_o_file_access.html#a45ed3e2138f4fcf8292a8f5bb01434c8',1,'HighFive::MPIOFileAccess::MPIOFileAccess()']]], + ['mpiofiledriver_8',['mpiofiledriver',['../class_high_five_1_1_m_p_i_o_file_driver.html',1,'HighFive::MPIOFileDriver'],['../class_high_five_1_1_m_p_i_o_file_driver.html#a4659563e3c44c0361429df270b03e778',1,'HighFive::MPIOFileDriver::MPIOFileDriver()']]], + ['mpionocollectivecause_9',['mpionocollectivecause',['../class_high_five_1_1_mpio_no_collective_cause.html#a902c6632085083f0404d1542a1c267ca',1,'HighFive::MpioNoCollectiveCause::MpioNoCollectiveCause()'],['../class_high_five_1_1_mpio_no_collective_cause.html',1,'HighFive::MpioNoCollectiveCause']]] +]; diff --git a/search/all_c.js b/search/all_c.js new file mode 100644 index 000000000..7843f0e0f --- /dev/null +++ b/search/all_c.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['name_0',['name',['../struct_high_five_1_1_compound_type_1_1member__def.html#acb6e9a26ac277ef27b1a37ee2785a309',1,'HighFive::CompoundType::member_def::name'],['../struct_high_five_1_1_enum_type_1_1member__def.html#a826971206409ca4fdcc481765ccf3999',1,'HighFive::EnumType::member_def::name'],['../namespace_high_five.html#afed91f5950b7a58ec51a33d260773996aad32e604e17467fc435538334fbddf3e',1,'HighFive::NAME']]], + ['nextexception_1',['nextException',['../class_high_five_1_1_exception.html#a32badf84ecfcceb0eb6d54f6a33d0989',1,'HighFive::Exception']]], + ['nodetraits_2',['nodetraits',['../class_high_five_1_1_node_traits.html',1,'HighFive::NodeTraits< Derivate >'],['../class_high_five_1_1_data_set.html#a403d48867d005e936868de31b2281ae8',1,'HighFive::DataSet::NodeTraits'],['../class_high_five_1_1_data_type.html#a403d48867d005e936868de31b2281ae8',1,'HighFive::DataType::NodeTraits']]], + ['nodetraits_3c_20file_20_3e_3',['NodeTraits< File >',['../class_high_five_1_1_node_traits.html',1,'HighFive']]], + ['nodetraits_3c_20group_20_3e_4',['NodeTraits< Group >',['../class_high_five_1_1_node_traits.html',1,'HighFive']]], + ['nota_5',['notA',['../class_high_five_1_1_hyper_slab.html#a24205d10982c3affd39635caa090bf39',1,'HighFive::HyperSlab']]], + ['notb_6',['notB',['../class_high_five_1_1_hyper_slab.html#a429775b972d7d5eda1b4f6b63da982c8',1,'HighFive::HyperSlab']]], + ['nullpadded_7',['NullPadded',['../namespace_high_five.html#ad9265809238043adba9b446b5c61e953a5b56f95d458ea27c9c62e62260bbef81',1,'HighFive']]], + ['nullterminated_8',['NullTerminated',['../namespace_high_five.html#ad9265809238043adba9b446b5c61e953ab90111c75972f26b57ab364724b34921',1,'HighFive']]] +]; diff --git a/search/all_d.js b/search/all_d.js new file mode 100644 index 000000000..248bd2801 --- /dev/null +++ b/search/all_d.js @@ -0,0 +1,28 @@ +var searchData= +[ + ['object_0',['object',['../class_high_five_1_1_data_set.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::DataSet::Object()'],['../class_high_five_1_1_group.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::Group::Object(const Object &other)'],['../class_high_five_1_1_group.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::Group::Object()'],['../class_high_five_1_1_group.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::Group::Object(Object &&other) noexcept'],['../class_high_five_1_1_file.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::File::Object(hid_t)'],['../class_high_five_1_1_file.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::File::Object(const Object &other)'],['../class_high_five_1_1_file.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::File::Object()'],['../class_high_five_1_1_file.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::File::Object(Object &&other) noexcept'],['../class_high_five_1_1_data_type.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::DataType::Object(hid_t)'],['../class_high_five_1_1_data_type.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::DataType::Object(const Object &other)'],['../class_high_five_1_1_data_type.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::DataType::Object()'],['../class_high_five_1_1_data_type.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::DataType::Object(Object &&other) noexcept'],['../class_high_five_1_1_data_set.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::DataSet::Object(hid_t)'],['../class_high_five_1_1_data_set.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::DataSet::Object(const Object &other)'],['../class_high_five_1_1_data_set.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::DataSet::Object(Object &&other) noexcept'],['../class_high_five_1_1_attribute.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::Attribute::Object(hid_t)'],['../class_high_five_1_1_attribute.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::Attribute::Object(const Object &other)'],['../class_high_five_1_1_attribute.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::Attribute::Object()'],['../class_high_five_1_1_attribute.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::Attribute::Object(Object &&other) noexcept'],['../class_high_five_1_1_object.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::Object::Object(hid_t)'],['../class_high_five_1_1_object.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::Object::Object(const Object &other)'],['../class_high_five_1_1_object.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::Object::Object()'],['../class_high_five_1_1_object.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::Object::Object(Object &&other) noexcept'],['../class_high_five_1_1_object_info.html#a0720b5f434e636e22a3ed34f847eec57',1,'HighFive::ObjectInfo::Object'],['../class_high_five_1_1_group.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::Group::Object()'],['../class_high_five_1_1_object.html',1,'HighFive::Object']]], + ['object_5fcopy_1',['OBJECT_COPY',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a9b0ceee4dc388106832eabb5522d4506',1,'HighFive']]], + ['object_5fcreate_2',['OBJECT_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4afcea7f1287d62768c2fc0ee0cf18023f',1,'HighFive']]], + ['objectcopyprops_3',['ObjectCopyProps',['../group___property_lists.html#gac6067de093761c8456301af3690b9125',1,'HighFive']]], + ['objectcreateprops_4',['ObjectCreateProps',['../group___property_lists.html#gab5f00c2acd27b216a83e220c5b8d42ec',1,'HighFive']]], + ['objectexception_5',['objectexception',['../class_high_five_1_1_object_exception.html#aa9d63e59797518ba24516336d562041e',1,'HighFive::ObjectException::ObjectException()'],['../class_high_five_1_1_object_exception.html',1,'HighFive::ObjectException']]], + ['objectinfo_6',['ObjectInfo',['../class_high_five_1_1_object_info.html',1,'HighFive']]], + ['objecttype_7',['ObjectType',['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474',1,'HighFive']]], + ['offset_8',['offset',['../struct_high_five_1_1_compound_type_1_1member__def.html#a7fe8f7fc11e223445033f75b25435612',1,'HighFive::CompoundType::member_def::offset'],['../struct_high_five_1_1_regular_hyper_slab.html#a2c7170af12dae359fb3eaffe6950d516',1,'HighFive::RegularHyperSlab::offset']]], + ['on_20linux_9',['Beginners Installation Guide on Linux',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html',1,'']]], + ['only_20c_20library_10',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]], + ['opaque_11',['Opaque',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847bafaa90538de35640e4b1e31ccf35b6eb5',1,'HighFive']]], + ['openorcreate_12',['OpenOrCreate',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431a20ee8fd1af9b334fa1e3604c2d08457f',1,'HighFive::File']]], + ['operator_21_3d_13',['operator!=',['../class_high_five_1_1_data_type.html#aba3b0bec1739ee7482a9d6f3c7464769',1,'HighFive::DataType']]], + ['operator_26_14',['operator&',['../namespace_high_five.html#ad11e24eec8492d0d2c977b58b1e64dbc',1,'HighFive::operator&()'],['../class_high_five_1_1_hyper_slab.html#a4fbf1287c34074ca11b3da08c5d0e287',1,'HighFive::HyperSlab::operator&(const RegularHyperSlab &sel) const']]], + ['operator_26_3d_15',['operator&=',['../class_high_five_1_1_hyper_slab.html#a8be464e1993e66453881fe9adb1a0d72',1,'HighFive::HyperSlab']]], + ['operator_3d_16',['operator=',['../class_high_five_1_1_object.html#acbdb7087cba8bb804f7ec82c56c28ace',1,'HighFive::Object::operator=()'],['../class_high_five_1_1_logger.html#ad1fea19d9a24a52b09c3bdaf4e8a4288',1,'HighFive::Logger::operator=(Logger &&)=delete'],['../class_high_five_1_1_logger.html#a3e8a6cd1370289fe31e268eeda19d271',1,'HighFive::Logger::operator=(const Logger &)=delete']]], + ['operator_3d_3d_17',['operator==',['../class_high_five_1_1_object.html#ad838f47662c1b9d240bd26d8710aa7d9',1,'HighFive::Object::operator==()'],['../class_high_five_1_1_data_type.html#a00fa13324f13dc81bf52b385fc9d852b',1,'HighFive::DataType::operator==()']]], + ['operator_5b_5d_18',['operator[]',['../class_high_five_1_1_fixed_len_string_array.html#ab7a0a37fe3363d2c1d445910fe53703e',1,'HighFive::FixedLenStringArray']]], + ['operator_5e_19',['operator^',['../class_high_five_1_1_hyper_slab.html#a65b63a6b8ee96c0b3db1448f133d4208',1,'HighFive::HyperSlab']]], + ['operator_5e_3d_20',['operator^=',['../class_high_five_1_1_hyper_slab.html#ac18231b7d002a5497626d3cfe7f818e3',1,'HighFive::HyperSlab']]], + ['operator_7c_21',['operator|',['../class_high_five_1_1_hyper_slab.html#a7fc861f1f4042fae034b358e63e8db71',1,'HighFive::HyperSlab::operator|()'],['../namespace_high_five.html#a98688378bfbae23ab35a06c6916c5a44',1,'HighFive::operator|()']]], + ['operator_7c_3d_22',['operator|=',['../class_high_five_1_1_hyper_slab.html#afb1196fb8cfeaff643d4160046092ab6',1,'HighFive::HyperSlab']]], + ['other_23',['other',['../namespace_high_five.html#abe5895b8113887accd6bff2392b24c40a6311ae17c1ee52b36e68aaf4ad066387',1,'HighFive::Other'],['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a6311ae17c1ee52b36e68aaf4ad066387',1,'HighFive::Other']]], + ['overwrite_24',['overwrite',['../class_h5_easy_1_1_dump_options.html#ab573397c2a0abb1dc1b9a17db6c34eb1',1,'H5Easy::DumpOptions::overwrite()'],['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431a2121d8075f9f9d7069d6ef997fe4b9db',1,'HighFive::File::Overwrite'],['../namespace_h5_easy.html#a6d10754b7f2ada9e3296560032dd81a0ada364eb37e143f6b2b5559aa03f5913a',1,'H5Easy::Overwrite']]] +]; diff --git a/search/all_e.js b/search/all_e.js new file mode 100644 index 000000000..755a28df5 --- /dev/null +++ b/search/all_e.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['packeddims_0',['packedDims',['../struct_high_five_1_1_regular_hyper_slab.html#a56c042691b496389564d108c64a9d872',1,'HighFive::RegularHyperSlab']]], + ['pathtraits_1',['pathtraits',['../class_high_five_1_1_path_traits.html',1,'HighFive::PathTraits< Derivate >'],['../class_high_five_1_1_path_traits.html#a49601ba2947e519784814a9d7a90f7f5',1,'HighFive::PathTraits::PathTraits()'],['../class_high_five_1_1_file.html#a4fd65b8c85f680db6495b37b7a00594a',1,'HighFive::File::PathTraits']]], + ['pathtraits_3c_20attribute_20_3e_2',['PathTraits< Attribute >',['../class_high_five_1_1_path_traits.html',1,'HighFive']]], + ['pathtraits_3c_20dataset_20_3e_3',['PathTraits< DataSet >',['../class_high_five_1_1_path_traits.html',1,'HighFive']]], + ['pathtraits_3c_20group_20_3e_4',['PathTraits< Group >',['../class_high_five_1_1_path_traits.html',1,'HighFive']]], + ['property_20lists_5',['Property Lists',['../group___property_lists.html',1,'']]], + ['propertyexception_6',['propertyexception',['../class_high_five_1_1_property_exception.html',1,'HighFive::PropertyException'],['../class_high_five_1_1_property_exception.html#a3b98bbf8140308b1b76305eb5fa86ba0',1,'HighFive::PropertyException::PropertyException()']]], + ['propertyinterface_7',['PropertyInterface',['../interface_property_interface.html',1,'']]], + ['propertylist_8',['PropertyList',['../class_high_five_1_1_property_list.html',1,'HighFive']]], + ['propertylistbase_9',['propertylistbase',['../class_high_five_1_1_property_list_base.html',1,'HighFive::PropertyListBase'],['../class_high_five_1_1_property_list_base.html#a3dc12a0e8dc4dedbeea62b626d13e13a',1,'HighFive::PropertyListBase::PropertyListBase()']]], + ['propertytype_10',['PropertyType',['../group___property_lists.html#ga097a358bdda37ff6e6b48d9f43664ad4',1,'HighFive']]], + ['push_5fback_11',['push_back',['../class_high_five_1_1_fixed_len_string_array.html#ad19e9539073e41fafb9586df96294188',1,'HighFive::FixedLenStringArray::push_back(const std::string &)'],['../class_high_five_1_1_fixed_len_string_array.html#a65300a3e825a318af0f831297b544629',1,'HighFive::FixedLenStringArray::push_back(const std::array< char, N > &)']]] +]; diff --git a/search/all_f.js b/search/all_f.js new file mode 100644 index 000000000..05c1a64ce --- /dev/null +++ b/search/all_f.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['rank_0',['rank',['../struct_high_five_1_1_regular_hyper_slab.html#a29438e89e9000502894ba22fa94e107c',1,'HighFive::RegularHyperSlab']]], + ['raw_5finfo_1',['raw_info',['../class_high_five_1_1_object_info.html#ac39a80ef1e2113268e6bb20f9145a204',1,'HighFive::ObjectInfo']]], + ['rawpropertylist_2',['RawPropertyList',['../class_high_five_1_1_raw_property_list.html',1,'HighFive']]], + ['rbegin_3',['rbegin',['../class_high_five_1_1_fixed_len_string_array.html#a8c1a6768d29e8271552e2f6186387e58',1,'HighFive::FixedLenStringArray::rbegin() noexcept'],['../class_high_five_1_1_fixed_len_string_array.html#a3ca19a69a2f0fdc0b47a9053f1924c7b',1,'HighFive::FixedLenStringArray::rbegin() const noexcept']]], + ['read_4',['read',['../class_high_five_1_1_slice_traits.html#af62a6a1f6c52da1c8ef501067ed948c8',1,'HighFive::SliceTraits::read()'],['../class_high_five_1_1_attribute.html#aa2d0eb2629833a33f3e1a3fbfc1e9f55',1,'HighFive::Attribute::read(T *array) const'],['../class_high_five_1_1_attribute.html#acb44e6457df7e57040e39cd4373f9d84',1,'HighFive::Attribute::read(T *array, const DataType &mem_datatype) const'],['../class_high_five_1_1_attribute.html#ae97ab038f6c58bc0dd1ea498d8e609ce',1,'HighFive::Attribute::read(T &array) const'],['../class_high_five_1_1_attribute.html#a8f6d88e6dadb8e4449fec558e5e0f7ca',1,'HighFive::Attribute::read() const'],['../class_high_five_1_1_slice_traits.html#a8c5a039f4728158ae7ea39b806660090',1,'HighFive::SliceTraits::read(T *array, const DataTransferProps &xfer_props=DataTransferProps()) const'],['../class_high_five_1_1_slice_traits.html#a308151100e49985c077608619302c6c0',1,'HighFive::SliceTraits::read(T *array, const DataType &dtype, const DataTransferProps &xfer_props=DataTransferProps()) const'],['../class_high_five_1_1_slice_traits.html#a1301abe3b9745470576986a1cbf7f0c9',1,'HighFive::SliceTraits::read(const DataTransferProps &xfer_props=DataTransferProps()) const']]], + ['readme_2emd_5',['README.md',['../_r_e_a_d_m_e_8md.html',1,'']]], + ['readonly_6',['ReadOnly',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431a78386c6fc7eb6b7975e1b68198925594',1,'HighFive::File']]], + ['readwrite_7',['ReadWrite',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431aaf0dbab200a1ff2d914ee1c9e69a189e',1,'HighFive::File']]], + ['reference_8',['reference',['../class_high_five_1_1_reference.html',1,'HighFive::Reference'],['../class_high_five_1_1_reference.html#a0eebda40272f370b15111fe2f88fd495',1,'HighFive::Reference::Reference()'],['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba63d5049791d9d79d86e9a108b0a999ca',1,'HighFive::Reference'],['../class_high_five_1_1_reference.html#a68e53f37f2b5975e23e0fd78b57f0533',1,'HighFive::Reference::Reference(const Object &location, const Object &object)'],['../class_high_five_1_1_reference.html#a8130903e051ab98f6affbb36627bcfda',1,'HighFive::Reference::Reference()=default'],['../class_high_five_1_1_object.html#a75dfa92607f3d314070ecf242e028014',1,'HighFive::Object::Reference'],['../class_high_five_1_1_group.html#a75dfa92607f3d314070ecf242e028014',1,'HighFive::Group::Reference'],['../class_high_five_1_1_data_set.html#a75dfa92607f3d314070ecf242e028014',1,'HighFive::DataSet::Reference']]], + ['referenceexception_9',['referenceexception',['../class_high_five_1_1_reference_exception.html#a345ca1ae87323f0e8af38a6e59921890',1,'HighFive::ReferenceException::ReferenceException()'],['../class_high_five_1_1_reference_exception.html',1,'HighFive::ReferenceException']]], + ['register_5flogging_5fcallback_10',['register_logging_callback',['../namespace_high_five.html#a4fc91cda37008aea40efbb20a39cf1c9',1,'HighFive']]], + ['regularhyperslab_11',['regularhyperslab',['../struct_high_five_1_1_regular_hyper_slab.html',1,'HighFive::RegularHyperSlab'],['../struct_high_five_1_1_regular_hyper_slab.html#ac55d435aad378ad692b811f65f7f8371',1,'HighFive::RegularHyperSlab::RegularHyperSlab()=default'],['../struct_high_five_1_1_regular_hyper_slab.html#aa83c2e83ada980b7a6b07f7f9a20a076',1,'HighFive::RegularHyperSlab::RegularHyperSlab(std::vector< size_t > offset_, std::vector< size_t > count_={}, std::vector< size_t > stride_={}, std::vector< size_t > block_={})']]], + ['rename_12',['rename',['../class_high_five_1_1_node_traits.html#a9732221be5949023649d2d5af9305a30',1,'HighFive::NodeTraits']]], + ['rend_13',['rend',['../class_high_five_1_1_fixed_len_string_array.html#a6947fd58b1ca1b33a3dc88f033f49bb0',1,'HighFive::FixedLenStringArray::rend() noexcept'],['../class_high_five_1_1_fixed_len_string_array.html#a10b20edebc19ebcc2742f4c27fb67a72',1,'HighFive::FixedLenStringArray::rend() const noexcept']]], + ['resize_14',['resize',['../class_high_five_1_1_data_set.html#a516b2f8f1e4ecca470d8c351749807e9',1,'HighFive::DataSet::resize()'],['../class_high_five_1_1_fixed_len_string_array.html#a87e51e420da9b9c061aaa57b3db0eb38',1,'HighFive::FixedLenStringArray::resize(std::size_t n)']]], + ['reverse_5fiterator_15',['reverse_iterator',['../class_high_five_1_1_fixed_len_string_array.html#ae6a87abe9c866cb3009937e5c92534a9',1,'HighFive::FixedLenStringArray']]] +]; diff --git a/search/classes_0.js b/search/classes_0.js new file mode 100644 index 000000000..f8370f89c --- /dev/null +++ b/search/classes_0.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['allocationtime_0',['AllocationTime',['../class_high_five_1_1_allocation_time.html',1,'HighFive']]], + ['annotatetraits_1',['AnnotateTraits',['../class_high_five_1_1_annotate_traits.html',1,'HighFive']]], + ['annotatetraits_3c_20dataset_20_3e_2',['AnnotateTraits< DataSet >',['../class_high_five_1_1_annotate_traits.html',1,'HighFive']]], + ['annotatetraits_3c_20file_20_3e_3',['AnnotateTraits< File >',['../class_high_five_1_1_annotate_traits.html',1,'HighFive']]], + ['annotatetraits_3c_20group_20_3e_4',['AnnotateTraits< Group >',['../class_high_five_1_1_annotate_traits.html',1,'HighFive']]], + ['atomictype_5',['AtomicType',['../class_high_five_1_1_atomic_type.html',1,'HighFive']]], + ['atomictype_3c_20char_5bstrlen_5d_3e_6',['AtomicType< char[StrLen]>',['../class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html',1,'HighFive']]], + ['atomictype_3c_20fixedlenstringarray_3c_20strlen_20_3e_20_3e_7',['AtomicType< FixedLenStringArray< StrLen > >',['../class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html',1,'HighFive']]], + ['atomictype_3c_20std_3a_3acomplex_3c_20t_20_3e_20_3e_8',['AtomicType< std::complex< T > >',['../class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html',1,'HighFive']]], + ['attribute_9',['Attribute',['../class_high_five_1_1_attribute.html',1,'HighFive']]], + ['attributeexception_10',['AttributeException',['../class_high_five_1_1_attribute_exception.html',1,'HighFive']]], + ['attributephasechange_11',['AttributePhaseChange',['../class_high_five_1_1_attribute_phase_change.html',1,'HighFive']]] +]; diff --git a/search/classes_1.js b/search/classes_1.js new file mode 100644 index 000000000..4ebba5287 --- /dev/null +++ b/search/classes_1.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['caching_0',['Caching',['../class_high_five_1_1_caching.html',1,'HighFive']]], + ['chunking_1',['Chunking',['../class_high_five_1_1_chunking.html',1,'HighFive']]], + ['compoundtype_2',['CompoundType',['../class_high_five_1_1_compound_type.html',1,'HighFive']]], + ['compression_3',['Compression',['../class_h5_easy_1_1_compression.html',1,'H5Easy']]], + ['createintermediategroup_4',['CreateIntermediateGroup',['../class_high_five_1_1_create_intermediate_group.html',1,'HighFive']]], + ['creationorder_5',['CreationOrder',['../struct_high_five_1_1_creation_order.html',1,'HighFive']]] +]; diff --git a/search/classes_2.js b/search/classes_2.js new file mode 100644 index 000000000..6a67804db --- /dev/null +++ b/search/classes_2.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['dataset_0',['DataSet',['../class_high_five_1_1_data_set.html',1,'HighFive']]], + ['datasetexception_1',['DataSetException',['../class_high_five_1_1_data_set_exception.html',1,'HighFive']]], + ['dataspace_2',['DataSpace',['../class_high_five_1_1_data_space.html',1,'HighFive']]], + ['dataspaceexception_3',['DataSpaceException',['../class_high_five_1_1_data_space_exception.html',1,'HighFive']]], + ['datatype_4',['DataType',['../class_high_five_1_1_data_type.html',1,'HighFive']]], + ['datatypeexception_5',['DataTypeException',['../class_high_five_1_1_data_type_exception.html',1,'HighFive']]], + ['deflate_6',['Deflate',['../class_high_five_1_1_deflate.html',1,'HighFive']]], + ['dumpoptions_7',['DumpOptions',['../class_h5_easy_1_1_dump_options.html',1,'H5Easy']]] +]; diff --git a/search/classes_3.js b/search/classes_3.js new file mode 100644 index 000000000..4654c4aeb --- /dev/null +++ b/search/classes_3.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['elementset_0',['ElementSet',['../class_high_five_1_1_element_set.html',1,'HighFive']]], + ['enumtype_1',['EnumType',['../class_high_five_1_1_enum_type.html',1,'HighFive']]], + ['estimatedlinkinfo_2',['EstimatedLinkInfo',['../class_high_five_1_1_estimated_link_info.html',1,'HighFive']]], + ['exception_3',['Exception',['../class_high_five_1_1_exception.html',1,'HighFive']]] +]; diff --git a/search/classes_4.js b/search/classes_4.js new file mode 100644 index 000000000..6a0b9a39d --- /dev/null +++ b/search/classes_4.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['file_0',['File',['../class_high_five_1_1_file.html',1,'HighFive']]], + ['filedriver_1',['FileDriver',['../class_high_five_1_1_file_driver.html',1,'HighFive']]], + ['fileexception_2',['FileException',['../class_high_five_1_1_file_exception.html',1,'HighFive']]], + ['fileversionbounds_3',['FileVersionBounds',['../class_high_five_1_1_file_version_bounds.html',1,'HighFive']]], + ['fixedlengthstringtype_4',['FixedLengthStringType',['../class_high_five_1_1_fixed_length_string_type.html',1,'HighFive']]], + ['fixedlenstringarray_5',['FixedLenStringArray',['../class_high_five_1_1_fixed_len_string_array.html',1,'HighFive']]] +]; diff --git a/search/classes_5.js b/search/classes_5.js new file mode 100644 index 000000000..d7c00523d --- /dev/null +++ b/search/classes_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['group_0',['Group',['../class_high_five_1_1_group.html',1,'HighFive']]], + ['groupexception_1',['GroupException',['../class_high_five_1_1_group_exception.html',1,'HighFive']]] +]; diff --git a/search/classes_6.js b/search/classes_6.js new file mode 100644 index 000000000..54fed71fe --- /dev/null +++ b/search/classes_6.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['hdf5errmapper_0',['HDF5ErrMapper',['../struct_high_five_1_1_h_d_f5_err_mapper.html',1,'HighFive']]], + ['hyperslab_1',['HyperSlab',['../class_high_five_1_1_hyper_slab.html',1,'HighFive']]] +]; diff --git a/search/classes_7.js b/search/classes_7.js new file mode 100644 index 000000000..436e531fe --- /dev/null +++ b/search/classes_7.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['linkcreationorder_0',['LinkCreationOrder',['../class_high_five_1_1_link_creation_order.html',1,'HighFive']]], + ['logger_1',['Logger',['../class_high_five_1_1_logger.html',1,'HighFive']]] +]; diff --git a/search/classes_8.js b/search/classes_8.js new file mode 100644 index 000000000..d36ca5bdb --- /dev/null +++ b/search/classes_8.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['member_5fdef_0',['member_def',['../struct_high_five_1_1_compound_type_1_1member__def.html',1,'HighFive::CompoundType::member_def'],['../struct_high_five_1_1_enum_type_1_1member__def.html',1,'HighFive::EnumType< T >::member_def']]], + ['metadatablocksize_1',['MetadataBlockSize',['../class_high_five_1_1_metadata_block_size.html',1,'HighFive']]], + ['mpiocollectivemetadata_2',['MPIOCollectiveMetadata',['../class_high_five_1_1_m_p_i_o_collective_metadata.html',1,'HighFive']]], + ['mpiocollectivemetadataread_3',['MPIOCollectiveMetadataRead',['../class_high_five_1_1_m_p_i_o_collective_metadata_read.html',1,'HighFive']]], + ['mpiocollectivemetadatawrite_4',['MPIOCollectiveMetadataWrite',['../class_high_five_1_1_m_p_i_o_collective_metadata_write.html',1,'HighFive']]], + ['mpiofileaccess_5',['MPIOFileAccess',['../class_high_five_1_1_m_p_i_o_file_access.html',1,'HighFive']]], + ['mpiofiledriver_6',['MPIOFileDriver',['../class_high_five_1_1_m_p_i_o_file_driver.html',1,'HighFive']]], + ['mpionocollectivecause_7',['MpioNoCollectiveCause',['../class_high_five_1_1_mpio_no_collective_cause.html',1,'HighFive']]] +]; diff --git a/search/classes_9.js b/search/classes_9.js new file mode 100644 index 000000000..c81b637f9 --- /dev/null +++ b/search/classes_9.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['nodetraits_0',['NodeTraits',['../class_high_five_1_1_node_traits.html',1,'HighFive']]], + ['nodetraits_3c_20file_20_3e_1',['NodeTraits< File >',['../class_high_five_1_1_node_traits.html',1,'HighFive']]], + ['nodetraits_3c_20group_20_3e_2',['NodeTraits< Group >',['../class_high_five_1_1_node_traits.html',1,'HighFive']]] +]; diff --git a/search/classes_a.js b/search/classes_a.js new file mode 100644 index 000000000..3688241e4 --- /dev/null +++ b/search/classes_a.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['object_0',['Object',['../class_high_five_1_1_object.html',1,'HighFive']]], + ['objectexception_1',['ObjectException',['../class_high_five_1_1_object_exception.html',1,'HighFive']]], + ['objectinfo_2',['ObjectInfo',['../class_high_five_1_1_object_info.html',1,'HighFive']]] +]; diff --git a/search/classes_b.js b/search/classes_b.js new file mode 100644 index 000000000..44b5b5f0e --- /dev/null +++ b/search/classes_b.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['pathtraits_0',['PathTraits',['../class_high_five_1_1_path_traits.html',1,'HighFive']]], + ['pathtraits_3c_20attribute_20_3e_1',['PathTraits< Attribute >',['../class_high_five_1_1_path_traits.html',1,'HighFive']]], + ['pathtraits_3c_20dataset_20_3e_2',['PathTraits< DataSet >',['../class_high_five_1_1_path_traits.html',1,'HighFive']]], + ['pathtraits_3c_20group_20_3e_3',['PathTraits< Group >',['../class_high_five_1_1_path_traits.html',1,'HighFive']]], + ['propertyexception_4',['PropertyException',['../class_high_five_1_1_property_exception.html',1,'HighFive']]], + ['propertyinterface_5',['PropertyInterface',['../interface_property_interface.html',1,'']]], + ['propertylist_6',['PropertyList',['../class_high_five_1_1_property_list.html',1,'HighFive']]], + ['propertylistbase_7',['PropertyListBase',['../class_high_five_1_1_property_list_base.html',1,'HighFive']]] +]; diff --git a/search/classes_c.js b/search/classes_c.js new file mode 100644 index 000000000..b9dbd2228 --- /dev/null +++ b/search/classes_c.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['rawpropertylist_0',['RawPropertyList',['../class_high_five_1_1_raw_property_list.html',1,'HighFive']]], + ['reference_1',['Reference',['../class_high_five_1_1_reference.html',1,'HighFive']]], + ['referenceexception_2',['ReferenceException',['../class_high_five_1_1_reference_exception.html',1,'HighFive']]], + ['regularhyperslab_3',['RegularHyperSlab',['../struct_high_five_1_1_regular_hyper_slab.html',1,'HighFive']]] +]; diff --git a/search/classes_d.js b/search/classes_d.js new file mode 100644 index 000000000..63425b861 --- /dev/null +++ b/search/classes_d.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['selection_0',['Selection',['../class_high_five_1_1_selection.html',1,'HighFive']]], + ['shuffle_1',['Shuffle',['../class_high_five_1_1_shuffle.html',1,'HighFive']]], + ['silencehdf5_2',['SilenceHDF5',['../class_high_five_1_1_silence_h_d_f5.html',1,'HighFive']]], + ['slicetraits_3',['SliceTraits',['../class_high_five_1_1_slice_traits.html',1,'HighFive']]], + ['slicetraits_3c_20dataset_20_3e_4',['SliceTraits< DataSet >',['../class_high_five_1_1_slice_traits.html',1,'HighFive']]], + ['slicetraits_3c_20selection_20_3e_5',['SliceTraits< Selection >',['../class_high_five_1_1_slice_traits.html',1,'HighFive']]], + ['stringtype_6',['StringType',['../class_high_five_1_1_string_type.html',1,'HighFive']]], + ['szip_7',['Szip',['../class_high_five_1_1_szip.html',1,'HighFive']]] +]; diff --git a/search/classes_e.js b/search/classes_e.js new file mode 100644 index 000000000..4612d0eaa --- /dev/null +++ b/search/classes_e.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['usecollectiveio_0',['UseCollectiveIO',['../class_high_five_1_1_use_collective_i_o.html',1,'HighFive']]] +]; diff --git a/search/classes_f.js b/search/classes_f.js new file mode 100644 index 000000000..38b218d1b --- /dev/null +++ b/search/classes_f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['variablelengthstringtype_0',['VariableLengthStringType',['../class_high_five_1_1_variable_length_string_type.html',1,'HighFive']]] +]; diff --git a/search/close.svg b/search/close.svg new file mode 100644 index 000000000..337d6cc13 --- /dev/null +++ b/search/close.svg @@ -0,0 +1,18 @@ + + + + + + diff --git a/search/defines_0.js b/search/defines_0.js new file mode 100644 index 000000000..d6fc913cc --- /dev/null +++ b/search/defines_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['_5fh5_5fstruct_5fpadding_0',['_H5_STRUCT_PADDING',['../_h5_data_type__misc_8hpp.html#a8411b26baa96407eb4f3de2ba4bcd6f7',1,'H5DataType_misc.hpp']]] +]; diff --git a/search/defines_1.js b/search/defines_1.js new file mode 100644 index 000000000..9d8aa062a --- /dev/null +++ b/search/defines_1.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['h5_5fdeprecated_0',['H5_DEPRECATED',['../_h5__definitions_8hpp.html#ac2f1b4314e067c8a44383228d8a47cce',1,'H5_definitions.hpp']]], + ['highfive_5flog_5fdebug_1',['HIGHFIVE_LOG_DEBUG',['../_h5_utility_8hpp.html#a45004ae7b6ee4d36ece02625b803dae1',1,'H5Utility.hpp']]], + ['highfive_5flog_5fdebug_5fif_2',['HIGHFIVE_LOG_DEBUG_IF',['../_h5_utility_8hpp.html#acb450a6ca0ce4ede86eeb543dbb97fd5',1,'H5Utility.hpp']]], + ['highfive_5flog_5ferror_3',['HIGHFIVE_LOG_ERROR',['../_h5_utility_8hpp.html#ada09af07f5ee416f589dc4c6b7dfc28d',1,'H5Utility.hpp']]], + ['highfive_5flog_5ferror_5fif_4',['HIGHFIVE_LOG_ERROR_IF',['../_h5_utility_8hpp.html#aacdac9e7e0e29eb62f7d68b1bddb08b7',1,'H5Utility.hpp']]], + ['highfive_5flog_5finfo_5',['HIGHFIVE_LOG_INFO',['../_h5_utility_8hpp.html#aea7948282a427dd2d5a04b87c66d38a0',1,'H5Utility.hpp']]], + ['highfive_5flog_5finfo_5fif_6',['HIGHFIVE_LOG_INFO_IF',['../_h5_utility_8hpp.html#a15521059b105b67127f790239ab149e5',1,'H5Utility.hpp']]], + ['highfive_5flog_5flevel_7',['HIGHFIVE_LOG_LEVEL',['../_h5_utility_8hpp.html#a8e389ca826af6e2e77d72db9fe9a71ee',1,'H5Utility.hpp']]], + ['highfive_5flog_5flevel_5fdebug_8',['HIGHFIVE_LOG_LEVEL_DEBUG',['../_h5_utility_8hpp.html#a89e04aa74828b90f31d3d12cf53d3347',1,'H5Utility.hpp']]], + ['highfive_5flog_5flevel_5ferror_9',['HIGHFIVE_LOG_LEVEL_ERROR',['../_h5_utility_8hpp.html#a35fe0e7a0a4ea952af9ecaa18594ef7e',1,'H5Utility.hpp']]], + ['highfive_5flog_5flevel_5finfo_10',['HIGHFIVE_LOG_LEVEL_INFO',['../_h5_utility_8hpp.html#ab7ac8b069d562c15b358763734b4aa07',1,'H5Utility.hpp']]], + ['highfive_5flog_5flevel_5fwarn_11',['HIGHFIVE_LOG_LEVEL_WARN',['../_h5_utility_8hpp.html#a233481164afb1c4337fb2c4501dadcb7',1,'H5Utility.hpp']]], + ['highfive_5flog_5fwarn_12',['HIGHFIVE_LOG_WARN',['../_h5_utility_8hpp.html#a6512d9a30b5c76e13ec5f2756144c91a',1,'H5Utility.hpp']]], + ['highfive_5flog_5fwarn_5fif_13',['HIGHFIVE_LOG_WARN_IF',['../_h5_utility_8hpp.html#a018b242d83052245f9f602f5bac1067f',1,'H5Utility.hpp']]], + ['highfive_5fregister_5ftype_14',['HIGHFIVE_REGISTER_TYPE',['../_h5_data_type_8hpp.html#aabbf38f2b276343c2b2a85116e60313c',1,'H5DataType.hpp']]], + ['highfive_5fversion_15',['HIGHFIVE_VERSION',['../_h5_version_8hpp.html#a34c5e47396e70779257b4db31ac7b842',1,'H5Version.hpp']]], + ['highfive_5fversion_5fmajor_16',['HIGHFIVE_VERSION_MAJOR',['../_h5_version_8hpp.html#acbea9a5d26e85ae32c220007e9a8f4b2',1,'H5Version.hpp']]], + ['highfive_5fversion_5fminor_17',['HIGHFIVE_VERSION_MINOR',['../_h5_version_8hpp.html#ad6bd311c44f04b43f52c0e74cefc6e7a',1,'H5Version.hpp']]], + ['highfive_5fversion_5fpatch_18',['HIGHFIVE_VERSION_PATCH',['../_h5_version_8hpp.html#ab47cd23c1c1cf25b17b14eacc9866d89',1,'H5Version.hpp']]], + ['highfive_5fversion_5fstring_19',['HIGHFIVE_VERSION_STRING',['../_h5_version_8hpp.html#aaa84ff2fb9a733a1dd79e654e0839702',1,'H5Version.hpp']]] +]; diff --git a/search/enums_0.js b/search/enums_0.js new file mode 100644 index 000000000..de21d25c5 --- /dev/null +++ b/search/enums_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['_5fcreationorder_0',['_CreationOrder',['../struct_high_five_1_1_creation_order.html#aaaeb7940131b73a9385f499e08d2c0df',1,'HighFive::CreationOrder']]] +]; diff --git a/search/enums_1.js b/search/enums_1.js new file mode 100644 index 000000000..b69fba46a --- /dev/null +++ b/search/enums_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['characterset_0',['CharacterSet',['../namespace_high_five.html#a7133a7a677541ffa6780f5ca5eee6db9',1,'HighFive']]] +]; diff --git a/search/enums_2.js b/search/enums_2.js new file mode 100644 index 000000000..708e6cb8e --- /dev/null +++ b/search/enums_2.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['dataspacetype_0',['DataspaceType',['../class_high_five_1_1_data_space.html#a7169f30770f2b72b4d28841da2d6c153',1,'HighFive::DataSpace']]], + ['datatypeclass_1',['DataTypeClass',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847b',1,'HighFive']]], + ['dumpmode_2',['DumpMode',['../namespace_h5_easy.html#a6d10754b7f2ada9e3296560032dd81a0',1,'H5Easy']]] +]; diff --git a/search/enums_3.js b/search/enums_3.js new file mode 100644 index 000000000..349652cbc --- /dev/null +++ b/search/enums_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['flush_0',['Flush',['../namespace_h5_easy.html#af71ce7ab9b99227bdead69993d1f3b62',1,'H5Easy']]] +]; diff --git a/search/enums_4.js b/search/enums_4.js new file mode 100644 index 000000000..c9a31652d --- /dev/null +++ b/search/enums_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['indextype_0',['IndexType',['../namespace_high_five.html#afed91f5950b7a58ec51a33d260773996',1,'HighFive']]] +]; diff --git a/search/enums_5.js b/search/enums_5.js new file mode 100644 index 000000000..7efb647ce --- /dev/null +++ b/search/enums_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['linktype_0',['LinkType',['../namespace_high_five.html#abe5895b8113887accd6bff2392b24c40',1,'HighFive']]], + ['logseverity_1',['LogSeverity',['../namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246',1,'HighFive']]] +]; diff --git a/search/enums_6.js b/search/enums_6.js new file mode 100644 index 000000000..bae095e02 --- /dev/null +++ b/search/enums_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['objecttype_0',['ObjectType',['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474',1,'HighFive']]] +]; diff --git a/search/enums_7.js b/search/enums_7.js new file mode 100644 index 000000000..9000fac27 --- /dev/null +++ b/search/enums_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['propertytype_0',['PropertyType',['../group___property_lists.html#ga097a358bdda37ff6e6b48d9f43664ad4',1,'HighFive']]] +]; diff --git a/search/enums_8.js b/search/enums_8.js new file mode 100644 index 000000000..ab5b62b42 --- /dev/null +++ b/search/enums_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['stringpadding_0',['StringPadding',['../namespace_high_five.html#ad9265809238043adba9b446b5c61e953',1,'HighFive']]] +]; diff --git a/search/enumvalues_0.js b/search/enumvalues_0.js new file mode 100644 index 000000000..f29b84668 --- /dev/null +++ b/search/enumvalues_0.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['array_0',['Array',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba4410ec34d9e6c1a68100ca0ce033fb17',1,'HighFive']]], + ['ascii_1',['Ascii',['../namespace_high_five.html#a7133a7a677541ffa6780f5ca5eee6db9a76b8d0dcd02ccaf203c167ced6d7ef31',1,'HighFive']]], + ['attribute_2',['Attribute',['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474af2bbdf9f72c085adc4d0404e370f0f4c',1,'HighFive']]], + ['attribute_5fcreate_3',['ATTRIBUTE_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a518c30284a8061ffe051004a0670f135',1,'HighFive']]] +]; diff --git a/search/enumvalues_1.js b/search/enumvalues_1.js new file mode 100644 index 000000000..01276b691 --- /dev/null +++ b/search/enumvalues_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['bitfield_0',['BitField',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba2f706038ccc6843d07ebf1a34051a0a8',1,'HighFive']]] +]; diff --git a/search/enumvalues_10.js b/search/enumvalues_10.js new file mode 100644 index 000000000..53332f894 --- /dev/null +++ b/search/enumvalues_10.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['varlen_0',['VarLen',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba72c6842c18d1470d1c991f865a2fab3a',1,'HighFive']]] +]; diff --git a/search/enumvalues_11.js b/search/enumvalues_11.js new file mode 100644 index 000000000..84ba2f36f --- /dev/null +++ b/search/enumvalues_11.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['warn_0',['Warn',['../namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a56525ae64d370c0b448ac0d60710ef17',1,'HighFive']]] +]; diff --git a/search/enumvalues_2.js b/search/enumvalues_2.js new file mode 100644 index 000000000..c0dd660a7 --- /dev/null +++ b/search/enumvalues_2.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['compound_0',['Compound',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba26154ea007c65f860de5333a555a56cf',1,'HighFive']]], + ['create_1',['create',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431a6c1f31f0e601d0b3982ac64dc50cdd69',1,'HighFive::File::Create'],['../namespace_h5_easy.html#a6d10754b7f2ada9e3296560032dd81a0a686e697538050e4664636337cc3b834f',1,'H5Easy::Create']]], + ['crt_5forder_2',['CRT_ORDER',['../namespace_high_five.html#afed91f5950b7a58ec51a33d260773996ac83c60110da7010a6dd3168fb2c8b8a7',1,'HighFive']]] +]; diff --git a/search/enumvalues_3.js b/search/enumvalues_3.js new file mode 100644 index 000000000..19b4e1a24 --- /dev/null +++ b/search/enumvalues_3.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['dataset_0',['Dataset',['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a239658e016e3d5d06ae719d280a79fec',1,'HighFive']]], + ['dataset_5faccess_1',['DATASET_ACCESS',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a1f9f49c3a9b29c99fd336a46e1fb0b8c',1,'HighFive']]], + ['dataset_5fcreate_2',['DATASET_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4aafd89ef46ba1fc317f8b8cfadbc8e89d',1,'HighFive']]], + ['dataset_5fxfer_3',['DATASET_XFER',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4adbac4060e0053cc521283eb9f7d0869e',1,'HighFive']]], + ['dataspace_4',['DataSpace',['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a546863182b9bd136e5295389d0e8343e',1,'HighFive']]], + ['dataspace_5fnull_5',['dataspace_null',['../class_high_five_1_1_data_space.html#a7169f30770f2b72b4d28841da2d6c153ac1a4c13c2bac8e1679bf850e76ad6092',1,'HighFive::DataSpace']]], + ['dataspace_5fscalar_6',['dataspace_scalar',['../class_high_five_1_1_data_space.html#a7169f30770f2b72b4d28841da2d6c153a49388b6d4ad7831a6589af61d6e60409',1,'HighFive::DataSpace']]], + ['datatype_5faccess_7',['DATATYPE_ACCESS',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a023c2a1da4192ec57c9589f2adcf0375',1,'HighFive']]], + ['datatype_5fcreate_8',['DATATYPE_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a4a9bef3e26735c56f85701720da97704',1,'HighFive']]], + ['debug_9',['debug',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431ac2400c1be1f6d184f2f7e2d5f6ac82c3',1,'HighFive::File::Debug'],['../namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246aa603905470e2a5b8c13e96b579ef0dba',1,'HighFive::Debug']]] +]; diff --git a/search/enumvalues_4.js b/search/enumvalues_4.js new file mode 100644 index 000000000..81903a1c2 --- /dev/null +++ b/search/enumvalues_4.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['enum_0',['Enum',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847bacf20423ed48998082c20099488a0917c',1,'HighFive']]], + ['error_1',['Error',['../namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a902b0d55fddef6f8d651fe1035b7d4bd',1,'HighFive']]], + ['excl_2',['Excl',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431ae9e864626c6d41245a375541c95fbc1b',1,'HighFive::File']]], + ['external_3',['External',['../namespace_high_five.html#abe5895b8113887accd6bff2392b24c40ab206a1b4ea1097761f78e8876f6da779',1,'HighFive']]] +]; diff --git a/search/enumvalues_5.js b/search/enumvalues_5.js new file mode 100644 index 000000000..0a8679162 --- /dev/null +++ b/search/enumvalues_5.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['false_0',['False',['../namespace_h5_easy.html#af71ce7ab9b99227bdead69993d1f3b62af8320b26d30ab433c5a54546d21f414c',1,'H5Easy']]], + ['file_1',['File',['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a0b27918290ff5323bea1e3b78a9cf04e',1,'HighFive']]], + ['file_5faccess_2',['FILE_ACCESS',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a8f93e8ee202d29ba296afdfb6c08550e',1,'HighFive']]], + ['file_5fcreate_3',['FILE_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a5534109883a2d6699c0262b228c14f67',1,'HighFive']]], + ['float_4',['Float',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba22ae0e2b89e5e3d477f988cc36d3272b',1,'HighFive']]] +]; diff --git a/search/enumvalues_6.js b/search/enumvalues_6.js new file mode 100644 index 000000000..2d46456f1 --- /dev/null +++ b/search/enumvalues_6.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['group_0',['Group',['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a03937134cedab9078be39a77ee3a48a0',1,'HighFive']]], + ['group_5faccess_1',['GROUP_ACCESS',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4aff3aa98325265641dfb5b6c727973774',1,'HighFive']]], + ['group_5fcreate_2',['GROUP_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4aa9f9694169963af7096ae421df5025ce',1,'HighFive']]] +]; diff --git a/search/enumvalues_7.js b/search/enumvalues_7.js new file mode 100644 index 000000000..8ee3f1186 --- /dev/null +++ b/search/enumvalues_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hard_0',['Hard',['../namespace_high_five.html#abe5895b8113887accd6bff2392b24c40a3656183169810334a96b91129dc9d881',1,'HighFive']]] +]; diff --git a/search/enumvalues_8.js b/search/enumvalues_8.js new file mode 100644 index 000000000..57babb7d7 --- /dev/null +++ b/search/enumvalues_8.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['indexed_0',['Indexed',['../struct_high_five_1_1_creation_order.html#aaaeb7940131b73a9385f499e08d2c0dfaaa056e331f82016fbdf6dc751bd97ff6',1,'HighFive::CreationOrder']]], + ['info_1',['Info',['../namespace_high_five.html#a9a2c7e78f6fb35a74ff61a7b2b7ed246a4059b0251f66a18cb56f544728796875',1,'HighFive']]], + ['integer_2',['Integer',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847baa0faef0851b4294c06f2b94bb1cb2044',1,'HighFive']]], + ['invalid_3',['Invalid',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba4bbb8f967da6d1a610596d7257179c2b',1,'HighFive']]] +]; diff --git a/search/enumvalues_9.js b/search/enumvalues_9.js new file mode 100644 index 000000000..65c19f130 --- /dev/null +++ b/search/enumvalues_9.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['link_5faccess_0',['LINK_ACCESS',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a49f33864cd831c0b35b59fc99cb75293',1,'HighFive']]], + ['link_5fcreate_1',['LINK_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a57fb2f103675cde088df70923f6224b1',1,'HighFive']]] +]; diff --git a/search/enumvalues_a.js b/search/enumvalues_a.js new file mode 100644 index 000000000..2fae4eb0f --- /dev/null +++ b/search/enumvalues_a.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['name_0',['NAME',['../namespace_high_five.html#afed91f5950b7a58ec51a33d260773996aad32e604e17467fc435538334fbddf3e',1,'HighFive']]], + ['nullpadded_1',['NullPadded',['../namespace_high_five.html#ad9265809238043adba9b446b5c61e953a5b56f95d458ea27c9c62e62260bbef81',1,'HighFive']]], + ['nullterminated_2',['NullTerminated',['../namespace_high_five.html#ad9265809238043adba9b446b5c61e953ab90111c75972f26b57ab364724b34921',1,'HighFive']]] +]; diff --git a/search/enumvalues_b.js b/search/enumvalues_b.js new file mode 100644 index 000000000..6c41f1362 --- /dev/null +++ b/search/enumvalues_b.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['object_5fcopy_0',['OBJECT_COPY',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a9b0ceee4dc388106832eabb5522d4506',1,'HighFive']]], + ['object_5fcreate_1',['OBJECT_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4afcea7f1287d62768c2fc0ee0cf18023f',1,'HighFive']]], + ['opaque_2',['Opaque',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847bafaa90538de35640e4b1e31ccf35b6eb5',1,'HighFive']]], + ['openorcreate_3',['OpenOrCreate',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431a20ee8fd1af9b334fa1e3604c2d08457f',1,'HighFive::File']]], + ['other_4',['other',['../namespace_high_five.html#abe5895b8113887accd6bff2392b24c40a6311ae17c1ee52b36e68aaf4ad066387',1,'HighFive::Other'],['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a6311ae17c1ee52b36e68aaf4ad066387',1,'HighFive::Other']]], + ['overwrite_5',['overwrite',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431a2121d8075f9f9d7069d6ef997fe4b9db',1,'HighFive::File::Overwrite'],['../namespace_h5_easy.html#a6d10754b7f2ada9e3296560032dd81a0ada364eb37e143f6b2b5559aa03f5913a',1,'H5Easy::Overwrite']]] +]; diff --git a/search/enumvalues_c.js b/search/enumvalues_c.js new file mode 100644 index 000000000..a15e2f0f7 --- /dev/null +++ b/search/enumvalues_c.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['readonly_0',['ReadOnly',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431a78386c6fc7eb6b7975e1b68198925594',1,'HighFive::File']]], + ['readwrite_1',['ReadWrite',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431aaf0dbab200a1ff2d914ee1c9e69a189e',1,'HighFive::File']]], + ['reference_2',['Reference',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba63d5049791d9d79d86e9a108b0a999ca',1,'HighFive']]] +]; diff --git a/search/enumvalues_d.js b/search/enumvalues_d.js new file mode 100644 index 000000000..f8bff2ee3 --- /dev/null +++ b/search/enumvalues_d.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['soft_0',['Soft',['../namespace_high_five.html#abe5895b8113887accd6bff2392b24c40a682160fc6ad12f783f70608a9b46b9b9',1,'HighFive']]], + ['spacepadded_1',['SpacePadded',['../namespace_high_five.html#ad9265809238043adba9b446b5c61e953a4ca955dd1a77b70b5a0a28512c0e5f24',1,'HighFive']]], + ['string_2',['String',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847ba27118326006d3829667a400ad23d5d98',1,'HighFive']]], + ['string_5fcreate_3',['STRING_CREATE',['../group___property_lists.html#gga097a358bdda37ff6e6b48d9f43664ad4a8c7bdf2b95146589251f8ecff10ca084',1,'HighFive']]] +]; diff --git a/search/enumvalues_e.js b/search/enumvalues_e.js new file mode 100644 index 000000000..16af40bc0 --- /dev/null +++ b/search/enumvalues_e.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['time_0',['Time',['../namespace_high_five.html#ad43e509d198c83c5484c796babdd847baa76d4ef5f3f6a672bbfab2865563e530',1,'HighFive']]], + ['tracked_1',['Tracked',['../struct_high_five_1_1_creation_order.html#aaaeb7940131b73a9385f499e08d2c0dfa63264d38eb4b2f184d68299f689e78b8',1,'HighFive::CreationOrder']]], + ['true_2',['True',['../namespace_h5_easy.html#af71ce7ab9b99227bdead69993d1f3b62af827cf462f62848df37c5e1e94a4da74',1,'H5Easy']]], + ['truncate_3',['Truncate',['../class_high_five_1_1_file.html#a66225bf5898f9e14f84c02529ca19431a2ee578fa7edc24587051a920880711c6',1,'HighFive::File']]] +]; diff --git a/search/enumvalues_f.js b/search/enumvalues_f.js new file mode 100644 index 000000000..c99e94f1d --- /dev/null +++ b/search/enumvalues_f.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['userdatatype_0',['UserDataType',['../namespace_high_five.html#ad8790d0a626a7355392c05dc69a1d474a99f109983e5e6524be1f6fbcc819691c',1,'HighFive']]], + ['utf8_1',['Utf8',['../namespace_high_five.html#a7133a7a677541ffa6780f5ca5eee6db9a81f91ccd37ce1d232cbfc1520374319d',1,'HighFive']]] +]; diff --git a/search/files_0.js b/search/files_0.js new file mode 100644 index 000000000..6cd9f3692 --- /dev/null +++ b/search/files_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['changelog_2emd_0',['CHANGELOG.md',['../_c_h_a_n_g_e_l_o_g_8md.html',1,'']]] +]; diff --git a/search/files_1.js b/search/files_1.js new file mode 100644 index 000000000..f37bee531 --- /dev/null +++ b/search/files_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['developer_5fguide_2emd_0',['developer_guide.md',['../developer__guide_8md.html',1,'']]] +]; diff --git a/search/files_2.js b/search/files_2.js new file mode 100644 index 000000000..f9e06cecc --- /dev/null +++ b/search/files_2.js @@ -0,0 +1,52 @@ +var searchData= +[ + ['h5_5fdefinitions_2ehpp_0',['H5_definitions.hpp',['../_h5__definitions_8hpp.html',1,'']]], + ['h5annotate_5ftraits_2ehpp_1',['H5Annotate_traits.hpp',['../_h5_annotate__traits_8hpp.html',1,'']]], + ['h5annotate_5ftraits_5fmisc_2ehpp_2',['H5Annotate_traits_misc.hpp',['../_h5_annotate__traits__misc_8hpp.html',1,'']]], + ['h5attribute_2ehpp_3',['H5Attribute.hpp',['../_h5_attribute_8hpp.html',1,'']]], + ['h5attribute_5fmisc_2ehpp_4',['H5Attribute_misc.hpp',['../_h5_attribute__misc_8hpp.html',1,'']]], + ['h5converter_5fmisc_2ehpp_5',['H5Converter_misc.hpp',['../_h5_converter__misc_8hpp.html',1,'']]], + ['h5dataset_2ehpp_6',['H5DataSet.hpp',['../_h5_data_set_8hpp.html',1,'']]], + ['h5dataset_5fmisc_2ehpp_7',['H5DataSet_misc.hpp',['../_h5_data_set__misc_8hpp.html',1,'']]], + ['h5dataspace_2ehpp_8',['H5DataSpace.hpp',['../_h5_data_space_8hpp.html',1,'']]], + ['h5dataspace_5fmisc_2ehpp_9',['H5Dataspace_misc.hpp',['../_h5_dataspace__misc_8hpp.html',1,'']]], + ['h5datatype_2ehpp_10',['H5DataType.hpp',['../_h5_data_type_8hpp.html',1,'']]], + ['h5datatype_5fmisc_2ehpp_11',['H5DataType_misc.hpp',['../_h5_data_type__misc_8hpp.html',1,'']]], + ['h5easy_2ehpp_12',['H5Easy.hpp',['../_h5_easy_8hpp.html',1,'']]], + ['h5easy_5feigen_2ehpp_13',['H5Easy_Eigen.hpp',['../_h5_easy___eigen_8hpp.html',1,'']]], + ['h5easy_5fmisc_2ehpp_14',['H5Easy_misc.hpp',['../_h5_easy__misc_8hpp.html',1,'']]], + ['h5easy_5fopencv_2ehpp_15',['H5Easy_opencv.hpp',['../_h5_easy__opencv_8hpp.html',1,'']]], + ['h5easy_5fpublic_2ehpp_16',['H5Easy_public.hpp',['../_h5_easy__public_8hpp.html',1,'']]], + ['h5easy_5fscalar_2ehpp_17',['H5Easy_scalar.hpp',['../_h5_easy__scalar_8hpp.html',1,'']]], + ['h5easy_5fvector_2ehpp_18',['H5Easy_vector.hpp',['../_h5_easy__vector_8hpp.html',1,'']]], + ['h5easy_5fxtensor_2ehpp_19',['H5Easy_xtensor.hpp',['../_h5_easy__xtensor_8hpp.html',1,'']]], + ['h5exception_2ehpp_20',['H5Exception.hpp',['../_h5_exception_8hpp.html',1,'']]], + ['h5exception_5fmisc_2ehpp_21',['H5Exception_misc.hpp',['../_h5_exception__misc_8hpp.html',1,'']]], + ['h5file_2ehpp_22',['H5File.hpp',['../_h5_file_8hpp.html',1,'']]], + ['h5file_5fmisc_2ehpp_23',['H5File_misc.hpp',['../_h5_file__misc_8hpp.html',1,'']]], + ['h5filedriver_2ehpp_24',['H5FileDriver.hpp',['../_h5_file_driver_8hpp.html',1,'']]], + ['h5filedriver_5fmisc_2ehpp_25',['H5FileDriver_misc.hpp',['../_h5_file_driver__misc_8hpp.html',1,'']]], + ['h5friends_2ehpp_26',['H5Friends.hpp',['../_h5_friends_8hpp.html',1,'']]], + ['h5group_2ehpp_27',['H5Group.hpp',['../_h5_group_8hpp.html',1,'']]], + ['h5inspector_5fmisc_2ehpp_28',['H5Inspector_misc.hpp',['../_h5_inspector__misc_8hpp.html',1,'']]], + ['h5iterables_5fmisc_2ehpp_29',['H5Iterables_misc.hpp',['../_h5_iterables__misc_8hpp.html',1,'']]], + ['h5node_5ftraits_2ehpp_30',['H5Node_traits.hpp',['../_h5_node__traits_8hpp.html',1,'']]], + ['h5node_5ftraits_5fmisc_2ehpp_31',['H5Node_traits_misc.hpp',['../_h5_node__traits__misc_8hpp.html',1,'']]], + ['h5object_2ehpp_32',['H5Object.hpp',['../_h5_object_8hpp.html',1,'']]], + ['h5object_5fmisc_2ehpp_33',['H5Object_misc.hpp',['../_h5_object__misc_8hpp.html',1,'']]], + ['h5path_5ftraits_2ehpp_34',['H5Path_traits.hpp',['../_h5_path__traits_8hpp.html',1,'']]], + ['h5path_5ftraits_5fmisc_2ehpp_35',['H5Path_traits_misc.hpp',['../_h5_path__traits__misc_8hpp.html',1,'']]], + ['h5propertylist_2ehpp_36',['H5PropertyList.hpp',['../_h5_property_list_8hpp.html',1,'']]], + ['h5propertylist_5fmisc_2ehpp_37',['H5PropertyList_misc.hpp',['../_h5_property_list__misc_8hpp.html',1,'']]], + ['h5readwrite_5fmisc_2ehpp_38',['H5ReadWrite_misc.hpp',['../_h5_read_write__misc_8hpp.html',1,'']]], + ['h5reference_2ehpp_39',['H5Reference.hpp',['../_h5_reference_8hpp.html',1,'']]], + ['h5reference_5fmisc_2ehpp_40',['H5Reference_misc.hpp',['../_h5_reference__misc_8hpp.html',1,'']]], + ['h5selection_2ehpp_41',['H5Selection.hpp',['../_h5_selection_8hpp.html',1,'']]], + ['h5selection_5fmisc_2ehpp_42',['H5Selection_misc.hpp',['../_h5_selection__misc_8hpp.html',1,'']]], + ['h5slice_5ftraits_2ehpp_43',['H5Slice_traits.hpp',['../_h5_slice__traits_8hpp.html',1,'']]], + ['h5slice_5ftraits_5fmisc_2ehpp_44',['H5Slice_traits_misc.hpp',['../_h5_slice__traits__misc_8hpp.html',1,'']]], + ['h5utility_2ehpp_45',['H5Utility.hpp',['../_h5_utility_8hpp.html',1,'']]], + ['h5utils_2ehpp_46',['H5Utils.hpp',['../_h5_utils_8hpp.html',1,'']]], + ['h5version_2ehpp_47',['H5Version.hpp',['../_h5_version_8hpp.html',1,'']]], + ['highfive_2ehpp_48',['highfive.hpp',['../highfive_8hpp.html',1,'']]] +]; diff --git a/search/files_3.js b/search/files_3.js new file mode 100644 index 000000000..22c78de0c --- /dev/null +++ b/search/files_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['installation_2emd_0',['installation.md',['../installation_8md.html',1,'']]] +]; diff --git a/search/files_4.js b/search/files_4.js new file mode 100644 index 000000000..4accdc1f4 --- /dev/null +++ b/search/files_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['readme_2emd_0',['README.md',['../_r_e_a_d_m_e_8md.html',1,'']]] +]; diff --git a/search/files_5.js b/search/files_5.js new file mode 100644 index 000000000..0c113abac --- /dev/null +++ b/search/files_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['string_5fpadding_2ehpp_0',['string_padding.hpp',['../string__padding_8hpp.html',1,'']]] +]; diff --git a/search/functions_0.js b/search/functions_0.js new file mode 100644 index 000000000..33ebc66f5 --- /dev/null +++ b/search/functions_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['_5finitializeifneeded_0',['_initializeIfNeeded',['../class_high_five_1_1_property_list.html#a532f2e881eb1cb05da42d687c1d5e97e',1,'HighFive::PropertyList']]] +]; diff --git a/search/functions_1.js b/search/functions_1.js new file mode 100644 index 000000000..59e0aa1ce --- /dev/null +++ b/search/functions_1.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['add_0',['add',['../class_high_five_1_1_raw_property_list.html#a7f1ab49326895254c10c8d39724aa944',1,'HighFive::RawPropertyList::add()'],['../class_high_five_1_1_property_list.html#af982152b36c4216bdcdf60dbf10f0a1d',1,'HighFive::PropertyList::add()']]], + ['allocationtime_1',['allocationtime',['../class_high_five_1_1_allocation_time.html#aa9b8f91669815c7579e952f1ab5d7c64',1,'HighFive::AllocationTime::AllocationTime(H5D_alloc_time_t alloc_time)'],['../class_high_five_1_1_allocation_time.html#a6855f0c3f6c66d4c1ec41d95aebb2ad3',1,'HighFive::AllocationTime::AllocationTime(const DataSetCreateProps &dcpl)']]], + ['apply_2',['apply',['../class_high_five_1_1_hyper_slab.html#afecb4503d3ce92815710f03b3d0a85b8',1,'HighFive::HyperSlab']]], + ['asstringtype_3',['asStringType',['../class_high_five_1_1_data_type.html#ab959e9cd8ccd474542bf220627ec7844',1,'HighFive::DataType']]], + ['at_4',['at',['../class_high_five_1_1_fixed_len_string_array.html#a4f181ea68d6acaff1368236498aa4058',1,'HighFive::FixedLenStringArray']]], + ['atomictype_5',['atomictype',['../class_high_five_1_1_atomic_type.html#a43016c14b0c4731802ff4468486a3f83',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a68a295d57afe890a26c49523ca06eceb',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#aa6082308b8707466a329e02a59a92e0f',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#ad7288e7c84ac324b4dea8169f071e4ee',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a82b6070cd38dd7456d29018765539d0f',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a9b68b644e1e8b20e36ab5098561590fd',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a0edf612da138154aa497d6a2706876ba',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a45b7187829cdc797fba98c530253b7fa',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#ab17d941585baab34c224e0e448b824a6',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#abaf0327b4db9b70f0aa922f92edaa76e',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a8291e490374e7584d5309b24a86f1615',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a0b4d0f1d9c5b18020a460ac1591b0665',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#ae8cebf936468a862589b073db0d28d44',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a7e64d2707996b3b03657c0be2172cbdb',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a06c87a3e42844220d3f1acf7e220588f',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#a7e51e6773bb9934eb8d7fe9881fe4fe9',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#af8b6e9ffdb076ecd7b9ea8e825b1d7c9',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type.html#ace690f26cabac4bd472f47e6629fe7ae',1,'HighFive::AtomicType::AtomicType()'],['../class_high_five_1_1_atomic_type_3_01std_1_1complex_3_01_t_01_4_01_4.html#afce941c6b3480ed7cfcf5a787396c500',1,'HighFive::AtomicType< std::complex< T > >::AtomicType()'],['../class_high_five_1_1_atomic_type_3_01_fixed_len_string_array_3_01_str_len_01_4_01_4.html#ae837edf90c28aaf2229c7a7de899e133',1,'HighFive::AtomicType< FixedLenStringArray< StrLen > >::AtomicType()'],['../class_high_five_1_1_atomic_type_3_01char_0f_str_len_0e_4.html#a4ae18629788947cdb9c5f6893017376b',1,'HighFive::AtomicType< char[StrLen]>::AtomicType()']]], + ['attribute_6',['Attribute',['../class_high_five_1_1_attribute.html#aa2ac0bfc7aa4f29ef5d32a6518cb40a3',1,'HighFive::Attribute']]], + ['attributeexception_7',['AttributeException',['../class_high_five_1_1_attribute_exception.html#ade502f58024a58bea7454e8a4d58c4f0',1,'HighFive::AttributeException']]], + ['attributephasechange_8',['attributephasechange',['../class_high_five_1_1_attribute_phase_change.html#a979a5ef023e9c45b1d8b3de253fb69ef',1,'HighFive::AttributePhaseChange::AttributePhaseChange(unsigned max_compact, unsigned min_dense)'],['../class_high_five_1_1_attribute_phase_change.html#a06649e848cb2fe58934d2a750e853e9b',1,'HighFive::AttributePhaseChange::AttributePhaseChange(const GroupCreateProps &gcpl)']]] +]; diff --git a/search/functions_10.js b/search/functions_10.js new file mode 100644 index 000000000..cf138cac7 --- /dev/null +++ b/search/functions_10.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['select_0',['select',['../class_high_five_1_1_slice_traits.html#a71175dfcf7e9fa5ca5d5e2919163dece',1,'HighFive::SliceTraits::select(const HyperSlab &hyperslab, const DataSpace &memspace) const'],['../class_high_five_1_1_slice_traits.html#a6a76a20247d0e8f8629b81c17425d73c',1,'HighFive::SliceTraits::select(const std::vector< size_t > &offset, const std::vector< size_t > &count, const std::vector< size_t > &stride={}, const std::vector< size_t > &block={}) const'],['../class_high_five_1_1_slice_traits.html#a52c44cc1bdfac24890b999e902099c83',1,'HighFive::SliceTraits::select(const std::vector< size_t > &columns) const'],['../class_high_five_1_1_slice_traits.html#aa67c235ff1633d91f77b4f3fd911da75',1,'HighFive::SliceTraits::select(const ElementSet &elements) const'],['../class_high_five_1_1_slice_traits.html#aa11ef45e433e18ce8f4706f17a8d7463',1,'HighFive::SliceTraits::select(const HyperSlab &hyperslab) const']]], + ['selection_1',['Selection',['../class_high_five_1_1_selection.html#ae5ffe93f0e0a4d6e04d531420fd63e29',1,'HighFive::Selection']]], + ['set_2',['set',['../class_h5_easy_1_1_dump_options.html#aca2b65d5fe5b5fa9bc74f62bb8c52871',1,'H5Easy::DumpOptions::set(DumpMode mode)'],['../class_h5_easy_1_1_dump_options.html#a026e6c7714cae7e1b9a93b0e39ca71d0',1,'H5Easy::DumpOptions::set(Flush mode)'],['../class_h5_easy_1_1_dump_options.html#ae1db6010b692e7a0c260ce86e80f5e28',1,'H5Easy::DumpOptions::set(const Compression &level)'],['../class_h5_easy_1_1_dump_options.html#aa242b2d0698060317ba538349b193656',1,'H5Easy::DumpOptions::set(T arg, Args... args)']]], + ['set_5flogging_5fcallback_3',['set_logging_callback',['../class_high_five_1_1_logger.html#a9b42228f1091409f5fc4b09a25fed4fc',1,'HighFive::Logger']]], + ['setchunksize_4',['setchunksize',['../class_h5_easy_1_1_dump_options.html#af8cb0dc019344b41643cbcebb4c88f01',1,'H5Easy::DumpOptions::setChunkSize(const std::vector< T > &shape)'],['../class_h5_easy_1_1_dump_options.html#ac5fa831c573ee5a7f03aea5967cf3301',1,'H5Easy::DumpOptions::setChunkSize(std::initializer_list< size_t > shape)']]], + ['seterrormsg_5',['setErrorMsg',['../class_high_five_1_1_exception.html#a7c9b65fc87cf1abfed6d24309c74f0cf',1,'HighFive::Exception']]], + ['shuffle_6',['Shuffle',['../class_high_five_1_1_shuffle.html#a7fc2632a04860fee90b30867afb43f46',1,'HighFive::Shuffle']]], + ['silencehdf5_7',['SilenceHDF5',['../class_high_five_1_1_silence_h_d_f5.html#a87e3b628feb913044cf4859fce72e9b5',1,'HighFive::SilenceHDF5']]], + ['size_8',['size',['../class_high_five_1_1_fixed_len_string_array.html#ac3097dafb2c4aa731fe154a746b937b5',1,'HighFive::FixedLenStringArray']]], + ['stackwalk_9',['stackWalk',['../struct_high_five_1_1_h_d_f5_err_mapper.html#a6b5c9457c40015e9c57896e68cf86069',1,'HighFive::HDF5ErrMapper']]], + ['string_10',['string',['../class_high_five_1_1_data_type.html#a957ea4848ba76cab82d7b4cff7210c87',1,'HighFive::DataType']]], + ['szip_11',['Szip',['../class_high_five_1_1_szip.html#a2857efb608427dbfcea9356fbd0f1cea',1,'HighFive::Szip']]] +]; diff --git a/search/functions_11.js b/search/functions_11.js new file mode 100644 index 000000000..5a501a3d2 --- /dev/null +++ b/search/functions_11.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['to_5fstring_0',['to_string',['../namespace_high_five.html#ace8358255410138c5e223747e2a06f36',1,'HighFive']]], + ['toexception_1',['ToException',['../struct_high_five_1_1_h_d_f5_err_mapper.html#abce55b175d5b366589798b0bef28cae6',1,'HighFive::HDF5ErrMapper']]], + ['tohdf5sizevector_2',['toHDF5SizeVector',['../namespace_high_five.html#acd815ee14c714bfa4ba0f05acc6e486d',1,'HighFive']]], + ['tostlsizevector_3',['toSTLSizeVector',['../namespace_high_five.html#a1de5c5eaf17007862e5cf63ec186a64e',1,'HighFive']]] +]; diff --git a/search/functions_12.js b/search/functions_12.js new file mode 100644 index 000000000..94fc2623f --- /dev/null +++ b/search/functions_12.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['unlink_0',['unlink',['../class_high_five_1_1_node_traits.html#a37ed4a7bc21f02b14d1f71e097b3d4bf',1,'HighFive::NodeTraits']]], + ['usecollectiveio_1',['usecollectiveio',['../class_high_five_1_1_use_collective_i_o.html#a2e69f2c3f51af01f979094e5f8624327',1,'HighFive::UseCollectiveIO::UseCollectiveIO(bool enable=true)'],['../class_high_five_1_1_use_collective_i_o.html#a91ea36587502d39431c7fbb565e9debe',1,'HighFive::UseCollectiveIO::UseCollectiveIO(const DataTransferProps &dxpl)']]] +]; diff --git a/search/functions_13.js b/search/functions_13.js new file mode 100644 index 000000000..6005c0585 --- /dev/null +++ b/search/functions_13.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['variablelengthstringtype_0',['VariableLengthStringType',['../class_high_five_1_1_variable_length_string_type.html#acc03c514d450d31741a103765de509de',1,'HighFive::VariableLengthStringType']]] +]; diff --git a/search/functions_14.js b/search/functions_14.js new file mode 100644 index 000000000..576376be8 --- /dev/null +++ b/search/functions_14.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['wascollective_0',['wasCollective',['../class_high_five_1_1_mpio_no_collective_cause.html#a6d388115bac6e233bec17c6833206425',1,'HighFive::MpioNoCollectiveCause']]], + ['what_1',['what',['../class_high_five_1_1_exception.html#ac68d010bb13e90124360fa0f7c0e6f53',1,'HighFive::Exception']]], + ['write_2',['write',['../class_high_five_1_1_slice_traits.html#a307d4d8539a69feda2bbf11bf8622e60',1,'HighFive::SliceTraits::write()'],['../class_high_five_1_1_attribute.html#a9f7585585d281f09ab231df1637e29c7',1,'HighFive::Attribute::write()']]], + ['write_5fraw_3',['write_raw',['../class_high_five_1_1_slice_traits.html#aeac937f71ee942fafac7d19fb658721a',1,'HighFive::SliceTraits::write_raw(const T *buffer, const DataType &mem_datatype, const DataTransferProps &xfer_props=DataTransferProps())'],['../class_high_five_1_1_slice_traits.html#a4396e0774fd015f081dcc3eb12efe97c',1,'HighFive::SliceTraits::write_raw(const T *buffer, const DataTransferProps &xfer_props=DataTransferProps())'],['../class_high_five_1_1_attribute.html#aaf08f65d5477d96922aa257a2af86efa',1,'HighFive::Attribute::write_raw(const T *buffer, const DataType &mem_datatype)'],['../class_high_five_1_1_attribute.html#abb15f4324cc70aabaaaf9aaf9c7922c9',1,'HighFive::Attribute::write_raw(const T *buffer)']]] +]; diff --git a/search/functions_15.js b/search/functions_15.js new file mode 100644 index 000000000..2e9feb6df --- /dev/null +++ b/search/functions_15.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['_7eexception_0',['~Exception',['../class_high_five_1_1_exception.html#a5b14aa4572f3e72eff27529413442f29',1,'HighFive::Exception']]], + ['_7eobject_1',['~Object',['../class_high_five_1_1_object.html#a26aecd6a0812960b13eff054fe3a78aa',1,'HighFive::Object']]], + ['_7esilencehdf5_2',['~SilenceHDF5',['../class_high_five_1_1_silence_h_d_f5.html#a56bfc9798ec749255cdd7960a73409a0',1,'HighFive::SilenceHDF5']]] +]; diff --git a/search/functions_2.js b/search/functions_2.js new file mode 100644 index 000000000..d67431485 --- /dev/null +++ b/search/functions_2.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['back_0',['back',['../class_high_five_1_1_fixed_len_string_array.html#a575f76607299a2bfd870461532c42767',1,'HighFive::FixedLenStringArray']]], + ['begin_1',['begin',['../class_high_five_1_1_fixed_len_string_array.html#ac93fca9a8c1847e2ebcba946766e47fe',1,'HighFive::FixedLenStringArray::begin() noexcept'],['../class_high_five_1_1_fixed_len_string_array.html#a13ebd6706d31cb69d05a60ce814b06b7',1,'HighFive::FixedLenStringArray::begin() const noexcept']]] +]; diff --git a/search/functions_3.js b/search/functions_3.js new file mode 100644 index 000000000..43d77347a --- /dev/null +++ b/search/functions_3.js @@ -0,0 +1,24 @@ +var searchData= +[ + ['caching_0',['caching',['../class_high_five_1_1_caching.html#a1103a422af4e81b1f4c044996d66d72b',1,'HighFive::Caching::Caching(const DataSetCreateProps &dcpl)'],['../class_high_five_1_1_caching.html#a4ad5bc32240ca22d19c154d6c7691e76',1,'HighFive::Caching::Caching(const size_t numSlots, const size_t cacheSize, const double w0=static_cast< double >(H5D_CHUNK_CACHE_W0_DEFAULT))']]], + ['cbegin_1',['cbegin',['../class_high_five_1_1_fixed_len_string_array.html#adbd25ca7ba7ca704f7e2ae4f59521a98',1,'HighFive::FixedLenStringArray']]], + ['cend_2',['cend',['../class_high_five_1_1_fixed_len_string_array.html#a0b2157856658953e64c39fb4c2711a59',1,'HighFive::FixedLenStringArray']]], + ['chunking_3',['chunking',['../class_high_five_1_1_chunking.html#abfd796a2842296cce52f56563d5e3f1b',1,'HighFive::Chunking::Chunking(const std::vector< hsize_t > &dims)'],['../class_high_five_1_1_chunking.html#ae6f0394d31da862755c2a828b7340578',1,'HighFive::Chunking::Chunking(const std::initializer_list< hsize_t > &items)'],['../class_high_five_1_1_chunking.html#a67ef8c92794bef91bb521dd1a8771034',1,'HighFive::Chunking::Chunking(hsize_t item, Args... args)'],['../class_high_five_1_1_chunking.html#a3c16ed55527bf30ae056cb2f52adb3bc',1,'HighFive::Chunking::Chunking(DataSetCreateProps &plist, size_t max_dims=32)']]], + ['clone_4',['clone',['../class_high_five_1_1_data_space.html#a902be8659c05c859158631230b78f3f4',1,'HighFive::DataSpace']]], + ['commit_5',['commit',['../class_high_five_1_1_compound_type.html#a15cef864f40910add938415ffb8eeac1',1,'HighFive::CompoundType::commit()'],['../class_high_five_1_1_enum_type.html#a989ae33cd573624dcbdcaf0d5bed5eea',1,'HighFive::EnumType::commit()']]], + ['compoundtype_6',['compoundtype',['../class_high_five_1_1_compound_type.html#a7a9a5ba8596390d58597efe77c986282',1,'HighFive::CompoundType::CompoundType(const CompoundType &other)=default'],['../class_high_five_1_1_compound_type.html#ad8de9032c191ca6ca6221eb80dcf23da',1,'HighFive::CompoundType::CompoundType(DataType &&type)'],['../class_high_five_1_1_compound_type.html#a928622671e9da1ffcc7df491b746680d',1,'HighFive::CompoundType::CompoundType(const std::initializer_list< member_def > &t_members, size_t size=0)'],['../class_high_five_1_1_compound_type.html#af41ef356cdeb6f369ea2c3f5c6acb317',1,'HighFive::CompoundType::CompoundType(std::vector< member_def > &&t_members, size_t size=0)'],['../class_high_five_1_1_compound_type.html#ac8f84671aaca1a6e4aadf599464f822d',1,'HighFive::CompoundType::CompoundType(const std::vector< member_def > &t_members, size_t size=0)']]], + ['compress_7',['compress',['../class_h5_easy_1_1_dump_options.html#aef7625dc82a01d05a1e2047f0325dcd1',1,'H5Easy::DumpOptions']]], + ['compression_8',['compression',['../class_h5_easy_1_1_compression.html#af85134056dad9c8b46bb51835cba11d7',1,'H5Easy::Compression::Compression(bool enable=true)'],['../class_h5_easy_1_1_compression.html#aae59d202e4dfe95c53ee626d3439f6e4',1,'H5Easy::Compression::Compression(T level)']]], + ['compute_5ftotal_5fsize_9',['compute_total_size',['../namespace_high_five.html#ae473192dc3e4e3f42c470f682817a32c',1,'HighFive']]], + ['create_5fand_5fcheck_5fdatatype_10',['create_and_check_datatype',['../namespace_high_five.html#a43d3946c0bb037e99c803ec90dc247b4',1,'HighFive']]], + ['create_5fdatatype_11',['create_datatype',['../namespace_high_five.html#a6f3b307cc5b6bd82d6360f13cacac2de',1,'HighFive']]], + ['create_5fenum_5fboolean_12',['create_enum_boolean',['../namespace_high_five.html#a361e2132e78bca627125eba4295b9ae6',1,'HighFive']]], + ['create_5fref_13',['create_ref',['../class_high_five_1_1_reference.html#af33dd1870b37db8c90287df4f0c7d622',1,'HighFive::Reference']]], + ['createattribute_14',['createattribute',['../class_high_five_1_1_annotate_traits.html#a43db973fb33b6abbd8cc8cd7a6dc4bec',1,'HighFive::AnnotateTraits::createAttribute(const std::string &attribute_name, const DataSpace &space, const DataType &type)'],['../class_high_five_1_1_annotate_traits.html#a7218895780698f2bbab4d029fdab0284',1,'HighFive::AnnotateTraits::createAttribute(const std::string &attribute_name, const DataSpace &space)'],['../class_high_five_1_1_annotate_traits.html#ae4e2ba30f074187856b98bdc61bbd646',1,'HighFive::AnnotateTraits::createAttribute(const std::string &attribute_name, const T &data)']]], + ['createdataset_15',['createdataset',['../class_high_five_1_1_node_traits.html#afe17f9c1eb52c53679594f80b0d1bb8d',1,'HighFive::NodeTraits::createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)'],['../class_high_five_1_1_node_traits.html#a3adbf1f9a4c0bb6a5824cd1e4dc0a181',1,'HighFive::NodeTraits::createDataSet(const std::string &dataset_name, const FixedLenStringArray< N > &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)'],['../class_high_five_1_1_node_traits.html#ac53402ee0dc01b86ac475dfa8db172c3',1,'HighFive::NodeTraits::createDataSet(const std::string &dataset_name, const T &data, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)'],['../class_high_five_1_1_node_traits.html#afe17f9c1eb52c53679594f80b0d1bb8d',1,'HighFive::NodeTraits::createDataSet(const std::string &dataset_name, const DataSpace &space, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)'],['../class_high_five_1_1_node_traits.html#a941a8deb4c9971d27af7b7b73a534709',1,'HighFive::NodeTraits::createDataSet(const std::string &dataset_name, const DataSpace &space, const DataType &type, const DataSetCreateProps &createProps=DataSetCreateProps::Default(), const DataSetAccessProps &accessProps=DataSetAccessProps::Default(), bool parents=true)']]], + ['createexternallink_16',['createExternalLink',['../class_high_five_1_1_node_traits.html#a4f63ab185617fac1597087e8079a0989',1,'HighFive::NodeTraits']]], + ['creategroup_17',['creategroup',['../class_high_five_1_1_node_traits.html#a8b966c4e5ee90aa9d86421646f2ecb99',1,'HighFive::NodeTraits::createGroup(const std::string &group_name, bool parents=true)'],['../class_high_five_1_1_node_traits.html#a3da8ee379234a7d0d18e0abbd6019196',1,'HighFive::NodeTraits::createGroup(const std::string &group_name, const GroupCreateProps &createProps, bool parents=true)']]], + ['createhardlink_18',['createHardLink',['../class_high_five_1_1_node_traits.html#a7f11136752f9a2ec632e0b2f94fb475e',1,'HighFive::NodeTraits']]], + ['createintermediategroup_19',['createintermediategroup',['../class_high_five_1_1_create_intermediate_group.html#a05ff59987cddf8b82e3bd7a3eec0394f',1,'HighFive::CreateIntermediateGroup::CreateIntermediateGroup(bool create=true)'],['../class_high_five_1_1_create_intermediate_group.html#ab7b461991cf2489e2ec80c17c2a15462',1,'HighFive::CreateIntermediateGroup::CreateIntermediateGroup(const ObjectCreateProps &ocpl)'],['../class_high_five_1_1_create_intermediate_group.html#a5d3a1f7a0201c8735bb27493717b67a8',1,'HighFive::CreateIntermediateGroup::CreateIntermediateGroup(const LinkCreateProps &lcpl)']]], + ['createsoftlink_20',['createsoftlink',['../class_high_five_1_1_node_traits.html#a6f4f9127e6626fdc9d3456a77899217b',1,'HighFive::NodeTraits::createSoftLink(const std::string &linkName, const T &obj)'],['../class_high_five_1_1_node_traits.html#a44f7cc437ed68cb9d534f2fe2ffe3c79',1,'HighFive::NodeTraits::createSoftLink(const std::string &link_name, const std::string &obj_path, LinkCreateProps linkCreateProps=LinkCreateProps(), const LinkAccessProps &linkAccessProps=LinkAccessProps(), const bool parents=true)']]] +]; diff --git a/search/functions_4.js b/search/functions_4.js new file mode 100644 index 000000000..08a65c340 --- /dev/null +++ b/search/functions_4.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['data_0',['data',['../class_high_five_1_1_fixed_len_string_array.html#a1f3bd411e653c928a3d852d38fd7ef31',1,'HighFive::FixedLenStringArray::data() const noexcept'],['../class_high_five_1_1_fixed_len_string_array.html#a7f05997860932a452aaa786b77c0058d',1,'HighFive::FixedLenStringArray::data() noexcept']]], + ['dataset_1',['dataset',['../class_high_five_1_1_data_set.html#a1a43c3413fef0f376d85dbf47e38ad55',1,'HighFive::DataSet::DataSet()=default'],['../class_high_five_1_1_data_set.html#a99bb1d77991fd975fb559372b4b0fb6b',1,'HighFive::DataSet::DataSet(Object &&o) noexcept']]], + ['datasetexception_2',['DataSetException',['../class_high_five_1_1_data_set_exception.html#a12e2ef42d52a26486cbaa10ff9c02534',1,'HighFive::DataSetException']]], + ['dataspace_3',['dataspace',['../class_high_five_1_1_data_space.html#a40b1526be36b7ebb536122f9c413feef',1,'HighFive::DataSpace::DataSpace(const std::vector< size_t > &dims)'],['../class_high_five_1_1_data_space.html#a978628751ce6f7ecf92961fa44e2a821',1,'HighFive::DataSpace::DataSpace(const std::array< size_t, N > &dims)'],['../class_high_five_1_1_data_space.html#a6558726da6bff24df406751a4429e10b',1,'HighFive::DataSpace::DataSpace(const std::initializer_list< size_t > &dims)'],['../class_high_five_1_1_data_space.html#a2771c3df1c0578278bfbd0e2263e7abf',1,'HighFive::DataSpace::DataSpace(size_t dim1, Args... dims)'],['../class_high_five_1_1_data_space.html#a5d48bf7863b08eed90d4357ac476b4a1',1,'HighFive::DataSpace::DataSpace(const IT begin, const IT end)'],['../class_high_five_1_1_data_space.html#a435085d2b1d06d54966c13d0d84a6e77',1,'HighFive::DataSpace::DataSpace(const std::vector< size_t > &dims, const std::vector< size_t > &maxdims)'],['../class_high_five_1_1_data_space.html#ab9230eeb6124dee3fbbc49c725e988ee',1,'HighFive::DataSpace::DataSpace(DataspaceType space_type)'],['../class_high_five_1_1_data_space.html#aaf4d7229b87d8175eaf0ab2314e9675a',1,'HighFive::DataSpace::DataSpace()=default']]], + ['dataspaceexception_4',['DataSpaceException',['../class_high_five_1_1_data_space_exception.html#a6838cd3e42fc092ed25594f8e4e98093',1,'HighFive::DataSpaceException']]], + ['datatypeexception_5',['DataTypeException',['../class_high_five_1_1_data_type_exception.html#abfbd23381af62882f92fa1308f21948a',1,'HighFive::DataTypeException']]], + ['default_6',['default',['../class_high_five_1_1_property_list_base.html#aceba0c0241a36365b737e58baeb657ca',1,'HighFive::PropertyListBase::Default()'],['../class_high_five_1_1_property_list.html#a632188590f43c420a203c41909963a73',1,'HighFive::PropertyList::Default()']]], + ['default_5flogging_5fcallback_7',['default_logging_callback',['../namespace_high_five.html#abf6fe5be71a00bfb4d6b5f65e6248132',1,'HighFive']]], + ['deflate_8',['Deflate',['../class_high_five_1_1_deflate.html#aec7e6cfb91ee39beb916c0a96921fd6b',1,'HighFive::Deflate']]], + ['deleteattribute_9',['deleteAttribute',['../class_high_five_1_1_annotate_traits.html#a6aa353a99c57bc526da0b2f1a06318b3',1,'HighFive::AnnotateTraits']]], + ['dereference_10',['dereference',['../class_high_five_1_1_reference.html#a083d46fbe580304f8416f73e57a5b414',1,'HighFive::Reference']]], + ['dump_11',['dump',['../namespace_h5_easy.html#a3d74bc6b96493dbef4fb3b4e237cff88',1,'H5Easy::dump(File &file, const std::string &path, const T &data, DumpMode mode=DumpMode::Create)'],['../namespace_h5_easy.html#a7614d902c22b74a18fb29c42599a6785',1,'H5Easy::dump(File &file, const std::string &path, const T &data, const DumpOptions &options)'],['../namespace_h5_easy.html#a727340de29b032fa860412f6a69f215c',1,'H5Easy::dump(File &file, const std::string &path, const T &data, const std::vector< size_t > &idx)'],['../namespace_h5_easy.html#a2e96c80337866b79777e52faa7d692cc',1,'H5Easy::dump(File &file, const std::string &path, const T &data, const std::initializer_list< size_t > &idx)'],['../namespace_h5_easy.html#a26be50f813db9257d77b0c25adfdf726',1,'H5Easy::dump(File &file, const std::string &path, const T &data, const std::vector< size_t > &idx, const DumpOptions &options)'],['../namespace_h5_easy.html#a5f0af85e0fe3ac03af665dae2a3e9e16',1,'H5Easy::dump(File &file, const std::string &path, const T &data, const std::initializer_list< size_t > &idx, const DumpOptions &options)']]], + ['dumpattribute_12',['dumpattribute',['../namespace_h5_easy.html#a85cad90855dbb23ba985be58b447a6b2',1,'H5Easy::dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, DumpMode mode=DumpMode::Create)'],['../namespace_h5_easy.html#a4a395eb642d1a2d5055282dacf32ee94',1,'H5Easy::dumpAttribute(File &file, const std::string &path, const std::string &key, const T &data, const DumpOptions &options)']]], + ['dumpoptions_13',['dumpoptions',['../class_h5_easy_1_1_dump_options.html#a692690dae0de400b885791b9ce1434b7',1,'H5Easy::DumpOptions::DumpOptions()=default'],['../class_h5_easy_1_1_dump_options.html#af2a89678a725e2cb33b4f4a824d102d3',1,'H5Easy::DumpOptions::DumpOptions(Args... args)']]] +]; diff --git a/search/functions_5.js b/search/functions_5.js new file mode 100644 index 000000000..c1bf85645 --- /dev/null +++ b/search/functions_5.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['elementset_0',['elementset',['../class_high_five_1_1_element_set.html#a1479938205bd9d66267a58a11651b04f',1,'HighFive::ElementSet::ElementSet(std::initializer_list< std::size_t > list)'],['../class_high_five_1_1_element_set.html#a294be4e23eff7d07faa08e128d4b0afc',1,'HighFive::ElementSet::ElementSet(std::initializer_list< std::vector< std::size_t > > list)'],['../class_high_five_1_1_element_set.html#aedd3703eec6465101d2eef43ddbb5788',1,'HighFive::ElementSet::ElementSet(const std::vector< std::size_t > &element_ids)'],['../class_high_five_1_1_element_set.html#afc31e0be89f28aea060d8482ea525996',1,'HighFive::ElementSet::ElementSet(const std::vector< std::vector< std::size_t > > &element_ids)']]], + ['empty_1',['empty',['../class_high_five_1_1_data_type.html#a546aceb9cdbc45d5e471811b8e9cdce8',1,'HighFive::DataType::empty()'],['../class_high_five_1_1_fixed_len_string_array.html#ae4e45b62e6aa12d7e1889250d347aca0',1,'HighFive::FixedLenStringArray::empty() const noexcept']]], + ['end_2',['end',['../class_high_five_1_1_fixed_len_string_array.html#adbfe9953b715595267130ac4e46e0dfc',1,'HighFive::FixedLenStringArray::end() noexcept'],['../class_high_five_1_1_fixed_len_string_array.html#a4d71a772f55f81a5e9fa9a333e64899d',1,'HighFive::FixedLenStringArray::end() const noexcept']]], + ['enumtype_3',['enumtype',['../class_high_five_1_1_enum_type.html#a7d2b0c5fd6d77ea600687d6536b8ecdb',1,'HighFive::EnumType::EnumType(const EnumType &other)=default'],['../class_high_five_1_1_enum_type.html#aa1c30f28b5387421406e184c5f77b854',1,'HighFive::EnumType::EnumType(const std::vector< member_def > &t_members)'],['../class_high_five_1_1_enum_type.html#a36c34fffd466b4a2c0c4f3bdf9f6a1a3',1,'HighFive::EnumType::EnumType(std::initializer_list< member_def > t_members)']]], + ['estimatedlinkinfo_4',['estimatedlinkinfo',['../class_high_five_1_1_estimated_link_info.html#a3c311eb0f98aaa4dc1c7a26fab57a43d',1,'HighFive::EstimatedLinkInfo::EstimatedLinkInfo(unsigned entries, unsigned length)'],['../class_high_five_1_1_estimated_link_info.html#ae8d47670a7adee47bf69d0fc1a53ebf2',1,'HighFive::EstimatedLinkInfo::EstimatedLinkInfo(const GroupCreateProps &gcpl)']]], + ['exception_5',['Exception',['../class_high_five_1_1_exception.html#adbde3ec927a2402f5f1f23e50f02c155',1,'HighFive::Exception']]], + ['exist_6',['exist',['../class_high_five_1_1_node_traits.html#aa3c8c4e09ebba6d997768ad72bc3bf82',1,'HighFive::NodeTraits']]] +]; diff --git a/search/functions_6.js b/search/functions_6.js new file mode 100644 index 000000000..bc63fe217 --- /dev/null +++ b/search/functions_6.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['file_0',['file',['../class_high_five_1_1_file.html#aae2430c3529c4896a207f6dbe64a943e',1,'HighFive::File::File(const std::string &filename, unsigned openFlags, const FileCreateProps &fileCreateProps, const FileAccessProps &fileAccessProps=FileAccessProps::Default())'],['../class_high_five_1_1_file.html#a8795099e29b71240c772e7c57d072a9d',1,'HighFive::File::File()=default'],['../class_high_five_1_1_file.html#a28ecd0313429c95671fe4baa6be076df',1,'HighFive::File::File(const std::string &filename, unsigned openFlags=ReadOnly, const FileAccessProps &fileAccessProps=FileAccessProps::Default())']]], + ['fileexception_1',['FileException',['../class_high_five_1_1_file_exception.html#a68c676392c9ea3f7e5e7ecc1149609ee',1,'HighFive::FileException']]], + ['fileversionbounds_2',['fileversionbounds',['../class_high_five_1_1_file_version_bounds.html#aff11691ee13ebbd765d9c1f18e379b4b',1,'HighFive::FileVersionBounds::FileVersionBounds(H5F_libver_t low, H5F_libver_t high)'],['../class_high_five_1_1_file_version_bounds.html#a9517df3be7e25b4a6770165ffe07430d',1,'HighFive::FileVersionBounds::FileVersionBounds(const FileAccessProps &fapl)']]], + ['find_5ffirst_5fatomic_5fmember_5fsize_3',['find_first_atomic_member_size',['../namespace_high_five.html#ac4e5e1ccbc6a1c20bcd581f71fb5e6d5',1,'HighFive']]], + ['fixedlengthstringtype_4',['FixedLengthStringType',['../class_high_five_1_1_fixed_length_string_type.html#a861eb3227c2387d3c0754b795cde204e',1,'HighFive::FixedLengthStringType']]], + ['fixedlenstringarray_5',['fixedlenstringarray',['../class_high_five_1_1_fixed_len_string_array.html#abe5666a64c15fde7771c57f42c447d33',1,'HighFive::FixedLenStringArray::FixedLenStringArray()=default'],['../class_high_five_1_1_fixed_len_string_array.html#a1ce46702ecda8c52f8a04ab78eb7edde',1,'HighFive::FixedLenStringArray::FixedLenStringArray(const char array[][N], std::size_t n_strings)'],['../class_high_five_1_1_fixed_len_string_array.html#aacb1f323d88e86e39c648eb56f63ae23',1,'HighFive::FixedLenStringArray::FixedLenStringArray(const std::vector< std::string > &vec)'],['../class_high_five_1_1_fixed_len_string_array.html#a328d0aa4879af0eec80efbc1f4c7491a',1,'HighFive::FixedLenStringArray::FixedLenStringArray(const std::string *iter_begin, const std::string *iter_end)'],['../class_high_five_1_1_fixed_len_string_array.html#adc28fb9f211c154a23c49329bf9b24aa',1,'HighFive::FixedLenStringArray::FixedLenStringArray(const std::initializer_list< std::string > &)']]], + ['flush_6',['flush',['../class_h5_easy_1_1_dump_options.html#a2ed02e1afc1926b7a58346b9bf2017f9',1,'H5Easy::DumpOptions::flush()'],['../class_high_five_1_1_file.html#a1e607911df10307dd3cc75a0dd6c5158',1,'HighFive::File::flush()']]], + ['from_7',['From',['../class_high_five_1_1_data_space.html#a4b0ebf9d884bf33a6b95e7eed989555a',1,'HighFive::DataSpace']]], + ['fromchararraystrings_8',['FromCharArrayStrings',['../class_high_five_1_1_data_space.html#a1ec5754826f5f43385e971da7f279559',1,'HighFive::DataSpace']]], + ['fromhdf5sizes_9',['fromHDF5Sizes',['../struct_high_five_1_1_regular_hyper_slab.html#af685fbdbe7d8dd7425c6c57719348a01',1,'HighFive::RegularHyperSlab']]], + ['frompropertylist_10',['frompropertylist',['../class_high_five_1_1_create_intermediate_group.html#a815c0e49561c0b4a774cc59a4aa017b7',1,'HighFive::CreateIntermediateGroup::fromPropertyList()'],['../class_high_five_1_1_link_creation_order.html#a6bcc5d01c7a4aa1630b192aa62ff3dd9',1,'HighFive::LinkCreationOrder::fromPropertyList()']]], + ['front_11',['front',['../class_high_five_1_1_fixed_len_string_array.html#a00303ff83d040a9b165eac585f43770d',1,'HighFive::FixedLenStringArray']]] +]; diff --git a/search/functions_7.js b/search/functions_7.js new file mode 100644 index 000000000..c8ff2716f --- /dev/null +++ b/search/functions_7.js @@ -0,0 +1,65 @@ +var searchData= +[ + ['get_0',['get',['../class_h5_easy_1_1_compression.html#a925d2e96ddbc9fc459b81ecf31fc121e',1,'H5Easy::Compression']]], + ['get_5fglobal_5flogger_1',['get_global_logger',['../namespace_high_five.html#ad2f60aec2c40524b30248aac67f5eeb5',1,'HighFive']]], + ['getaccesspropertylist_2',['getaccesspropertylist',['../class_high_five_1_1_data_set.html#ada59836ba9ddb3973fa80076e4242734',1,'HighFive::DataSet::getAccessPropertyList()'],['../class_high_five_1_1_file.html#a3a75e93bc3748614dff7e850d82ed495',1,'HighFive::File::getAccessPropertyList()']]], + ['getaddress_3',['getAddress',['../class_high_five_1_1_object_info.html#a9275887ab016ce89fc24938f8d86aa11',1,'HighFive::ObjectInfo']]], + ['getallocationtime_4',['getAllocationTime',['../class_high_five_1_1_allocation_time.html#a0fee45a52a542fedaa06300e177f7f01',1,'HighFive::AllocationTime']]], + ['getattribute_5',['getAttribute',['../class_high_five_1_1_annotate_traits.html#ad82448659b7a92cac2e7eeb5d8b974d6',1,'HighFive::AnnotateTraits']]], + ['getcachesize_6',['getCacheSize',['../class_high_five_1_1_caching.html#a54d4f322493e56f22fd5d70b1f64ea26',1,'HighFive::Caching']]], + ['getcause_7',['getCause',['../class_high_five_1_1_mpio_no_collective_cause.html#a7b1b28211a950b4652a0336559f4be6d',1,'HighFive::MpioNoCollectiveCause']]], + ['getcharacterset_8',['getCharacterSet',['../class_high_five_1_1_string_type.html#a81ae2382aeeccb15d53d70d04496fcab',1,'HighFive::StringType']]], + ['getchunksize_9',['getChunkSize',['../class_h5_easy_1_1_dump_options.html#a68181f4e69da1dc455606d006864e088',1,'H5Easy::DumpOptions']]], + ['getclass_10',['getClass',['../class_high_five_1_1_data_type.html#a98e6e07ff15a8e1b73673bc51a1a1339',1,'HighFive::DataType']]], + ['getcompressionlevel_11',['getCompressionLevel',['../class_h5_easy_1_1_dump_options.html#a8c58af708cddcbaebb03fcfff6b6356c',1,'H5Easy::DumpOptions']]], + ['getcreatepropertylist_12',['getcreatepropertylist',['../class_high_five_1_1_data_type.html#a1a1b47fdec00d9814dd861fa51420c9e',1,'HighFive::DataType::getCreatePropertyList()'],['../class_high_five_1_1_group.html#a74f31ef804cbebe13b36db113ef5f235',1,'HighFive::Group::getCreatePropertyList()'],['../class_high_five_1_1_file.html#a03938d3708dbafeaf6a83f982aee3909',1,'HighFive::File::getCreatePropertyList()'],['../class_high_five_1_1_data_set.html#a565ee99d20689e662f17ab8ce3b57000',1,'HighFive::DataSet::getCreatePropertyList()'],['../class_high_five_1_1_attribute.html#acee2136593f83a803e4b000916d3020b',1,'HighFive::Attribute::getCreatePropertyList()']]], + ['getcreationtime_13',['getCreationTime',['../class_high_five_1_1_object_info.html#a3afa78a1134a890934ade597a171b482',1,'HighFive::ObjectInfo']]], + ['getdataset_14',['getdataset',['../class_high_five_1_1_node_traits.html#a6d42bb7aa92a8be5567a42a2f134115f',1,'HighFive::NodeTraits::getDataSet()'],['../class_high_five_1_1_selection.html#a99180045db6986a3aa99aa19b0b97c07',1,'HighFive::Selection::getDataset() noexcept'],['../class_high_five_1_1_selection.html#a883952cb62d668308d875bfbcc121fc8',1,'HighFive::Selection::getDataset() const noexcept']]], + ['getdatatype_15',['getdatatype',['../class_high_five_1_1_selection.html#a32e87dff815356a9fa9546a0c09f1d39',1,'HighFive::Selection::getDataType()'],['../class_high_five_1_1_attribute.html#a600131e681e98f5f03e64e662e3fa325',1,'HighFive::Attribute::getDataType()'],['../class_high_five_1_1_data_set.html#a52b7938b1c7e48f7600fbc3be4a0f24e',1,'HighFive::DataSet::getDataType()'],['../class_high_five_1_1_node_traits.html#a5b618ebe1b03f24194b5a8ed1b9c59b6',1,'HighFive::NodeTraits::getDataType()']]], + ['getdimensions_16',['getdimensions',['../class_high_five_1_1_data_set.html#af7b75de38d47c2c68d4f384ee611bc66',1,'HighFive::DataSet::getDimensions()'],['../class_high_five_1_1_data_space.html#a8c0f85ba275d1d61c332b164070493c8',1,'HighFive::DataSpace::getDimensions()'],['../class_high_five_1_1_chunking.html#ab7241caf43e07ff7bfdb192770270bf2',1,'HighFive::Chunking::getDimensions()']]], + ['getelementcount_17',['getelementcount',['../class_high_five_1_1_data_set.html#abd786ba50bb11b92c9d760f7f77e4ca7',1,'HighFive::DataSet::getElementCount()'],['../class_high_five_1_1_data_space.html#a8b0fb67e77eed8e4b36b67bb352ec07b',1,'HighFive::DataSpace::getElementCount()']]], + ['getentries_18',['getEntries',['../class_high_five_1_1_estimated_link_info.html#a15fe39d3abcec1d56eae67246ed88848',1,'HighFive::EstimatedLinkInfo']]], + ['geterrmajor_19',['getErrMajor',['../class_high_five_1_1_exception.html#a9f29fccb5cbf3b5cb698cf7de68ba56c',1,'HighFive::Exception']]], + ['geterrminor_20',['getErrMinor',['../class_high_five_1_1_exception.html#ad19349814671c76249834ff802695145',1,'HighFive::Exception']]], + ['getestimatedlinkinfo_21',['getEstimatedLinkInfo',['../class_high_five_1_1_group.html#aeca9409bc3a21e9934728293bc24d960',1,'HighFive::Group']]], + ['getfile_22',['getFile',['../class_high_five_1_1_path_traits.html#a9d741a5f2d404314287b18b119136abf',1,'HighFive::PathTraits']]], + ['getfilesize_23',['getFileSize',['../class_high_five_1_1_file.html#a072b1759a2c8b033eea6d020a9ed1d08',1,'HighFive::File']]], + ['getflags_24',['getFlags',['../class_high_five_1_1_link_creation_order.html#ae4f83f749697446de9d56e593bc78a1a',1,'HighFive::LinkCreationOrder']]], + ['getfreespace_25',['getFreeSpace',['../class_high_five_1_1_file.html#a2cd2322084c2c60f5b07af3c3daf1c16',1,'HighFive::File']]], + ['getglobalcause_26',['getGlobalCause',['../class_high_five_1_1_mpio_no_collective_cause.html#a4b3a653e043b86ea0dfb3a7afdff2cb7',1,'HighFive::MpioNoCollectiveCause']]], + ['getgroup_27',['getGroup',['../class_high_five_1_1_node_traits.html#a286d9f9c2232c25abc5876bdc9d66edd',1,'HighFive::NodeTraits']]], + ['getid_28',['getId',['../class_high_five_1_1_object.html#a0efb623a7ceb36777ce81e215995a3bc',1,'HighFive::Object']]], + ['getinfo_29',['getInfo',['../class_high_five_1_1_object.html#a134549df53c4c0a04f728db983b2f947',1,'HighFive::Object']]], + ['getlinktype_30',['getLinkType',['../class_high_five_1_1_node_traits.html#aeab19b9f1fef90db036e1ea6238ef4eb',1,'HighFive::NodeTraits']]], + ['getlocalcause_31',['getLocalCause',['../class_high_five_1_1_mpio_no_collective_cause.html#affcbf437d343b3442cfda7da969f4d37',1,'HighFive::MpioNoCollectiveCause']]], + ['getmaxdimensions_32',['getMaxDimensions',['../class_high_five_1_1_data_space.html#a6563a285d1078bdff32e6662835e7a7b',1,'HighFive::DataSpace']]], + ['getmembers_33',['getMembers',['../class_high_five_1_1_compound_type.html#a771d62eb1c025b13c511de6959816d95',1,'HighFive::CompoundType']]], + ['getmemspace_34',['getmemspace',['../class_high_five_1_1_attribute.html#a9a4f37c223c52078d91c843f2ba6d994',1,'HighFive::Attribute::getMemSpace()'],['../class_high_five_1_1_selection.html#a0a1461d53a4d91d265a696a6da0fc57c',1,'HighFive::Selection::getMemSpace()'],['../class_high_five_1_1_data_set.html#a37f31fc5f14192b9a9fcdc7707e0ceee',1,'HighFive::DataSet::getMemSpace()']]], + ['getmetadatablocksize_35',['getMetadataBlockSize',['../class_high_five_1_1_file.html#a3e3772ae94caca4b2422b536a1cf2472',1,'HighFive::File']]], + ['getmodificationtime_36',['getModificationTime',['../class_high_five_1_1_object_info.html#ad9e7a6bfd1b5f046745fab423f40750e',1,'HighFive::ObjectInfo']]], + ['getname_37',['getname',['../class_high_five_1_1_attribute.html#a70021d5bf236c431d93013a4ae0ff910',1,'HighFive::Attribute::getName()'],['../class_high_five_1_1_file.html#af555f50958667264563b0cb17b8f902b',1,'HighFive::File::getName()']]], + ['getnamelength_38',['getNameLength',['../class_high_five_1_1_estimated_link_info.html#ab41597c8411f3a4023d82ebd1323a5f7',1,'HighFive::EstimatedLinkInfo']]], + ['getnumberattributes_39',['getNumberAttributes',['../class_high_five_1_1_annotate_traits.html#ae35a70acace4c47935400398d4671d69',1,'HighFive::AnnotateTraits']]], + ['getnumberdimensions_40',['getNumberDimensions',['../class_high_five_1_1_data_space.html#a53c27afc9308d2c44fa6d0e09f1ede9a',1,'HighFive::DataSpace']]], + ['getnumberobjects_41',['getNumberObjects',['../class_high_five_1_1_node_traits.html#ad90f036b55bd3e155c73ece61233210e',1,'HighFive::NodeTraits']]], + ['getnumslots_42',['getNumSlots',['../class_high_five_1_1_caching.html#a0de6bc2b09373107cd10a0fc6211d030',1,'HighFive::Caching']]], + ['getobjectname_43',['getObjectName',['../class_high_five_1_1_node_traits.html#ae10cb4bd9e20c651c136b284f3d8cd46',1,'HighFive::NodeTraits']]], + ['getobjecttype_44',['getObjectType',['../class_high_five_1_1_node_traits.html#abc2c385a18e2caaae71366139b57d8f2',1,'HighFive::NodeTraits']]], + ['getoffset_45',['getOffset',['../class_high_five_1_1_data_set.html#a662e1f9f8d9dfbbf02e135f6be2ee471',1,'HighFive::DataSet']]], + ['getoptionsmask_46',['getOptionsMask',['../class_high_five_1_1_szip.html#ae2a9cc8055aad910598e3f03c4bba3c0',1,'HighFive::Szip']]], + ['getpadding_47',['getPadding',['../class_high_five_1_1_string_type.html#a4f914467563cab045807517baee82c2d',1,'HighFive::StringType']]], + ['getpath_48',['getpath',['../class_high_five_1_1_path_traits.html#aca32b01b8c7eb54d398daeaac0b64399',1,'HighFive::PathTraits::getPath()'],['../class_high_five_1_1_file.html#af141a4c6c9fe058b121646b2079f2c6b',1,'HighFive::File::getPath()']]], + ['getpixelsperblock_49',['getPixelsPerBlock',['../class_high_five_1_1_szip.html#a9ad6b7b8022b89ac1a30bf2cfdbd7cf0',1,'HighFive::Szip']]], + ['getrefcount_50',['getRefCount',['../class_high_five_1_1_object_info.html#aa43efa7e90bebf6f39769d7cd56f8bbe',1,'HighFive::ObjectInfo']]], + ['getshape_51',['getShape',['../namespace_h5_easy.html#aa178d03fd7b8d435b5b41f613c1eaa8b',1,'H5Easy']]], + ['getsize_52',['getsize',['../class_high_five_1_1_metadata_block_size.html#aee2a49ebdc426f1794c154e3d1b2f871',1,'HighFive::MetadataBlockSize::getSize()'],['../namespace_h5_easy.html#a225c8cffbe78d15254ecde0c8a42958b',1,'H5Easy::getSize()'],['../class_high_five_1_1_data_type.html#a2658ec3c1c3c77dadeb0b1b053d3a7d3',1,'HighFive::DataType::getSize()']]], + ['getspace_53',['getspace',['../class_high_five_1_1_attribute.html#a4378b9e1603b22509c1495ac4362116d',1,'HighFive::Attribute::getSpace()'],['../class_high_five_1_1_selection.html#ae9f659387f72554c7747fc80ddfce280',1,'HighFive::Selection::getSpace()'],['../class_high_five_1_1_data_set.html#aa9405c8f1bdb72d28e971c8645fb47aa',1,'HighFive::DataSet::getSpace() const']]], + ['getstoragesize_54',['getstoragesize',['../class_high_five_1_1_data_set.html#a9f1da81f89bdaa08561fb35779586f64',1,'HighFive::DataSet::getStorageSize()'],['../class_high_five_1_1_attribute.html#ab2ab807ffa3fc8cb6d72ac7ab75a58f1',1,'HighFive::Attribute::getStorageSize()']]], + ['getstring_55',['getString',['../class_high_five_1_1_fixed_len_string_array.html#ab48dc990ff82ec16e859d0b822a1d8aa',1,'HighFive::FixedLenStringArray']]], + ['gettype_56',['gettype',['../class_high_five_1_1_object.html#a60a33f44d524aae5936131770811bd58',1,'HighFive::Object::getType()'],['../class_high_five_1_1_property_list.html#ac5be2be6430f56234db215589ebdee5e',1,'HighFive::PropertyList::getType()'],['../class_high_five_1_1_reference.html#ab5596af0210db020de67f3e04a22da31',1,'HighFive::Reference::getType()']]], + ['getversion_57',['getVersion',['../class_high_five_1_1_file_version_bounds.html#a6d55273a22fb8ecbba0079cc08ae9c79',1,'HighFive::FileVersionBounds']]], + ['getversionbounds_58',['getVersionBounds',['../class_high_five_1_1_file.html#a1c5b148c4e906bcde448b4eea1f66b91',1,'HighFive::File']]], + ['getw0_59',['getW0',['../class_high_five_1_1_caching.html#ae8777cc455ef27d20d44f9aea32720b7',1,'HighFive::Caching']]], + ['group_60',['group',['../class_high_five_1_1_group.html#a64f8b882c1f7844570be07bb7b012f04',1,'HighFive::Group::Group()=default'],['../class_high_five_1_1_group.html#aa5a251bd5db04d9f05b8c1df4c989b18',1,'HighFive::Group::Group(Object &&o) noexcept']]], + ['groupexception_61',['GroupException',['../class_high_five_1_1_group_exception.html#a3230fc495c7c0bbcab847dc12fbf09df',1,'HighFive::GroupException']]] +]; diff --git a/search/functions_8.js b/search/functions_8.js new file mode 100644 index 000000000..6c9c96dcc --- /dev/null +++ b/search/functions_8.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['hasattribute_0',['hasAttribute',['../class_high_five_1_1_annotate_traits.html#add90f8bddb79edc973aa70f967c92724',1,'HighFive::AnnotateTraits']]], + ['hyperslab_1',['hyperslab',['../class_high_five_1_1_hyper_slab.html#a906f51584d65e1b6fc777d4bc2022553',1,'HighFive::HyperSlab::HyperSlab()'],['../class_high_five_1_1_hyper_slab.html#adf8bf61c7a39ea30b73f0409c034e4aa',1,'HighFive::HyperSlab::HyperSlab(const RegularHyperSlab &sel)']]] +]; diff --git a/search/functions_9.js b/search/functions_9.js new file mode 100644 index 000000000..7c84fcd97 --- /dev/null +++ b/search/functions_9.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['ischunked_0',['isChunked',['../class_h5_easy_1_1_dump_options.html#a4329501c533ec014d987a202e09413c8',1,'H5Easy::DumpOptions']]], + ['iscollective_1',['iscollective',['../class_high_five_1_1_m_p_i_o_collective_metadata_read.html#a4265828f973406654c64a83469aac0c7',1,'HighFive::MPIOCollectiveMetadataRead::isCollective()'],['../class_high_five_1_1_m_p_i_o_collective_metadata_write.html#a15d145eb132a4009717cfde7a657c5e1',1,'HighFive::MPIOCollectiveMetadataWrite::isCollective()'],['../class_high_five_1_1_use_collective_i_o.html#a2c5a378080dd17e736bd0f6b0ae81e1c',1,'HighFive::UseCollectiveIO::isCollective()']]], + ['iscollectiveread_2',['isCollectiveRead',['../class_high_five_1_1_m_p_i_o_collective_metadata.html#af3ebb2ba4ab6fb2d662a0b2ba8090241',1,'HighFive::MPIOCollectiveMetadata']]], + ['iscollectivewrite_3',['isCollectiveWrite',['../class_high_five_1_1_m_p_i_o_collective_metadata.html#a9282c33bb738a814f8d33fdeecc12a5a',1,'HighFive::MPIOCollectiveMetadata']]], + ['isfixedlenstr_4',['isFixedLenStr',['../class_high_five_1_1_data_type.html#a0d74bf84217ed4b71818d53db9077d5f',1,'HighFive::DataType']]], + ['isreference_5',['isReference',['../class_high_five_1_1_data_type.html#a9c9656462b3b4442fd0a8ba7fb0ce93f',1,'HighFive::DataType']]], + ['isset_6',['isSet',['../class_high_five_1_1_create_intermediate_group.html#af4a9eb748f1c06199c9ad19daafd8632',1,'HighFive::CreateIntermediateGroup']]], + ['isvalid_7',['isValid',['../class_high_five_1_1_object.html#a7b4b75cd26da783a0ad21ca7f2a593d3',1,'HighFive::Object']]], + ['isvariablestr_8',['isVariableStr',['../class_high_five_1_1_data_type.html#a3f239e86eb8235d0cad445421f97af7c',1,'HighFive::DataType']]] +]; diff --git a/search/functions_a.js b/search/functions_a.js new file mode 100644 index 000000000..0da9445e7 --- /dev/null +++ b/search/functions_a.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['linkcreationorder_0',['linkcreationorder',['../class_high_five_1_1_link_creation_order.html#a5a0c8614e72358c1723153a06d2c11e6',1,'HighFive::LinkCreationOrder::LinkCreationOrder(unsigned flags)'],['../class_high_five_1_1_link_creation_order.html#aff78af3c9313f37f86bb9aa172440377',1,'HighFive::LinkCreationOrder::LinkCreationOrder(const FileCreateProps &fcpl)'],['../class_high_five_1_1_link_creation_order.html#a1048f06282af8a1a5441e359fc5944f3',1,'HighFive::LinkCreationOrder::LinkCreationOrder(const GroupCreateProps &gcpl)']]], + ['listattributenames_1',['listAttributeNames',['../class_high_five_1_1_annotate_traits.html#a4f19dffbf3bb1be6ba8279fb49917f22',1,'HighFive::AnnotateTraits']]], + ['listobjectnames_2',['listObjectNames',['../class_high_five_1_1_node_traits.html#a30bd43382f4e1f77bc6358ad5f7ed7ce',1,'HighFive::NodeTraits']]], + ['load_3',['load',['../namespace_h5_easy.html#a97ce3122b92fcf8322ed7e8c460c6862',1,'H5Easy::load(const File &file, const std::string &path, const std::vector< size_t > &idx)'],['../namespace_h5_easy.html#a35bd0e824fe3dca2e2d9f9b5e42a18aa',1,'H5Easy::load(const File &file, const std::string &path)']]], + ['loadattribute_4',['loadAttribute',['../namespace_h5_easy.html#a6dc2a2016da5196913ab7036700006fa',1,'H5Easy']]], + ['log_5',['log',['../class_high_five_1_1_logger.html#ae9138a12937186d1ebea1900a488b13c',1,'HighFive::Logger']]], + ['logger_6',['logger',['../class_high_five_1_1_logger.html#ac6a56a0dea78afb911374249840cc01a',1,'HighFive::Logger::Logger()=delete'],['../class_high_five_1_1_logger.html#a202182c21665e372d6e4585484fccae5',1,'HighFive::Logger::Logger(const Logger &)=delete'],['../class_high_five_1_1_logger.html#aac5d99393c23b4f206a743864e80f7c8',1,'HighFive::Logger::Logger(Logger &&)=delete'],['../class_high_five_1_1_logger.html#ac5aff73990e80aab9f83c798462115c3',1,'HighFive::Logger::Logger(callback_type cb)']]] +]; diff --git a/search/functions_b.js b/search/functions_b.js new file mode 100644 index 000000000..c41c35ed9 --- /dev/null +++ b/search/functions_b.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['max_5fcompact_0',['max_compact',['../class_high_five_1_1_attribute_phase_change.html#a4a01e8527aaecaffe2db1094f1e4b6c8',1,'HighFive::AttributePhaseChange']]], + ['member_5fdef_1',['member_def',['../struct_high_five_1_1_compound_type_1_1member__def.html#ac0c5ca4212cf886f498cfe79ff354e60',1,'HighFive::CompoundType::member_def::member_def()'],['../struct_high_five_1_1_enum_type_1_1member__def.html#aa666de7e76f872e2e392442c8e691bb3',1,'HighFive::EnumType::member_def::member_def()']]], + ['metadatablocksize_2',['metadatablocksize',['../class_high_five_1_1_metadata_block_size.html#a02efd5d5aa5311ecc74f44c4b8b82d78',1,'HighFive::MetadataBlockSize::MetadataBlockSize(hsize_t size)'],['../class_high_five_1_1_metadata_block_size.html#a23661a48122522263bd7f3ec3f245101',1,'HighFive::MetadataBlockSize::MetadataBlockSize(const FileAccessProps &fapl)']]], + ['min_5fdense_3',['min_dense',['../class_high_five_1_1_attribute_phase_change.html#aa40d91cf6907a2013573e691c96d1bc7',1,'HighFive::AttributePhaseChange']]], + ['mpiocollectivemetadata_4',['mpiocollectivemetadata',['../class_high_five_1_1_m_p_i_o_collective_metadata.html#aa273f14cc489a313724a59913bd8840d',1,'HighFive::MPIOCollectiveMetadata::MPIOCollectiveMetadata(bool collective=true)'],['../class_high_five_1_1_m_p_i_o_collective_metadata.html#a716e7e59938e1525153101fdfa034e69',1,'HighFive::MPIOCollectiveMetadata::MPIOCollectiveMetadata(const FileAccessProps &plist)']]], + ['mpiocollectivemetadataread_5',['mpiocollectivemetadataread',['../class_high_five_1_1_m_p_i_o_collective_metadata_read.html#af8ac47ce64a701baf44b64d667a856f5',1,'HighFive::MPIOCollectiveMetadataRead::MPIOCollectiveMetadataRead(bool collective=true)'],['../class_high_five_1_1_m_p_i_o_collective_metadata_read.html#ac2f4ca377bba5b754b234af54feef0fb',1,'HighFive::MPIOCollectiveMetadataRead::MPIOCollectiveMetadataRead(const FileAccessProps &plist)']]], + ['mpiocollectivemetadatawrite_6',['mpiocollectivemetadatawrite',['../class_high_five_1_1_m_p_i_o_collective_metadata_write.html#a46a964115d60428283787bba9a0e132c',1,'HighFive::MPIOCollectiveMetadataWrite::MPIOCollectiveMetadataWrite(bool collective=true)'],['../class_high_five_1_1_m_p_i_o_collective_metadata_write.html#ad06fd31a56e9437171af557649de8a2b',1,'HighFive::MPIOCollectiveMetadataWrite::MPIOCollectiveMetadataWrite(const FileAccessProps &plist)']]], + ['mpiofileaccess_7',['MPIOFileAccess',['../class_high_five_1_1_m_p_i_o_file_access.html#a45ed3e2138f4fcf8292a8f5bb01434c8',1,'HighFive::MPIOFileAccess']]], + ['mpiofiledriver_8',['MPIOFileDriver',['../class_high_five_1_1_m_p_i_o_file_driver.html#a4659563e3c44c0361429df270b03e778',1,'HighFive::MPIOFileDriver']]], + ['mpionocollectivecause_9',['MpioNoCollectiveCause',['../class_high_five_1_1_mpio_no_collective_cause.html#a902c6632085083f0404d1542a1c267ca',1,'HighFive::MpioNoCollectiveCause']]] +]; diff --git a/search/functions_c.js b/search/functions_c.js new file mode 100644 index 000000000..f103e39c8 --- /dev/null +++ b/search/functions_c.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['nextexception_0',['nextException',['../class_high_five_1_1_exception.html#a32badf84ecfcceb0eb6d54f6a33d0989',1,'HighFive::Exception']]], + ['nota_1',['notA',['../class_high_five_1_1_hyper_slab.html#a24205d10982c3affd39635caa090bf39',1,'HighFive::HyperSlab']]], + ['notb_2',['notB',['../class_high_five_1_1_hyper_slab.html#a429775b972d7d5eda1b4f6b63da982c8',1,'HighFive::HyperSlab']]] +]; diff --git a/search/functions_d.js b/search/functions_d.js new file mode 100644 index 000000000..05571cf34 --- /dev/null +++ b/search/functions_d.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['object_0',['object',['../class_high_five_1_1_object.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::Object::Object()'],['../class_high_five_1_1_group.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::Group::Object(hid_t)'],['../class_high_five_1_1_group.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::Group::Object(const Object &other)'],['../class_high_five_1_1_group.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::Group::Object()'],['../class_high_five_1_1_group.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::Group::Object(Object &&other) noexcept'],['../class_high_five_1_1_file.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::File::Object(hid_t)'],['../class_high_five_1_1_file.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::File::Object(const Object &other)'],['../class_high_five_1_1_file.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::File::Object()'],['../class_high_five_1_1_file.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::File::Object(Object &&other) noexcept'],['../class_high_five_1_1_data_type.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::DataType::Object(hid_t)'],['../class_high_five_1_1_data_type.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::DataType::Object(const Object &other)'],['../class_high_five_1_1_data_type.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::DataType::Object()'],['../class_high_five_1_1_data_set.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::DataSet::Object(hid_t)'],['../class_high_five_1_1_data_set.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::DataSet::Object(const Object &other)'],['../class_high_five_1_1_data_set.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::DataSet::Object()'],['../class_high_five_1_1_data_set.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::DataSet::Object(Object &&other) noexcept'],['../class_high_five_1_1_attribute.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::Attribute::Object(hid_t)'],['../class_high_five_1_1_attribute.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::Attribute::Object(const Object &other)'],['../class_high_five_1_1_attribute.html#a6bae41d04f273d04d2914406ab79da32',1,'HighFive::Attribute::Object()'],['../class_high_five_1_1_attribute.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::Attribute::Object(Object &&other) noexcept'],['../class_high_five_1_1_object.html#a9fe361bc0bd9662c1fd96a4a6ec1133a',1,'HighFive::Object::Object(hid_t)'],['../class_high_five_1_1_object.html#ab87ee7d5e2beee6a50d60dec20d3dfe5',1,'HighFive::Object::Object(const Object &other)'],['../class_high_five_1_1_object.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::Object::Object(Object &&other) noexcept'],['../class_high_five_1_1_data_type.html#aa42052fa5ec4ee691f6a7dd6467199f2',1,'HighFive::DataType::Object()']]], + ['objectexception_1',['ObjectException',['../class_high_five_1_1_object_exception.html#aa9d63e59797518ba24516336d562041e',1,'HighFive::ObjectException']]], + ['operator_21_3d_2',['operator!=',['../class_high_five_1_1_data_type.html#aba3b0bec1739ee7482a9d6f3c7464769',1,'HighFive::DataType']]], + ['operator_26_3',['operator&',['../class_high_five_1_1_hyper_slab.html#a4fbf1287c34074ca11b3da08c5d0e287',1,'HighFive::HyperSlab::operator&()'],['../namespace_high_five.html#ad11e24eec8492d0d2c977b58b1e64dbc',1,'HighFive::operator&()']]], + ['operator_26_3d_4',['operator&=',['../class_high_five_1_1_hyper_slab.html#a8be464e1993e66453881fe9adb1a0d72',1,'HighFive::HyperSlab']]], + ['operator_3d_5',['operator=',['../class_high_five_1_1_object.html#acbdb7087cba8bb804f7ec82c56c28ace',1,'HighFive::Object::operator=()'],['../class_high_five_1_1_logger.html#a3e8a6cd1370289fe31e268eeda19d271',1,'HighFive::Logger::operator=(const Logger &)=delete'],['../class_high_five_1_1_logger.html#ad1fea19d9a24a52b09c3bdaf4e8a4288',1,'HighFive::Logger::operator=(Logger &&)=delete']]], + ['operator_3d_3d_6',['operator==',['../class_high_five_1_1_data_type.html#a00fa13324f13dc81bf52b385fc9d852b',1,'HighFive::DataType::operator==()'],['../class_high_five_1_1_object.html#ad838f47662c1b9d240bd26d8710aa7d9',1,'HighFive::Object::operator==()']]], + ['operator_5b_5d_7',['operator[]',['../class_high_five_1_1_fixed_len_string_array.html#ab7a0a37fe3363d2c1d445910fe53703e',1,'HighFive::FixedLenStringArray']]], + ['operator_5e_8',['operator^',['../class_high_five_1_1_hyper_slab.html#a65b63a6b8ee96c0b3db1448f133d4208',1,'HighFive::HyperSlab']]], + ['operator_5e_3d_9',['operator^=',['../class_high_five_1_1_hyper_slab.html#ac18231b7d002a5497626d3cfe7f818e3',1,'HighFive::HyperSlab']]], + ['operator_7c_10',['operator|',['../class_high_five_1_1_hyper_slab.html#a7fc861f1f4042fae034b358e63e8db71',1,'HighFive::HyperSlab::operator|()'],['../namespace_high_five.html#a98688378bfbae23ab35a06c6916c5a44',1,'HighFive::operator|()']]], + ['operator_7c_3d_11',['operator|=',['../class_high_five_1_1_hyper_slab.html#afb1196fb8cfeaff643d4160046092ab6',1,'HighFive::HyperSlab']]], + ['overwrite_12',['overwrite',['../class_h5_easy_1_1_dump_options.html#ab573397c2a0abb1dc1b9a17db6c34eb1',1,'H5Easy::DumpOptions']]] +]; diff --git a/search/functions_e.js b/search/functions_e.js new file mode 100644 index 000000000..f4a5881da --- /dev/null +++ b/search/functions_e.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['packeddims_0',['packedDims',['../struct_high_five_1_1_regular_hyper_slab.html#a56c042691b496389564d108c64a9d872',1,'HighFive::RegularHyperSlab']]], + ['pathtraits_1',['PathTraits',['../class_high_five_1_1_path_traits.html#a49601ba2947e519784814a9d7a90f7f5',1,'HighFive::PathTraits']]], + ['propertyexception_2',['PropertyException',['../class_high_five_1_1_property_exception.html#a3b98bbf8140308b1b76305eb5fa86ba0',1,'HighFive::PropertyException']]], + ['propertylistbase_3',['PropertyListBase',['../class_high_five_1_1_property_list_base.html#a3dc12a0e8dc4dedbeea62b626d13e13a',1,'HighFive::PropertyListBase']]], + ['push_5fback_4',['push_back',['../class_high_five_1_1_fixed_len_string_array.html#ad19e9539073e41fafb9586df96294188',1,'HighFive::FixedLenStringArray::push_back(const std::string &)'],['../class_high_five_1_1_fixed_len_string_array.html#a65300a3e825a318af0f831297b544629',1,'HighFive::FixedLenStringArray::push_back(const std::array< char, N > &)']]] +]; diff --git a/search/functions_f.js b/search/functions_f.js new file mode 100644 index 000000000..0a5bf5f4f --- /dev/null +++ b/search/functions_f.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['rank_0',['rank',['../struct_high_five_1_1_regular_hyper_slab.html#a29438e89e9000502894ba22fa94e107c',1,'HighFive::RegularHyperSlab']]], + ['rbegin_1',['rbegin',['../class_high_five_1_1_fixed_len_string_array.html#a8c1a6768d29e8271552e2f6186387e58',1,'HighFive::FixedLenStringArray::rbegin() noexcept'],['../class_high_five_1_1_fixed_len_string_array.html#a3ca19a69a2f0fdc0b47a9053f1924c7b',1,'HighFive::FixedLenStringArray::rbegin() const noexcept']]], + ['read_2',['read',['../class_high_five_1_1_slice_traits.html#a1301abe3b9745470576986a1cbf7f0c9',1,'HighFive::SliceTraits::read(const DataTransferProps &xfer_props=DataTransferProps()) const'],['../class_high_five_1_1_slice_traits.html#af62a6a1f6c52da1c8ef501067ed948c8',1,'HighFive::SliceTraits::read(T &array, const DataTransferProps &xfer_props=DataTransferProps()) const'],['../class_high_five_1_1_slice_traits.html#a308151100e49985c077608619302c6c0',1,'HighFive::SliceTraits::read(T *array, const DataType &dtype, const DataTransferProps &xfer_props=DataTransferProps()) const'],['../class_high_five_1_1_slice_traits.html#a8c5a039f4728158ae7ea39b806660090',1,'HighFive::SliceTraits::read(T *array, const DataTransferProps &xfer_props=DataTransferProps()) const'],['../class_high_five_1_1_attribute.html#a8f6d88e6dadb8e4449fec558e5e0f7ca',1,'HighFive::Attribute::read() const'],['../class_high_five_1_1_attribute.html#ae97ab038f6c58bc0dd1ea498d8e609ce',1,'HighFive::Attribute::read(T &array) const'],['../class_high_five_1_1_attribute.html#acb44e6457df7e57040e39cd4373f9d84',1,'HighFive::Attribute::read(T *array, const DataType &mem_datatype) const'],['../class_high_five_1_1_attribute.html#aa2d0eb2629833a33f3e1a3fbfc1e9f55',1,'HighFive::Attribute::read(T *array) const']]], + ['reference_3',['reference',['../class_high_five_1_1_reference.html#a8130903e051ab98f6affbb36627bcfda',1,'HighFive::Reference::Reference()=default'],['../class_high_five_1_1_reference.html#a0eebda40272f370b15111fe2f88fd495',1,'HighFive::Reference::Reference(const hobj_ref_t h5_ref)'],['../class_high_five_1_1_reference.html#a68e53f37f2b5975e23e0fd78b57f0533',1,'HighFive::Reference::Reference(const Object &location, const Object &object)']]], + ['referenceexception_4',['ReferenceException',['../class_high_five_1_1_reference_exception.html#a345ca1ae87323f0e8af38a6e59921890',1,'HighFive::ReferenceException']]], + ['register_5flogging_5fcallback_5',['register_logging_callback',['../namespace_high_five.html#a4fc91cda37008aea40efbb20a39cf1c9',1,'HighFive']]], + ['regularhyperslab_6',['regularhyperslab',['../struct_high_five_1_1_regular_hyper_slab.html#ac55d435aad378ad692b811f65f7f8371',1,'HighFive::RegularHyperSlab::RegularHyperSlab()=default'],['../struct_high_five_1_1_regular_hyper_slab.html#aa83c2e83ada980b7a6b07f7f9a20a076',1,'HighFive::RegularHyperSlab::RegularHyperSlab(std::vector< size_t > offset_, std::vector< size_t > count_={}, std::vector< size_t > stride_={}, std::vector< size_t > block_={})']]], + ['rename_7',['rename',['../class_high_five_1_1_node_traits.html#a9732221be5949023649d2d5af9305a30',1,'HighFive::NodeTraits']]], + ['rend_8',['rend',['../class_high_five_1_1_fixed_len_string_array.html#a6947fd58b1ca1b33a3dc88f033f49bb0',1,'HighFive::FixedLenStringArray::rend() noexcept'],['../class_high_five_1_1_fixed_len_string_array.html#a10b20edebc19ebcc2742f4c27fb67a72',1,'HighFive::FixedLenStringArray::rend() const noexcept']]], + ['resize_9',['resize',['../class_high_five_1_1_data_set.html#a516b2f8f1e4ecca470d8c351749807e9',1,'HighFive::DataSet::resize()'],['../class_high_five_1_1_fixed_len_string_array.html#a87e51e420da9b9c061aaa57b3db0eb38',1,'HighFive::FixedLenStringArray::resize()']]] +]; diff --git a/search/groups_0.js b/search/groups_0.js new file mode 100644 index 000000000..c3e260c99 --- /dev/null +++ b/search/groups_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['lists_0',['Property Lists',['../group___property_lists.html',1,'']]] +]; diff --git a/search/groups_1.js b/search/groups_1.js new file mode 100644 index 000000000..b9ec09b72 --- /dev/null +++ b/search/groups_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['property_20lists_0',['Property Lists',['../group___property_lists.html',1,'']]] +]; diff --git a/search/mag.svg b/search/mag.svg new file mode 100644 index 000000000..ffb6cf0d0 --- /dev/null +++ b/search/mag.svg @@ -0,0 +1,24 @@ + + + + + + + diff --git a/search/mag_d.svg b/search/mag_d.svg new file mode 100644 index 000000000..4122773f9 --- /dev/null +++ b/search/mag_d.svg @@ -0,0 +1,24 @@ + + + + + + + diff --git a/search/mag_sel.svg b/search/mag_sel.svg new file mode 100644 index 000000000..553dba877 --- /dev/null +++ b/search/mag_sel.svg @@ -0,0 +1,31 @@ + + + + + + + + + diff --git a/search/mag_seld.svg b/search/mag_seld.svg new file mode 100644 index 000000000..c906f84c8 --- /dev/null +++ b/search/mag_seld.svg @@ -0,0 +1,31 @@ + + + + + + + + + diff --git a/search/namespaces_0.js b/search/namespaces_0.js new file mode 100644 index 000000000..30ba3034e --- /dev/null +++ b/search/namespaces_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['h5easy_0',['H5Easy',['../namespace_h5_easy.html',1,'']]], + ['highfive_1',['HighFive',['../namespace_high_five.html',1,'']]] +]; diff --git a/search/pages_0.js b/search/pages_0.js new file mode 100644 index 000000000..cc9aeea67 --- /dev/null +++ b/search/pages_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['beginners_20installation_20guide_20on_20linux_0',['Beginners Installation Guide on Linux',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html',1,'']]] +]; diff --git a/search/pages_1.js b/search/pages_1.js new file mode 100644 index 000000000..18eabe0fb --- /dev/null +++ b/search/pages_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['c_20library_0',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]], + ['changes_1',['Changes',['../md__2home_2runner_2work_2_high_five_2_high_five_2_c_h_a_n_g_e_l_o_g.html',1,'']]] +]; diff --git a/search/pages_2.js b/search/pages_2.js new file mode 100644 index 000000000..48cca4ab5 --- /dev/null +++ b/search/pages_2.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['deprecated_20list_0',['Deprecated List',['../deprecated.html',1,'']]], + ['developer_20guide_1',['Developer Guide',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2developer__guide.html',1,'']]] +]; diff --git a/search/pages_3.js b/search/pages_3.js new file mode 100644 index 000000000..dcc42a223 --- /dev/null +++ b/search/pages_3.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['guide_0',['Developer Guide',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2developer__guide.html',1,'']]], + ['guide_20on_20linux_1',['Beginners Installation Guide on Linux',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html',1,'']]] +]; diff --git a/search/pages_4.js b/search/pages_4.js new file mode 100644 index 000000000..36da0a6d1 --- /dev/null +++ b/search/pages_4.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['hdf5_20header_20only_20c_20library_0',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]], + ['header_20only_20c_20library_1',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]], + ['highfive_20hdf5_20header_20only_20c_20library_2',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]] +]; diff --git a/search/pages_5.js b/search/pages_5.js new file mode 100644 index 000000000..63ec6669f --- /dev/null +++ b/search/pages_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['installation_20guide_20on_20linux_0',['Beginners Installation Guide on Linux',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html',1,'']]] +]; diff --git a/search/pages_6.js b/search/pages_6.js new file mode 100644 index 000000000..81c723529 --- /dev/null +++ b/search/pages_6.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['library_0',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]], + ['linux_1',['Beginners Installation Guide on Linux',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html',1,'']]], + ['list_2',['Deprecated List',['../deprecated.html',1,'']]] +]; diff --git a/search/pages_7.js b/search/pages_7.js new file mode 100644 index 000000000..20c5f3b15 --- /dev/null +++ b/search/pages_7.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['on_20linux_0',['Beginners Installation Guide on Linux',['../md__2home_2runner_2work_2_high_five_2_high_five_2doc_2installation.html',1,'']]], + ['only_20c_20library_1',['HighFive - HDF5 header-only C++ Library',['../index.html',1,'']]] +]; diff --git a/search/related_0.js b/search/related_0.js new file mode 100644 index 000000000..f02f073b3 --- /dev/null +++ b/search/related_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['attribute_0',['attribute',['../class_high_five_1_1_data_space.html#abd4bab8f7ee748d7ea63f7f9b6248611',1,'HighFive::DataSpace::Attribute'],['../class_high_five_1_1_data_type.html#abd4bab8f7ee748d7ea63f7f9b6248611',1,'HighFive::DataType::Attribute']]] +]; diff --git a/search/related_1.js b/search/related_1.js new file mode 100644 index 000000000..951766857 --- /dev/null +++ b/search/related_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['compoundtype_0',['compoundtype',['../class_high_five_1_1_data_type.html#a9531936c7f60cc4739426e6a25f23e7e',1,'HighFive::DataType::CompoundType'],['../class_high_five_1_1_object.html#a9531936c7f60cc4739426e6a25f23e7e',1,'HighFive::Object::CompoundType']]] +]; diff --git a/search/related_2.js b/search/related_2.js new file mode 100644 index 000000000..3ac74772b --- /dev/null +++ b/search/related_2.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['dataset_0',['dataset',['../class_high_five_1_1_data_space.html#aef648af6c56fa8ee0738c93629e725dc',1,'HighFive::DataSpace::DataSet'],['../class_high_five_1_1_data_type.html#aef648af6c56fa8ee0738c93629e725dc',1,'HighFive::DataType::DataSet']]], + ['datatype_1',['DataType',['../class_high_five_1_1_string_type.html#a3891af67cf0b0e58640245a7ba31176f',1,'HighFive::StringType']]] +]; diff --git a/search/related_3.js b/search/related_3.js new file mode 100644 index 000000000..19566cb0b --- /dev/null +++ b/search/related_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['file_0',['file',['../class_high_five_1_1_data_space.html#a68d15876ad188b7628261b12d0eac8aa',1,'HighFive::DataSpace::File'],['../class_high_five_1_1_data_type.html#a68d15876ad188b7628261b12d0eac8aa',1,'HighFive::DataType::File'],['../class_high_five_1_1_group.html#a68d15876ad188b7628261b12d0eac8aa',1,'HighFive::Group::File']]] +]; diff --git a/search/related_4.js b/search/related_4.js new file mode 100644 index 000000000..f2d41a388 --- /dev/null +++ b/search/related_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hdf5errmapper_0',['HDF5ErrMapper',['../class_high_five_1_1_exception.html#a1f3f174381f90e2f63dc4dbd5eb62e52',1,'HighFive::Exception']]] +]; diff --git a/search/related_5.js b/search/related_5.js new file mode 100644 index 000000000..2751ccdc3 --- /dev/null +++ b/search/related_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['nodetraits_0',['nodetraits',['../class_high_five_1_1_data_set.html#a403d48867d005e936868de31b2281ae8',1,'HighFive::DataSet::NodeTraits'],['../class_high_five_1_1_data_type.html#a403d48867d005e936868de31b2281ae8',1,'HighFive::DataType::NodeTraits']]] +]; diff --git a/search/related_6.js b/search/related_6.js new file mode 100644 index 000000000..8fdb383f0 --- /dev/null +++ b/search/related_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['object_0',['Object',['../class_high_five_1_1_object_info.html#a0720b5f434e636e22a3ed34f847eec57',1,'HighFive::ObjectInfo']]] +]; diff --git a/search/related_7.js b/search/related_7.js new file mode 100644 index 000000000..623bfbe9c --- /dev/null +++ b/search/related_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['pathtraits_0',['PathTraits',['../class_high_five_1_1_file.html#a4fd65b8c85f680db6495b37b7a00594a',1,'HighFive::File']]] +]; diff --git a/search/related_8.js b/search/related_8.js new file mode 100644 index 000000000..2595387c0 --- /dev/null +++ b/search/related_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['reference_0',['reference',['../class_high_five_1_1_data_set.html#a75dfa92607f3d314070ecf242e028014',1,'HighFive::DataSet::Reference'],['../class_high_five_1_1_group.html#a75dfa92607f3d314070ecf242e028014',1,'HighFive::Group::Reference'],['../class_high_five_1_1_object.html#a75dfa92607f3d314070ecf242e028014',1,'HighFive::Object::Reference']]] +]; diff --git a/search/related_9.js b/search/related_9.js new file mode 100644 index 000000000..105dc7db9 --- /dev/null +++ b/search/related_9.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['slicetraits_0',['SliceTraits',['../class_high_five_1_1_element_set.html#addb06cbd22277a5199483352358a5e4f',1,'HighFive::ElementSet']]] +]; diff --git a/search/search.css b/search/search.css new file mode 100644 index 000000000..19f76f9d5 --- /dev/null +++ b/search/search.css @@ -0,0 +1,291 @@ +/*---------------- Search Box positioning */ + +#main-menu > li:last-child { + /* This
  • object is the parent of the search bar */ + display: flex; + justify-content: center; + align-items: center; + height: 36px; + margin-right: 1em; +} + +/*---------------- Search box styling */ + +.SRPage * { + font-weight: normal; + line-height: normal; +} + +dark-mode-toggle { + margin-left: 5px; + display: flex; + float: right; +} + +#MSearchBox { + display: inline-block; + white-space : nowrap; + background: var(--search-background-color); + border-radius: 0.65em; + box-shadow: var(--search-box-shadow); + z-index: 102; +} + +#MSearchBox .left { + display: inline-block; + vertical-align: middle; + height: 1.4em; +} + +#MSearchSelect { + display: inline-block; + vertical-align: middle; + width: 20px; + height: 19px; + background-image: var(--search-magnification-select-image); + margin: 0 0 0 0.3em; + padding: 0; +} + +#MSearchSelectExt { + display: inline-block; + vertical-align: middle; + width: 10px; + height: 19px; + background-image: var(--search-magnification-image); + margin: 0 0 0 0.5em; + padding: 0; +} + + +#MSearchField { + display: inline-block; + vertical-align: middle; + width: 7.5em; + height: 19px; + margin: 0 0.15em; + padding: 0; + line-height: 1em; + border:none; + color: var(--search-foreground-color); + outline: none; + font-family: var(--font-family-search); + -webkit-border-radius: 0px; + border-radius: 0px; + background: none; +} + +@media(hover: none) { + /* to avoid zooming on iOS */ + #MSearchField { + font-size: 16px; + } +} + +#MSearchBox .right { + display: inline-block; + vertical-align: middle; + width: 1.4em; + height: 1.4em; +} + +#MSearchClose { + display: none; + font-size: inherit; + background : none; + border: none; + margin: 0; + padding: 0; + outline: none; + +} + +#MSearchCloseImg { + padding: 0.3em; + margin: 0; +} + +.MSearchBoxActive #MSearchField { + color: var(--search-active-color); +} + + + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid var(--search-filter-border-color); + background-color: var(--search-filter-background-color); + z-index: 10001; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt var(--font-family-search); + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: var(--font-family-monospace); + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: var(--search-filter-foreground-color); + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: var(--search-filter-foreground-color); + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: var(--search-filter-highlight-text-color); + background-color: var(--search-filter-highlight-bg-color); + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + /*width: 60ex;*/ + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid var(--search-results-border-color); + background-color: var(--search-results-background-color); + z-index:10000; + width: 300px; + height: 400px; + overflow: auto; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +div.SRPage { + margin: 5px 2px; + background-color: var(--search-results-background-color); +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: var(--search-results-foreground-color); + font-family: var(--font-family-search); + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: var(--search-results-foreground-color); + font-family: var(--font-family-search); + font-size: 8pt; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; + font-family: var(--font-family-search); +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; + font-family: var(--font-family-search); +} + +.SRResult { + display: none; +} + +div.searchresults { + margin-left: 10px; + margin-right: 10px; +} + +/*---------------- External search page results */ + +.pages b { + color: white; + padding: 5px 5px 3px 5px; + background-image: var(--nav-gradient-active-image-parent); + background-repeat: repeat-x; + text-shadow: 0 1px 1px #000000; +} + +.pages { + line-height: 17px; + margin-left: 4px; + text-decoration: none; +} + +.hl { + font-weight: bold; +} + +#searchresults { + margin-bottom: 20px; +} + +.searchpages { + margin-top: 10px; +} + diff --git a/search/search.js b/search/search.js new file mode 100644 index 000000000..6fd40c677 --- /dev/null +++ b/search/search.js @@ -0,0 +1,840 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + e.stopPropagation(); + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var idxChar = searchValue.substr(0, 1).toLowerCase(); + if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair + { + idxChar = searchValue.substr(0, 2); + } + + var jsFile; + + var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); + if (idx!=-1) + { + var hexCode=idx.toString(16); + jsFile = this.resultsPath + indexSectionNames[this.searchIndex] + '_' + hexCode + '.js'; + } + + var loadJS = function(url, impl, loc){ + var scriptTag = document.createElement('script'); + scriptTag.src = url; + scriptTag.onload = impl; + scriptTag.onreadystatechange = impl; + loc.appendChild(scriptTag); + } + + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + var domSearchBox = this.DOMSearchBox(); + var domPopupSearchResults = this.DOMPopupSearchResults(); + var domSearchClose = this.DOMSearchClose(); + var resultsPath = this.resultsPath; + + var handleResults = function() { + document.getElementById("Loading").style.display="none"; + if (typeof searchData !== 'undefined') { + createResults(resultsPath); + document.getElementById("NoMatches").style.display="none"; + } + + if (idx!=-1) { + searchResults.Search(searchValue); + } else { // no file with search results => force empty search results + searchResults.Search('===='); + } + + if (domPopupSearchResultsWindow.style.display!='block') + { + domSearchClose.style.display = 'inline-block'; + var left = getXPos(domSearchBox) + 150; + var top = getYPos(domSearchBox) + 20; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + var maxWidth = document.body.clientWidth; + var maxHeight = document.body.clientHeight; + var width = 300; + if (left<10) left=10; + if (width+left+8>maxWidth) width=maxWidth-left-8; + var height = 400; + if (height+top+8>maxHeight) height=maxHeight-top-8; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResultsWindow.style.height = height + 'px'; + } + } + + if (jsFile) { + loadJS(jsFile, handleResults, this.DOMPopupSearchResultsWindow()); + } else { + handleResults(); + } + + this.lastSearchValue = searchValue; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + this.searchActive = true; + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + this.DOMSearchField().value = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName.toLowerCase() == 'div' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName.toLowerCase() == 'div' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + e.stopPropagation(); + searchBox.CloseResultsWindow(); + document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + e.stopPropagation(); + searchBox.CloseResultsWindow(); + document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults(resultsPath) +{ + var results = document.getElementById("SRResults"); + results.innerHTML = ''; + for (var e=0; e + + + + + + +HighFive: highfive/bits/string_padding.hpp File Reference + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    + +
    string_padding.hpp File Reference
    +
    +
    +
    #include <H5Tpublic.h>
    +
    +Include dependency graph for string_padding.hpp:
    +
    +
    + + + + + +
    +
    +This graph shows which files directly or indirectly include this file:
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    +
    +

    Go to the source code of this file.

    + + + + +

    +Namespaces

    namespace  HighFive
     
    + + + +

    +Enumerations

    enum class  HighFive::StringPadding : std::underlying_type< H5T_str_t >::type { HighFive::NullTerminated = H5T_STR_NULLTERM +, HighFive::NullPadded = H5T_STR_NULLPAD +, HighFive::SpacePadded = H5T_STR_SPACEPAD + }
     
    +
    +
    + + + + diff --git a/string__padding_8hpp.js b/string__padding_8hpp.js new file mode 100644 index 000000000..e5bfbdf4a --- /dev/null +++ b/string__padding_8hpp.js @@ -0,0 +1,8 @@ +var string__padding_8hpp = +[ + [ "StringPadding", "string__padding_8hpp.html#ad9265809238043adba9b446b5c61e953", [ + [ "NullTerminated", "string__padding_8hpp.html#ad9265809238043adba9b446b5c61e953ab90111c75972f26b57ab364724b34921", null ], + [ "NullPadded", "string__padding_8hpp.html#ad9265809238043adba9b446b5c61e953a5b56f95d458ea27c9c62e62260bbef81", null ], + [ "SpacePadded", "string__padding_8hpp.html#ad9265809238043adba9b446b5c61e953a4ca955dd1a77b70b5a0a28512c0e5f24", null ] + ] ] +]; \ No newline at end of file diff --git a/string__padding_8hpp__dep__incl.map b/string__padding_8hpp__dep__incl.map new file mode 100644 index 000000000..c188fad54 --- /dev/null +++ b/string__padding_8hpp__dep__incl.map @@ -0,0 +1,90 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/string__padding_8hpp__dep__incl.md5 b/string__padding_8hpp__dep__incl.md5 new file mode 100644 index 000000000..6e3ef95e3 --- /dev/null +++ b/string__padding_8hpp__dep__incl.md5 @@ -0,0 +1 @@ +076c5f2432650e7de66e414f98449fe0 \ No newline at end of file diff --git a/string__padding_8hpp__dep__incl.png b/string__padding_8hpp__dep__incl.png new file mode 100644 index 000000000..1e2c51c6e Binary files /dev/null and b/string__padding_8hpp__dep__incl.png differ diff --git a/string__padding_8hpp__incl.map b/string__padding_8hpp__incl.map new file mode 100644 index 000000000..57fbe2776 --- /dev/null +++ b/string__padding_8hpp__incl.map @@ -0,0 +1,5 @@ + + + + + diff --git a/string__padding_8hpp__incl.md5 b/string__padding_8hpp__incl.md5 new file mode 100644 index 000000000..cd40aa219 --- /dev/null +++ b/string__padding_8hpp__incl.md5 @@ -0,0 +1 @@ +057b64644d4a53bb63c700fe5b734765 \ No newline at end of file diff --git a/string__padding_8hpp__incl.png b/string__padding_8hpp__incl.png new file mode 100644 index 000000000..5f88d591c Binary files /dev/null and b/string__padding_8hpp__incl.png differ diff --git a/string__padding_8hpp_source.html b/string__padding_8hpp_source.html new file mode 100644 index 000000000..166522a29 --- /dev/null +++ b/string__padding_8hpp_source.html @@ -0,0 +1,133 @@ + + + + + + + +HighFive: highfive/bits/string_padding.hpp Source File + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    string_padding.hpp
    +
    +
    +Go to the documentation of this file.
    1#pragma once
    +
    2
    +
    3#include <H5Tpublic.h>
    +
    4
    +
    5namespace HighFive {
    +
    6
    +
    +
    7enum class StringPadding : std::underlying_type<H5T_str_t>::type {
    +
    8 NullTerminated = H5T_STR_NULLTERM,
    +
    9 NullPadded = H5T_STR_NULLPAD,
    +
    10 SpacePadded = H5T_STR_SPACEPAD
    +
    11};
    +
    +
    12
    +
    13
    +
    14}
    +
    Definition H5_definitions.hpp:15
    +
    StringPadding
    Definition string_padding.hpp:7
    + + + +
    +
    + + + + diff --git a/struct_high_five_1_1_compound_type_1_1member__def-members.html b/struct_high_five_1_1_compound_type_1_1member__def-members.html new file mode 100644 index 000000000..748c519ee --- /dev/null +++ b/struct_high_five_1_1_compound_type_1_1member__def-members.html @@ -0,0 +1,113 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    HighFive::CompoundType::member_def Member List
    +
    +
    + +

    This is the complete list of members for HighFive::CompoundType::member_def, including all inherited members.

    + + + + + +
    base_typeHighFive::CompoundType::member_def
    member_def(std::string t_name, DataType t_base_type, size_t t_offset=0)HighFive::CompoundType::member_definline
    nameHighFive::CompoundType::member_def
    offsetHighFive::CompoundType::member_def
    +
    + + + + diff --git a/struct_high_five_1_1_compound_type_1_1member__def.html b/struct_high_five_1_1_compound_type_1_1member__def.html new file mode 100644 index 000000000..e30e30179 --- /dev/null +++ b/struct_high_five_1_1_compound_type_1_1member__def.html @@ -0,0 +1,234 @@ + + + + + + + +HighFive: HighFive::CompoundType::member_def Struct Reference + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    + +
    HighFive::CompoundType::member_def Struct Reference
    +
    +
    + +

    Use for defining a sub-type of compound type. + More...

    + +

    #include <H5DataType.hpp>

    +
    +Collaboration diagram for HighFive::CompoundType::member_def:
    +
    +
    Collaboration graph
    + + + + + + + +
    [legend]
    + + + + +

    +Public Member Functions

     member_def (std::string t_name, DataType t_base_type, size_t t_offset=0)
     
    + + + + + + + +

    +Public Attributes

    std::string name
     
    DataType base_type
     
    size_t offset
     
    +

    Detailed Description

    +

    Use for defining a sub-type of compound type.

    +

    Constructor & Destructor Documentation

    + +

    ◆ member_def()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    HighFive::CompoundType::member_def::member_def (std::string t_name,
    DataType t_base_type,
    size_t t_offset = 0 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Data Documentation

    + +

    ◆ base_type

    + +
    +
    + + + + +
    DataType HighFive::CompoundType::member_def::base_type
    +
    + +
    +
    + +

    ◆ name

    + +
    +
    + + + + +
    std::string HighFive::CompoundType::member_def::name
    +
    + +
    +
    + +

    ◆ offset

    + +
    +
    + + + + +
    size_t HighFive::CompoundType::member_def::offset
    +
    + +
    +
    +
    The documentation for this struct was generated from the following file: +
    +
    + + + + diff --git a/struct_high_five_1_1_compound_type_1_1member__def.js b/struct_high_five_1_1_compound_type_1_1member__def.js new file mode 100644 index 000000000..07d2440ee --- /dev/null +++ b/struct_high_five_1_1_compound_type_1_1member__def.js @@ -0,0 +1,7 @@ +var struct_high_five_1_1_compound_type_1_1member__def = +[ + [ "member_def", "struct_high_five_1_1_compound_type_1_1member__def.html#ac0c5ca4212cf886f498cfe79ff354e60", null ], + [ "base_type", "struct_high_five_1_1_compound_type_1_1member__def.html#ac5ec615c6b321e2bcab9737a944b45ef", null ], + [ "name", "struct_high_five_1_1_compound_type_1_1member__def.html#acb6e9a26ac277ef27b1a37ee2785a309", null ], + [ "offset", "struct_high_five_1_1_compound_type_1_1member__def.html#a7fe8f7fc11e223445033f75b25435612", null ] +]; \ No newline at end of file diff --git a/struct_high_five_1_1_compound_type_1_1member__def__coll__graph.map b/struct_high_five_1_1_compound_type_1_1member__def__coll__graph.map new file mode 100644 index 000000000..ea0114c6e --- /dev/null +++ b/struct_high_five_1_1_compound_type_1_1member__def__coll__graph.map @@ -0,0 +1,7 @@ + + + + + + + diff --git a/struct_high_five_1_1_compound_type_1_1member__def__coll__graph.md5 b/struct_high_five_1_1_compound_type_1_1member__def__coll__graph.md5 new file mode 100644 index 000000000..fd9017169 --- /dev/null +++ b/struct_high_five_1_1_compound_type_1_1member__def__coll__graph.md5 @@ -0,0 +1 @@ +f3a8bcc9ec912d6df93e2b29ff7a338f \ No newline at end of file diff --git a/struct_high_five_1_1_compound_type_1_1member__def__coll__graph.png b/struct_high_five_1_1_compound_type_1_1member__def__coll__graph.png new file mode 100644 index 000000000..02c3427f9 Binary files /dev/null and b/struct_high_five_1_1_compound_type_1_1member__def__coll__graph.png differ diff --git a/struct_high_five_1_1_creation_order-members.html b/struct_high_five_1_1_creation_order-members.html new file mode 100644 index 000000000..989e0d4a1 --- /dev/null +++ b/struct_high_five_1_1_creation_order-members.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    HighFive::CreationOrder Member List
    +
    +
    + +

    This is the complete list of members for HighFive::CreationOrder, including all inherited members.

    + + + + +
    _CreationOrder enum nameHighFive::CreationOrder
    Indexed enum valueHighFive::CreationOrder
    Tracked enum valueHighFive::CreationOrder
    +
    + + + + diff --git a/struct_high_five_1_1_creation_order.html b/struct_high_five_1_1_creation_order.html new file mode 100644 index 000000000..d1f421d16 --- /dev/null +++ b/struct_high_five_1_1_creation_order.html @@ -0,0 +1,142 @@ + + + + + + + +HighFive: HighFive::CreationOrder Struct Reference + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    + +
    HighFive::CreationOrder Struct Reference
    +
    +
    + +

    #include <H5PropertyList.hpp>

    + + + + +

    +Public Types

    enum  _CreationOrder { Tracked = H5P_CRT_ORDER_TRACKED +, Indexed = H5P_CRT_ORDER_INDEXED + }
     
    +

    Member Enumeration Documentation

    + +

    ◆ _CreationOrder

    + +
    +
    + + + +
    Enumerator
    Tracked 
    Indexed 
    + +
    +
    +
    The documentation for this struct was generated from the following file: +
    +
    + + + + diff --git a/struct_high_five_1_1_creation_order.js b/struct_high_five_1_1_creation_order.js new file mode 100644 index 000000000..fde76ae02 --- /dev/null +++ b/struct_high_five_1_1_creation_order.js @@ -0,0 +1,7 @@ +var struct_high_five_1_1_creation_order = +[ + [ "_CreationOrder", "struct_high_five_1_1_creation_order.html#aaaeb7940131b73a9385f499e08d2c0df", [ + [ "Tracked", "struct_high_five_1_1_creation_order.html#aaaeb7940131b73a9385f499e08d2c0dfa63264d38eb4b2f184d68299f689e78b8", null ], + [ "Indexed", "struct_high_five_1_1_creation_order.html#aaaeb7940131b73a9385f499e08d2c0dfaaa056e331f82016fbdf6dc751bd97ff6", null ] + ] ] +]; \ No newline at end of file diff --git a/struct_high_five_1_1_enum_type_1_1member__def-members.html b/struct_high_five_1_1_enum_type_1_1member__def-members.html new file mode 100644 index 000000000..bbbc45793 --- /dev/null +++ b/struct_high_five_1_1_enum_type_1_1member__def-members.html @@ -0,0 +1,112 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    HighFive::EnumType< T >::member_def Member List
    +
    +
    + +

    This is the complete list of members for HighFive::EnumType< T >::member_def, including all inherited members.

    + + + + +
    member_def(const std::string &t_name, T t_value)HighFive::EnumType< T >::member_definline
    nameHighFive::EnumType< T >::member_def
    valueHighFive::EnumType< T >::member_def
    +
    + + + + diff --git a/struct_high_five_1_1_enum_type_1_1member__def.html b/struct_high_five_1_1_enum_type_1_1member__def.html new file mode 100644 index 000000000..ce8b25b31 --- /dev/null +++ b/struct_high_five_1_1_enum_type_1_1member__def.html @@ -0,0 +1,207 @@ + + + + + + + +HighFive: HighFive::EnumType< T >::member_def Struct Reference + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    + +
    HighFive::EnumType< T >::member_def Struct Reference
    +
    +
    + +

    Use for defining a member of enum type. + More...

    + +

    #include <H5DataType.hpp>

    + + + + +

    +Public Member Functions

     member_def (const std::string &t_name, T t_value)
     
    + + + + + +

    +Public Attributes

    std::string name
     
    value
     
    +

    Detailed Description

    +
    template<typename T>
    +struct HighFive::EnumType< T >::member_def

    Use for defining a member of enum type.

    +

    Constructor & Destructor Documentation

    + +

    ◆ member_def()

    + +
    +
    +
    +template<typename T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    HighFive::EnumType< T >::member_def::member_def (const std::string & t_name,
    t_value 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Data Documentation

    + +

    ◆ name

    + +
    +
    +
    +template<typename T >
    + + + + +
    std::string HighFive::EnumType< T >::member_def::name
    +
    + +
    +
    + +

    ◆ value

    + +
    +
    +
    +template<typename T >
    + + + + +
    T HighFive::EnumType< T >::member_def::value
    +
    + +
    +
    +
    The documentation for this struct was generated from the following file: +
    +
    + + + + diff --git a/struct_high_five_1_1_enum_type_1_1member__def.js b/struct_high_five_1_1_enum_type_1_1member__def.js new file mode 100644 index 000000000..f86294b8d --- /dev/null +++ b/struct_high_five_1_1_enum_type_1_1member__def.js @@ -0,0 +1,6 @@ +var struct_high_five_1_1_enum_type_1_1member__def = +[ + [ "member_def", "struct_high_five_1_1_enum_type_1_1member__def.html#aa666de7e76f872e2e392442c8e691bb3", null ], + [ "name", "struct_high_five_1_1_enum_type_1_1member__def.html#a826971206409ca4fdcc481765ccf3999", null ], + [ "value", "struct_high_five_1_1_enum_type_1_1member__def.html#a08173394e258379cd6d223d302ff73ce", null ] +]; \ No newline at end of file diff --git a/struct_high_five_1_1_h_d_f5_err_mapper-members.html b/struct_high_five_1_1_h_d_f5_err_mapper-members.html new file mode 100644 index 000000000..dd8350c06 --- /dev/null +++ b/struct_high_five_1_1_h_d_f5_err_mapper-members.html @@ -0,0 +1,111 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    HighFive::HDF5ErrMapper Member List
    +
    +
    + +

    This is the complete list of members for HighFive::HDF5ErrMapper, including all inherited members.

    + + + +
    stackWalk(unsigned n, const H5E_error2_t *err_desc, void *client_data)HighFive::HDF5ErrMapperinlinestatic
    ToException(const std::string &prefix_msg)HighFive::HDF5ErrMapperinlinestatic
    +
    + + + + diff --git a/struct_high_five_1_1_h_d_f5_err_mapper.html b/struct_high_five_1_1_h_d_f5_err_mapper.html new file mode 100644 index 000000000..74af086a6 --- /dev/null +++ b/struct_high_five_1_1_h_d_f5_err_mapper.html @@ -0,0 +1,198 @@ + + + + + + + +HighFive: HighFive::HDF5ErrMapper Struct Reference + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    + +
    HighFive::HDF5ErrMapper Struct Reference
    +
    +
    + +

    #include <H5Exception_misc.hpp>

    + + + + + + + + +

    +Static Public Member Functions

    template<typename ExceptionType >
    static herr_t stackWalk (unsigned n, const H5E_error2_t *err_desc, void *client_data)
     
    template<typename ExceptionType >
    static void ToException (const std::string &prefix_msg)
     
    +

    Member Function Documentation

    + +

    ◆ stackWalk()

    + +
    +
    +
    +template<typename ExceptionType >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    static herr_t HighFive::HDF5ErrMapper::stackWalk (unsigned n,
    const H5E_error2_terr_desc,
    voidclient_data 
    )
    +
    +inlinestatic
    +
    + +
    +
    + +

    ◆ ToException()

    + +
    +
    +
    +template<typename ExceptionType >
    + + + + + +
    + + + + + + + + +
    static void HighFive::HDF5ErrMapper::ToException (const std::string & prefix_msg)
    +
    +inlinestatic
    +
    + +
    +
    +
    The documentation for this struct was generated from the following file: +
    +
    + + + + diff --git a/struct_high_five_1_1_regular_hyper_slab-members.html b/struct_high_five_1_1_regular_hyper_slab-members.html new file mode 100644 index 000000000..9637cd35c --- /dev/null +++ b/struct_high_five_1_1_regular_hyper_slab-members.html @@ -0,0 +1,118 @@ + + + + + + + +HighFive: Member List + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    +
    HighFive::RegularHyperSlab Member List
    +
    +
    + +

    This is the complete list of members for HighFive::RegularHyperSlab, including all inherited members.

    + + + + + + + + + + +
    blockHighFive::RegularHyperSlab
    countHighFive::RegularHyperSlab
    fromHDF5Sizes(std::vector< hsize_t > offset_, std::vector< hsize_t > count_={}, std::vector< hsize_t > stride_={}, std::vector< hsize_t > block_={})HighFive::RegularHyperSlabinlinestatic
    offsetHighFive::RegularHyperSlab
    packedDims() constHighFive::RegularHyperSlabinline
    rank() constHighFive::RegularHyperSlabinline
    RegularHyperSlab()=defaultHighFive::RegularHyperSlab
    RegularHyperSlab(std::vector< size_t > offset_, std::vector< size_t > count_={}, std::vector< size_t > stride_={}, std::vector< size_t > block_={})HighFive::RegularHyperSlabinline
    strideHighFive::RegularHyperSlab
    +
    + + + + diff --git a/struct_high_five_1_1_regular_hyper_slab.html b/struct_high_five_1_1_regular_hyper_slab.html new file mode 100644 index 000000000..0b5f24c43 --- /dev/null +++ b/struct_high_five_1_1_regular_hyper_slab.html @@ -0,0 +1,378 @@ + + + + + + + +HighFive: HighFive::RegularHyperSlab Struct Reference + + + + + + + + + + + + + + +
    +
    + + + + + + +
    +
    HighFive 2.8.0 +
    +
    HighFive - Header-only C++ HDF5 interface
    +
    +
    + + + + + + + +
    +
    + +
    +
    +
    + +
    + +
    +
    + + +
    +
    +
    +
    +
    +
    Loading...
    +
    Searching...
    +
    No Matches
    +
    +
    +
    +
    + +
    + +
    HighFive::RegularHyperSlab Struct Reference
    +
    +
    + +

    #include <H5Slice_traits.hpp>

    + + + + + + + + + + + +

    +Public Member Functions

     RegularHyperSlab ()=default
     
     RegularHyperSlab (std::vector< size_t > offset_, std::vector< size_t > count_={}, std::vector< size_t > stride_={}, std::vector< size_t > block_={})
     
    size_t rank () const
     
    std::vector< size_t > packedDims () const
     Dimensions when all gaps are removed.
     
    + + + +

    +Static Public Member Functions

    static RegularHyperSlab fromHDF5Sizes (std::vector< hsize_t > offset_, std::vector< hsize_t > count_={}, std::vector< hsize_t > stride_={}, std::vector< hsize_t > block_={})
     
    + + + + + + + + + +

    +Public Attributes

    std::vector< hsize_t > offset
     
    std::vector< hsize_t > count
     
    std::vector< hsize_t > stride
     
    std::vector< hsize_t > block
     
    +

    Constructor & Destructor Documentation

    + +

    ◆ RegularHyperSlab() [1/2]

    + +
    +
    + + + + + +
    + + + + + + + +
    HighFive::RegularHyperSlab::RegularHyperSlab ()
    +
    +default
    +
    + +
    +
    + +

    ◆ RegularHyperSlab() [2/2]

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    HighFive::RegularHyperSlab::RegularHyperSlab (std::vector< size_t > offset_,
    std::vector< size_t > count_ = {},
    std::vector< size_t > stride_ = {},
    std::vector< size_t > block_ = {} 
    )
    +
    +inline
    +
    + +
    +
    +

    Member Function Documentation

    + +

    ◆ fromHDF5Sizes()

    + +
    +
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    static RegularHyperSlab HighFive::RegularHyperSlab::fromHDF5Sizes (std::vector< hsize_t > offset_,
    std::vector< hsize_t > count_ = {},
    std::vector< hsize_t > stride_ = {},
    std::vector< hsize_t > block_ = {} 
    )
    +
    +inlinestatic
    +
    + +
    +
    + +

    ◆ packedDims()

    + +
    +
    + + + + + +
    + + + + + + + +
    std::vector< size_t > HighFive::RegularHyperSlab::packedDims () const
    +
    +inline
    +
    + +

    Dimensions when all gaps are removed.

    + +
    +
    + +

    ◆ rank()

    + +
    +
    + + + + + +
    + + + + + + + +
    size_t HighFive::RegularHyperSlab::rank () const
    +
    +inline
    +
    + +
    +
    +

    Member Data Documentation

    + +

    ◆ block

    + +
    +
    + + + + +
    std::vector<hsize_t> HighFive::RegularHyperSlab::block
    +
    + +
    +
    + +

    ◆ count

    + +
    +
    + + + + +
    std::vector<hsize_t> HighFive::RegularHyperSlab::count
    +
    + +
    +
    + +

    ◆ offset

    + +
    +
    + + + + +
    std::vector<hsize_t> HighFive::RegularHyperSlab::offset
    +
    + +
    +
    + +

    ◆ stride

    + +
    +
    + + + + +
    std::vector<hsize_t> HighFive::RegularHyperSlab::stride
    +
    + +
    +
    +
    The documentation for this struct was generated from the following file: +
    +
    + + + + diff --git a/struct_high_five_1_1_regular_hyper_slab.js b/struct_high_five_1_1_regular_hyper_slab.js new file mode 100644 index 000000000..59edeb87e --- /dev/null +++ b/struct_high_five_1_1_regular_hyper_slab.js @@ -0,0 +1,11 @@ +var struct_high_five_1_1_regular_hyper_slab = +[ + [ "RegularHyperSlab", "struct_high_five_1_1_regular_hyper_slab.html#ac55d435aad378ad692b811f65f7f8371", null ], + [ "RegularHyperSlab", "struct_high_five_1_1_regular_hyper_slab.html#aa83c2e83ada980b7a6b07f7f9a20a076", null ], + [ "packedDims", "struct_high_five_1_1_regular_hyper_slab.html#a56c042691b496389564d108c64a9d872", null ], + [ "rank", "struct_high_five_1_1_regular_hyper_slab.html#a29438e89e9000502894ba22fa94e107c", null ], + [ "block", "struct_high_five_1_1_regular_hyper_slab.html#a3cdc12f6910add0f049e672d115d3097", null ], + [ "count", "struct_high_five_1_1_regular_hyper_slab.html#ad1e6e23554a49dfabf633fd7a928cbb8", null ], + [ "offset", "struct_high_five_1_1_regular_hyper_slab.html#a2c7170af12dae359fb3eaffe6950d516", null ], + [ "stride", "struct_high_five_1_1_regular_hyper_slab.html#afee214170da6b05c0b08727664c599e6", null ] +]; \ No newline at end of file diff --git a/sync_off.png b/sync_off.png new file mode 100644 index 000000000..3b443fc62 Binary files /dev/null and b/sync_off.png differ diff --git a/sync_on.png b/sync_on.png new file mode 100644 index 000000000..e08320fb6 Binary files /dev/null and b/sync_on.png differ diff --git a/tab_a.png b/tab_a.png new file mode 100644 index 000000000..3b725c41c Binary files /dev/null and b/tab_a.png differ diff --git a/tab_ad.png b/tab_ad.png new file mode 100644 index 000000000..e34850acf Binary files /dev/null and b/tab_ad.png differ diff --git a/tab_b.png b/tab_b.png new file mode 100644 index 000000000..e2b4a8638 Binary files /dev/null and b/tab_b.png differ diff --git a/tab_bd.png b/tab_bd.png new file mode 100644 index 000000000..91c252498 Binary files /dev/null and b/tab_bd.png differ diff --git a/tab_h.png b/tab_h.png new file mode 100644 index 000000000..fd5cb7054 Binary files /dev/null and b/tab_h.png differ diff --git a/tab_hd.png b/tab_hd.png new file mode 100644 index 000000000..2489273d4 Binary files /dev/null and b/tab_hd.png differ diff --git a/tab_s.png b/tab_s.png new file mode 100644 index 000000000..ab478c95b Binary files /dev/null and b/tab_s.png differ diff --git a/tab_sd.png b/tab_sd.png new file mode 100644 index 000000000..757a565ce Binary files /dev/null and b/tab_sd.png differ diff --git a/tabs.css b/tabs.css new file mode 100644 index 000000000..71c8a4704 --- /dev/null +++ b/tabs.css @@ -0,0 +1 @@ +.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.main-menu-btn{position:relative;display:inline-block;width:36px;height:36px;text-indent:36px;margin-left:8px;white-space:nowrap;overflow:hidden;cursor:pointer;-webkit-tap-highlight-color:rgba(0,0,0,0)}.main-menu-btn-icon,.main-menu-btn-icon:before,.main-menu-btn-icon:after{position:absolute;top:50%;left:2px;height:2px;width:24px;background:var(--nav-menu-button-color);-webkit-transition:all .25s;transition:all .25s}.main-menu-btn-icon:before{content:'';top:-7px;left:0}.main-menu-btn-icon:after{content:'';top:7px;left:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon{height:0}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:before{top:0;-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}#main-menu-state:checked ~ .main-menu-btn .main-menu-btn-icon:after{top:0;-webkit-transform:rotate(45deg);transform:rotate(45deg)}#main-menu-state{position:absolute;width:1px;height:1px;margin:-1px;border:0;padding:0;overflow:hidden;clip:rect(1px,1px,1px,1px)}#main-menu-state:not(:checked) ~ #main-menu{display:none}#main-menu-state:checked ~ #main-menu{display:block}@media(min-width:768px){.main-menu-btn{position:absolute;top:-99999px}#main-menu-state:not(:checked) ~ #main-menu{display:block}}.sm-dox{background-image:var(--nav-gradient-image)}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:var(--font-family-nav);font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:var(--nav-text-normal-shadow);color:var(--nav-text-normal-color);outline:0}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:var(--nav-menu-toggle-color);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a span.sub-arrow:before{display:block;content:'+'}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:var(--nav-menu-background-color)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:var(--nav-menu-background-color);background-image:none}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:var(--nav-gradient-image);line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:var(--nav-text-normal-color) transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:var(--nav-separator-image);background-repeat:no-repeat;background-position:right;-moz-border-radius:0 !important;-webkit-border-radius:0;border-radius:0 !important}.sm-dox a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox a:hover span.sub-arrow{border-color:var(--nav-text-hover-color) transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent var(--nav-menu-background-color) transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:var(--nav-menu-background-color);-moz-border-radius:5px !important;-webkit-border-radius:5px;border-radius:5px !important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent var(--nav-menu-foreground-color);border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:var(--nav-menu-foreground-color);background-image:none;border:0 !important;color:var(--nav-menu-foreground-color);background-image:none}.sm-dox ul a:hover{background-image:var(--nav-gradient-active-image);background-repeat:repeat-x;color:var(--nav-text-hover-color);text-shadow:var(--nav-text-hover-shadow)}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent var(--nav-text-hover-color)}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:var(--nav-menu-background-color);height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent var(--nav-menu-foreground-color) transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:var(--nav-menu-foreground-color) transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:var(--nav-gradient-image)}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:var(--nav-menu-background-color)}} \ No newline at end of file