Geant4 does a GLOBAL definition of the keyword TRUE. More...
Namespaces | |
class_version_impl | |
hide the SFINAE confusing nonsense from the rest of the world | |
examples | |
namespace holding utility functions for example programs | |
Classes | |
class | BaseBranch |
Empty data base allowing recursion. More... | |
class | AbstractBranch |
Type-specific base class to hold common data methods. More... | |
struct | access |
empty struct for connecting a instance of Data and the type it wraps More... | |
class | Branch< AtomicType, std::enable_if_t< is_atomic_v< AtomicType > > > |
Branch wrapper for atomic types. More... | |
class | Branch |
General data set. More... | |
class | Branch< std::map< KeyType, ValType > > |
Our wrapper around std::map. More... | |
class | Branch< std::vector< ContentType > > |
Our wrapper around std::vector. More... | |
struct | constants |
Structure constants vital to serialization method. More... | |
class | HDTreeException |
user-facing exception class for hdtree More... | |
class | Reader |
Reading a file generated by fire. More... | |
class | Tree |
A container for many branches. More... | |
class | Writer |
Write the fire DataSets into a deterministic structure in the output HDF5 data file. More... | |
Typedefs | |
template<typename AtomicType > | |
using | 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 | Bool : bool { TRUE = true , FALSE = false } |
Boolean enum aligned with h5py. More... | |
Functions | |
HighFive::EnumType< Bool > | create_enum_bool () |
HighFive method for creating the enum data type. | |
const std::string & | VERSION () |
the recorded CMake version of fire More... | |
const std::string & | API () |
The name of this API for HDTree. | |
Variables | |
template<typename AtomicType > | |
constexpr bool | is_atomic_v = is_atomic<AtomicType>::value |
shorthand for easier use | |
template<typename T > | |
constexpr int | class_version |
Helper const expression to pull out class version number. More... | |
Geant4 does a GLOBAL definition of the keyword TRUE.
using hdtree::is_atomic = typedef 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.
In order to conform to our more flexible structure, I have isolated their deduction into this (currently small) header file.
This will make it easier to fold in future atomic types if we see fit.
|
strong |
Boolean enum aligned with h5py.
We serialize bools in the same method as h5py so that Python-based analyses are easier.
const std::string& hdtree::VERSION | ( | ) |
the recorded CMake version of fire
This is defined by the VERSION keyword in the 'project' command in CMakeLists.txt.
|
inlineconstexpr |
Helper const expression to pull out class version number.
Assuming T::version is an std::integral_constant (same as the default template struct), we simply pull out that integral_constant value from class_version_impl::deducer.