fire v0.19.0
Framework for sImulation and Reconstruction of Events
|
#include <type_traits>
#include <highfive/H5DataType.hpp>
Go to the source code of this file.
Namespaces | |
namespace | fire::io |
Geant4 does a GLOBAL definition of the keyword TRUE. | |
Typedefs | |
template<typename AtomicType > | |
using | fire::io::is_atomic = std::integral_constant< bool, std::is_arithmetic< AtomicType >::value||std::is_same< AtomicType, std::string >::value > |
HighFive supports many C++ "atomic" types that are used regularly. More... | |
Enumerations | |
enum class | fire::io::Bool : bool { TRUE = true , FALSE = false } |
Boolean enum aligned with h5py. More... | |
Functions | |
HighFive::EnumType< Bool > | fire::io::create_enum_bool () |
HighFive method for creating the enum data type. | |
template<> | |
HighFive::DataType | HighFive::create_datatype< fire::io::Bool > () |
full specialization of HighFive template function More... | |
Variables | |
template<typename AtomicType > | |
constexpr bool | fire::io::is_atomic_v = is_atomic<AtomicType>::value |
shorthand for easier use | |
HighFive::DataType HighFive::create_datatype< fire::io::Bool > | ( | ) |
full specialization of HighFive template function
This is necessary for compile-time registration of a new type and is usually hidden within the HIGHFIVE_REGISTER_TYPE macro.
The reason we have to not use the macro here is two fold.
These two goals can be met by splitting the declaration and the definition of this full specialization into the header and source files of Atomic.