![]() |
ATLAS Offline Software
|
a traits class that associates a CLID to a type T It also detects whether T inherits from Gaudi DataObject More...
#include "AthenaKernel/ClassName.h"#include "GaudiKernel/ClassID.h"#include <string>#include <typeinfo>#include <type_traits>#include <concepts>Go to the source code of this file.
Classes | |
| class | ClassID_trait_dummy |
| class | ClassID_traits< T > |
| Default, invalid implementation of ClassID_traits. More... | |
| struct | ClassID_traits< T > |
Macros | |
| #define | MY_STATIC_ASSERT(B) static_assert (B, "You should use the CLASS_DEF macro to define CLID and VERSION") |
| internal use: issues a compilation error when condition B is false More... | |
Functions | |
| template<typename T > | |
| requires | requires () |
This specialization is used for classes deriving from DataObject. More... | |
a traits class that associates a CLID to a type T It also detects whether T inherits from Gaudi DataObject
Definition in file Control/AthenaKernel/AthenaKernel/ClassID_traits.h.
| #define MY_STATIC_ASSERT | ( | B | ) | static_assert (B, "You should use the CLASS_DEF macro to define CLID and VERSION") |
internal use: issues a compilation error when condition B is false
Definition at line 25 of file Control/AthenaKernel/AthenaKernel/ClassID_traits.h.
| requires requires | ( | ) |
This specialization is used for classes deriving from DataObject.
To avoid having a compile-time dependency on DataObject, we enable this based on whether or not T::classID() is defined.
Definition at line 68 of file Control/AthenaKernel/AthenaKernel/ClassID_traits.h.
1.8.18