ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Control
AthenaKernel
AthenaKernel
AthenaKernel/AthenaKernel/ClassName.h
Go to the documentation of this file.
1
// This file's extension implies that it's C, but it's really -*- C++ -*-.
2
/*
3
Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
4
*/
11
12
13
#ifndef ATHENAKERNEL_CLASSNAME_H
14
#define ATHENAKERNEL_CLASSNAME_H
15
16
17
#include <string>
18
#include <typeinfo>
19
20
29
template
<
class
T>
30
class
ClassName
31
{
32
public
:
36
static
std::string
name
()
37
#ifdef __GNUC__
38
// Force this function to appear as a symbol in the output file,
39
// even in an optimized build where it's always inlined.
40
// Otherwise, we get complaints from cling that it can't find the symbol
41
// (as of root 6.04).
42
__attribute__
((
used
))
43
#endif
44
;
45
};
46
47
48
namespace
Athena
{
49
50
58
std::string
typeinfoName
(
const
std::type_info& ti);
59
60
61
}
// namespace Athena
62
63
64
#include "
AthenaKernel/ClassName.icc
"
65
66
67
#endif
// not ATHENAKERNEL_CLASSNAME_H
ClassName.icc
__attribute__
__attribute__((always_inline)) inline uint16_t TileCalibDrawerBase
Definition
TileCalibDrawerBase.h:192
ClassName
An interface for getting the name of a class as a string.
Definition
AthenaKernel/AthenaKernel/ClassName.h:31
ClassName::name
static std::string name()
Return the name of class T as a string.
Definition
CxxUtils/Root/ClassName.cxx:229
used
holding In fact this class is here in order to allow STL container for all features This class is sho...
Athena
Some weak symbol referencing magic... These are declared in AthenaKernel/getMessageSvc....
Definition
AthDsoUtils.h:10
Athena::typeinfoName
std::string typeinfoName(const std::type_info &ti)
Convert a type_info to a demangled string.
Definition
AthenaKernel/src/ClassName.cxx:23
Generated on
for ATLAS Offline Software by
1.17.0