4#include <memcore/RefPtr.hpp>
10static bool H5LibraryIsActive;
32 void operator=(
const Silence&) =
delete;
36 H5Eget_auto2( H5E_DEFAULT, &func, &client_data );
37 H5Eset_auto2( H5E_DEFAULT, 0,0);
42 H5Eset_auto2( H5E_DEFAULT, func, client_data);
46 template <
class Lambda>
47static auto Silentio(
const Lambda&L) ->
decltype( L() )
64 hid_t getHidClone()
const
77 return H5LibraryIsActive;
80static void CloseLibrary();
82 bool Awrite(
const char*AttributeName, hid_t file_type_id,
85 size_t Elements)
const;
87 bool Awrite(
const std::string&AttributeName, hid_t file_type_id,
90 size_t Elements)
const
92 return Awrite(AttributeName.c_str(), file_type_id,
93 mem_type_id, data, Elements);
96 template <
class name_t>
97 bool Awrite(
const name_t&AttributeName, hid_t type_id,
const void*data,
size_t Elements)
const
99 return Awrite(AttributeName, type_id, type_id, data, Elements);
103 template <
class name_t>
104 bool Awrite(
const name_t&AttributeName,
const int*data,
size_t Elements)
const
106 return Awrite( AttributeName, H5T_NATIVE_INT, data, Elements);
109 template <
class name_t>
110 bool Awrite(
const name_t&AttributeName,
const unsigned int*data,
size_t Elements)
const
112 return Awrite( AttributeName, H5T_NATIVE_UINT, data, Elements);
115 template <
class name_t>
116 bool Awrite(
const name_t&AttributeName,
const long*data,
size_t Elements)
const
118 return Awrite( AttributeName, H5T_NATIVE_LONG, data, Elements);
121 template <
class name_t>
122 bool Awrite(
const name_t&AttributeName,
const unsigned long*data,
size_t Elements)
const
124 return Awrite( AttributeName, H5T_NATIVE_ULONG, data, Elements);
128 template <
class name_t>
129 bool Awrite(
const name_t&AttributeName,
const int16_t*data,
size_t Elements)
const
131 return Awrite( AttributeName, H5T_NATIVE_INT16, data, Elements);
134 template <
class name_t>
135 bool Awrite(
const name_t&AttributeName,
const int32_t*data,
size_t Elements)
const
137 return Awrite( AttributeName, H5T_NATIVE_INT32, data, Elements);
140 template <
class name_t>
141 bool Awrite(
const name_t&AttributeName,
const int64_t*data,
size_t Elements)
const
143 return Awrite( AttributeName, H5T_NATIVE_INT64, data, Elements);
147 template <
class name_t>
148 bool Awrite(
const name_t&AttributeName,
const uint16_t*data,
size_t Elements)
const
150 return Awrite( AttributeName, H5T_NATIVE_UINT16, data, Elements);
153 template <
class name_t>
154 bool Awrite(
const name_t&AttributeName,
const uint32_t*data,
size_t Elements)
const
156 return Awrite( AttributeName, H5T_NATIVE_UINT32, data, Elements);
159 template <
class name_t>
160 bool Awrite(
const name_t&AttributeName,
const uint64_t*data,
size_t Elements)
const
162 return Awrite( AttributeName, H5T_NATIVE_UINT64, data, Elements);
165 template <
class name_t>
166 bool Awrite(
const name_t&AttributeName,
const double*data,
size_t Elements = 1)
const
168 return Awrite( AttributeName, H5T_NATIVE_DOUBLE, data, Elements);
171 template <
class name_t,
class value_type>
172 bool Awrite(
const name_t&AttributeName,
const value_type&value)
const
174 return Awrite( AttributeName, &value, 1);
179 bool Awrite(
const std::string&AttributeName,
const std::vector<T>&data)
const
181 return Awrite( AttributeName, &*data.begin(), data.size());
184 bool Awrite(
const char*AttributeName,
const std::string&data)
const;
185 bool Awrite(
const std::string&AttributeName,
const std::string&data)
const
187 return Awrite(AttributeName.c_str(), data);
Base class for groups, datasets and named datatypes.
Definition H++/H5Object.hpp:122
Definition H++with_cache_image/H5Object.hpp:55
Definition H++with_cache_image/H5Object.hpp:27