4#ifndef DUNE_FUFEM_HDF5_TYPETRAITS_HH
5#define DUNE_FUFEM_HDF5_TYPETRAITS_HH
7#if __has_include(<hdf5.h>)
14template <
typename ctype>
16 static hid_t getType() {
22struct TypeTraits<float> {
23 static hid_t getType() {
return H5T_NATIVE_FLOAT; }
26struct TypeTraits<double> {
27 static hid_t getType() {
return H5T_NATIVE_DOUBLE; }
30struct TypeTraits<long double> {
31 static hid_t getType() {
return H5T_NATIVE_LDOUBLE; }
35struct TypeTraits<char> {
36 static hid_t getType() {
return H5T_NATIVE_CHAR; }
39struct TypeTraits<signed char> {
40 static hid_t getType() {
return H5T_NATIVE_SCHAR; }
43struct TypeTraits<unsigned char> {
44 static hid_t getType() {
return H5T_NATIVE_UCHAR; }
48struct TypeTraits<short> {
49 static hid_t getType() {
return H5T_NATIVE_SHORT; }
52struct TypeTraits<unsigned short> {
53 static hid_t getType() {
return H5T_NATIVE_USHORT; }
57struct TypeTraits<int> {
58 static hid_t getType() {
return H5T_NATIVE_INT; }
61struct TypeTraits<unsigned int> {
62 static hid_t getType() {
return H5T_NATIVE_UINT; }
66struct TypeTraits<long> {
67 static hid_t getType() {
return H5T_NATIVE_LONG; }
70struct TypeTraits<unsigned long> {
71 static hid_t getType() {
return H5T_NATIVE_ULONG; }
75struct TypeTraits<long long> {
76 static hid_t getType() {
return H5T_NATIVE_LLONG; }
79struct TypeTraits<unsigned long long> {
80 static hid_t getType() {
return H5T_NATIVE_ULLONG; }
85 #warning Including hdf5/typetraits.hh but hdf5.h is missing.
#define DUNE_THROW(E,...)