Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef ATHENAKERNEL_CLASSID_TRAITS_H
6 #define ATHENAKERNEL_CLASSID_TRAITS_H
15 #include "GaudiKernel/ClassID.h"
19 #include <type_traits>
24 #define MY_STATIC_ASSERT( B ) \
25 static_assert (B, "You should use the CLASS_DEF macro to define CLID and VERSION")
51 static const std::string
dummy;
69 { T::classID() } -> std::convertible_to<CLID>;
97 static const bool s_isConst =
false;
100 #undef MY_STATIC_ASSERT
102 #endif // not ATHENAKERNEL_CLASSID_TRAITS_H
requires requires()
This specialization is used for classes deriving from DataObject.
static const int s_version
static const std::string & typeName()
std::string typeinfoName(const std::type_info &ti)
Convert a type_info to a demangled string.
An interface for getting the name of a class as a string.
std::false_type has_classID_tag
static const CLID & ID()
the CLID of T
Default, invalid implementation of ClassID_traits.
std::false_type has_classID_tag
uint32_t CLID
The Class ID type.
std::false_type has_version_tag
#define MY_STATIC_ASSERT(B)
internal use: issues a compilation error when condition B is false
static const bool s_isDataObject
static const std::type_info & typeInfo()
static const std::string & typeName()
the demangled type name of T
static const std::type_info & typeInfo()
the type id of T