Loading [MathJax]/extensions/tex2jax.js
ATLAS Offline Software
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
:
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
Related Functions
:
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
r
s
t
v
w
x
z
Files
File List
File Members
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
_
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Variables
$
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
a
b
c
d
e
f
g
h
i
j
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Enumerations
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
v
x
z
Enumerator
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
GitLab
LXR
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Modules
Pages
Control
DataModelAthenaPool
DataModelAthenaPool
ElementLink_p3.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef DATAMODELATHENAPOOL_ELEMENTLINK_P3_H
6
#define DATAMODELATHENAPOOL_ELEMENTLINK_P3_H
7
13
#include <string>
14
#include <inttypes.h>
15
16
#include "
CxxUtils/sgkey_t.h
"
17
22
template
<
class
INDEXTYPE>
23
class
ElementLink_p3
{
24
public
:
25
26
ElementLink_p3
() =
default
;
27
28
INDEXTYPE
m_elementIndex
{};
29
SG::sgkey_t
m_SGKeyHash
{0};
30
};
31
32
33
// If you define more ElementLink_pN types, remember to add template instantiations to the Dict file
34
35
typedef
ElementLink_p3<uint32_t>
ElementLinkInt_p3
;
36
typedef
ElementLink_p3<std::string>
ElementLinkStr_p3
;
37
38
39
// Helper template for conversion from the index type in transient ElementLink
40
// to the persistent index type
41
42
template
<
typename
ContIndxType>
43
struct
GenerateELinkIndexType_p3
{
44
// typedef MISSING_DEFINITION_OF_GenerateELinkIndexType_FOR_<ContIndxType> type;
45
};
46
47
template
<>
48
struct
GenerateELinkIndexType_p3
<
uint32_t
> {
49
typedef
uint32_t
type
;
50
};
51
52
template
<>
53
struct
GenerateELinkIndexType_p3
<
uint64_t
> {
54
typedef
uint32_t
type
;
55
};
56
57
template
<>
58
struct
GenerateELinkIndexType_p3
<
int
> {
59
typedef
uint32_t
type
;
60
};
61
62
#ifdef __APPLE__
63
template
<>
64
struct
GenerateELinkIndexType_p3
<size_t> {
65
typedef
uint32_t
type
;
66
};
67
#endif
68
69
template
<>
70
struct
GenerateELinkIndexType_p3
<std::string> {
71
typedef
std::string
type
;
72
};
73
74
75
// Helper template to generate type of the persistent ElementLink_pN
76
// from the type of the transient ElementLink
77
// Used in the ElementlinkCnv_pN
78
79
template
<
class
LINK>
80
struct
GeneratePersELinkType_p3
{
81
typedef
ElementLink_p3<typename GenerateELinkIndexType_p3<typename LINK::index_type>::type
>
type
;
82
};
83
84
#endif // DATAMODELATHENAPOOL_ELEMENTLINK_P3_H
85
86
87
xAOD::uint32_t
setEventNumber uint32_t
Definition:
EventInfo_v1.cxx:127
ElementLinkStr_p3
ElementLink_p3< std::string > ElementLinkStr_p3
Definition:
ElementLink_p3.h:36
GenerateELinkIndexType_p3< int >::type
uint32_t type
Definition:
ElementLink_p3.h:59
python.CaloAddPedShiftConfig.type
type
Definition:
CaloAddPedShiftConfig.py:42
GenerateELinkIndexType_p3< uint64_t >::type
uint32_t type
Definition:
ElementLink_p3.h:54
ElementLink_p3
Definition:
ElementLink_p3.h:23
ElementLinkInt_p3
ElementLink_p3< uint32_t > ElementLinkInt_p3
Definition:
ElementLink_p3.h:35
ElementLink_p3::ElementLink_p3
ElementLink_p3()=default
python.LArMinBiasAlgConfig.int
int
Definition:
LArMinBiasAlgConfig.py:59
xAOD::uint64_t
uint64_t
Definition:
EventInfo_v1.cxx:123
ElementLink_p3::m_elementIndex
INDEXTYPE m_elementIndex
Definition:
ElementLink_p3.h:28
ElementLink_p3::m_SGKeyHash
SG::sgkey_t m_SGKeyHash
Definition:
ElementLink_p3.h:29
GenerateELinkIndexType_p3< uint32_t >::type
uint32_t type
Definition:
ElementLink_p3.h:49
SG::sgkey_t
uint32_t sgkey_t
Type used for hashed StoreGate key+CLID pairs.
Definition:
CxxUtils/CxxUtils/sgkey_t.h:32
GenerateELinkIndexType_p3< std::string >::type
std::string type
Definition:
ElementLink_p3.h:71
sgkey_t.h
Define the type used for hashed StoreGate key+CLID pairs.
GeneratePersELinkType_p3::type
ElementLink_p3< typename GenerateELinkIndexType_p3< typename LINK::index_type >::type > type
Definition:
ElementLink_p3.h:81
GenerateELinkIndexType_p3
Definition:
ElementLink_p3.h:43
GeneratePersELinkType_p3
Definition:
ElementLink_p3.h:80
Generated on Sun Apr 20 2025 21:10:18 for ATLAS Offline Software by
1.8.18