|  | 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