ATLAS Offline Software
Classes | Macros
Control/AthenaKernel/AthenaKernel/ClassID_traits.h File Reference

a traits class that associates a CLID to a type T It also detects whether T inherits from Gaudi DataObject More...

#include <string>
#include <typeinfo>
#include "GaudiKernel/ClassID.h"
#include "GaudiKernel/DataObject.h"
#include "GaudiKernel/System.h"
#include "AthenaKernel/CLIDRegistry.h"
#include "AthenaKernel/ClassName.h"
#include <type_traits>
Include dependency graph for Control/AthenaKernel/AthenaKernel/ClassID_traits.h:

Go to the source code of this file.

Classes

struct  ERROR_you_should_use_the_CLASS_DEF_macro_to_define_CLID_and_VERSION< T >
 Helper used in order to get the clear error message for the developer. More...
 
struct  ERROR_you_should_use_the_CLASS_DEF_macro_to_define_CLID_and_VERSION< true >
 
class  ClassID_traits< T >
 Default, invalid implementation of ClassID_traits. More...
 

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

Detailed Description

a traits class that associates a CLID to a type T It also detects whether T inherits from Gaudi DataObject

Author
Paolo Calafiura pcala.nosp@m.fiur.nosp@m.a@lbl.nosp@m..gov - ATLAS Collaboration

Definition in file Control/AthenaKernel/AthenaKernel/ClassID_traits.h.

Macro Definition Documentation

◆ MY_STATIC_ASSERT

#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 33 of file Control/AthenaKernel/AthenaKernel/ClassID_traits.h.