ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Trigger
TriggerCommon
TriggerMenuMT
python
HLT
Egamma
TrigEgammaKeys.py
Go to the documentation of this file.
1
# Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
2
3
__author__ =
"Fernando Monticelli, Debottam Bakshi Gupta, Joao Victor Pinto"
4
__doc__ =
"ConfigSettings"
5
__all__ = [
"getTrigEgammaKeys"
]
6
7
#----------------------------------------------------------------
8
# Configuration of Electron and Photon chains
9
#----------------------------------------------------------------
10
11
12
from
TrigEDMConfig.TriggerEDM
import
recordable
13
from
AthenaConfiguration.AthConfigFlags
import
AthConfigFlags
14
15
class
TrigEgammaKeysBase
(object):
16
17
"""Base clas to configure TrigEgamma Container names. Containers will be record, collections not"""
18
def
__init__
(self, flags: AthConfigFlags, ion=
False
):
19
20
21
"""Static class to collect all string manipulation in fast electron sequences """
22
self.
fastTrackingRoIContainer
= recordable(
"HLT_Roi_FastElectron"
)
23
self.
fastElectronContainer
= recordable(
"HLT_FastElectrons"
)
24
25
"""Static class to collect all string manipulation in fast photon sequences """
26
self.
fastPhotonRoIContainer
= recordable(
"HLT_Roi_FastPhoton"
)
27
self.
fastPhotonContainer
= recordable(
"HLT_FastPhotons"
)
28
29
"""Static class to collect all string manipulation in precision calo sequences """
30
self.
precisionCaloTopoCollection
=
'HLT_egammaTopoCluster'
31
self.
precisionCaloEgammaRecCollection
=
'HLT_precisionCaloEgammaRecCollection'
32
self.
precisionElectronCaloClusterContainer
= recordable(
"HLT_CaloEMClusters_Electron"
)
if
not
ion
else
recordable(
"HLT_HICaloEMClusters"
)
33
self.
precisionPhotonCaloClusterContainer
= recordable(
"HLT_CaloEMClusters_Photon"
)
if
not
ion
else
recordable(
"HLT_HICaloEMClusters"
)
34
self.
precisionTopoClusterContainer
= recordable(
"HLT_TopoCaloClustersRoI"
)
if
not
ion
else
recordable(
"HLT_TopoCaloClustersHIRoI"
)
35
self.
precisionEgammaRecCollection
=
'HLT_egammaRecCollection'
36
self.
precisionPhotonEMClusterContainer
= recordable(
'HLT_TrigEMClusters_Photons'
)
37
self.
precisionElectronEMClusterContainer
= recordable(
'HLT_TrigEMClusters_Electrons'
)
38
39
"""Static class to collect all string manipulation in precision photon sequences """
40
self.
precisionPhotonSuperClusterRecCollection
=
'HLT_PhotonSuperRecCollection'
41
self.
precisionPhotonSuperClusterCollection
=
'HLT_PhotonSuperClusters'
42
self.
precisionPhotonContainer
= recordable(
'HLT_egamma_Photons'
)
43
self.
precisionPhotonIsoContainer
= recordable(
'HLT_egamma_Iso_Photons'
)
44
45
"""Static class to collect all string manipulation in precision electron sequences """
46
self.
precisionElectronSuperClusterRecCollection
=
'HLT_ElectronSuperRecCollection'
47
self.
precisionElectronSuperClusterCollection
=
'HLT_ElectronSuperClusters'
48
self.
precisionElectronContainer
= recordable(
'HLT_egamma_Electrons'
)
49
50
"""Static class to collect all string manipulation in precision egamma sequences """
51
self.
precisionEgammaSuperClusterRecCollection
=
'HLT_EgammaSuperRecCollection'
52
53
#
54
# Special sequences
55
#
56
self.
TrigTRTHTCountsContainer
= recordable(
"HLT_TrigTRTHTCounts"
)
57
self.
egEventShape
= recordable(
'HLT_HIEventShapeEG'
)
58
self.
_flags
= flags
59
60
61
62
@property
63
def
precisionTrackingContainer
(self):
64
return
self.
_flags
.Trigger.InDetTracking.electron.tracks_IDTrig
65
66
@property
67
def
fastTrackParticleContainer
(self):
68
return
self.
_flags
.Trigger.InDetTracking.electron.tracks_FTF
69
70
71
72
class
TrigEgammaKeys_LRT
(
TrigEgammaKeysBase
):
73
# This class contians modified base configuration class for LRT electron trigger chains
74
def
__init__
(self, flags: AthConfigFlags, ion):
75
TrigEgammaKeysBase.__init__(self, flags, ion)
76
77
self.
fastTrackingRoIContainer
= recordable(
"HLT_Roi_FastElectron_LRT"
)
78
self.
fastElectronContainer
= recordable(
'HLT_FastElectrons_LRT'
)
79
self.
precisionElectronEMClusterContainer
= recordable(
'HLT_TrigEMClusters_Electrons_LRT'
)
80
self.
precisionElectronCaloClusterContainer
= recordable(
"HLT_CaloEMClusters_LRT"
)
81
self.
precisionElectronContainer
= recordable(
'HLT_egamma_Electrons_LRT'
)
82
self.
precisionTopoClusterContainer
= recordable(
"HLT_TopoCaloClustersRoI_LRT"
)
83
84
@property
85
def
precisionTrackingContainer
(self):
86
return
self.
_flags
.Trigger.InDetTracking.electronLRT.tracks_IDTrig
87
88
@property
89
def
fastTrackParticleContainer
(self):
90
return
self.
_flags
.Trigger.InDetTracking.electronLRT.tracks_FTF
91
92
93
class
TrigEgammaKeys_GSF
(
TrigEgammaKeysBase
):
94
# This class contians modified base configuration class for GSF electron trigger chains
95
def
__init__
(self, flags: AthConfigFlags, ion):
96
TrigEgammaKeysBase.__init__(self, flags, ion)
97
self.
precisionElectronEMClusterContainer
= recordable(
'HLT_TrigEMClusters_Electrons_GSF'
)
98
99
# from HLT_IDTrack_Electron to HLT_IDTrack_Electron by refit alg
100
self.
precisionElectronTrkCollectionGSF
=
'HLT_IDTrkTrack_Electron_GSF'
101
self.
precisionElectronTrackParticleContainerGSF
= recordable(
'HLT_IDTrack_Electron_GSF'
)
102
self.
precisionElectronContainer
= recordable(
'HLT_egamma_Electrons_GSF'
)
103
@property
104
def
precisionTrackingContainer
(self):
105
return
self.
_flags
.Trigger.InDetTracking.electron.tracks_IDTrig
106
107
@property
108
def
fastTrackParticleContainer
(self):
109
return
self.
_flags
.Trigger.InDetTracking.electron.tracks_FTF
110
111
112
class
TrigEgammaKeys_LRTGSF
(
TrigEgammaKeysBase
):
113
# This class contians modified base configuration class for LRT_GSF electron trigger chains
114
def
__init__
(self, flags: AthConfigFlags, ion):
115
TrigEgammaKeysBase.__init__(self, flags, ion)
116
self.
precisionElectronEMClusterContainer
= recordable(
'HLT_TrigEMClusters_Electrons_LRTGSF'
)
117
118
# from HLT_IDTrack_Electron to HLT_IDTrack_Electron by refit alg
119
self.
precisionElectronTrkCollectionGSF
=
'HLT_IDTrkTrack_Electron_LRTGSF'
120
self.
precisionElectronTrackParticleContainerGSF
= recordable(
'HLT_IDTrack_Electron_LRTGSF'
)
121
self.
precisionElectronCaloClusterContainer
= recordable(
"HLT_CaloEMClusters_LRT"
)
122
self.
precisionElectronContainer
= recordable(
'HLT_egamma_Electrons_LRTGSF'
)
123
124
@property
125
def
precisionTrackingContainer
(self):
126
return
self.
_flags
.Trigger.InDetTracking.electronLRT.tracks_IDTrig
127
128
@property
129
def
fastTrackParticleContainer
(self):
130
return
self.
_flags
.Trigger.InDetTracking.electronLRT.tracks_FTF
131
132
#
133
# Get keys from variant name
134
#
135
from
AthenaConfiguration.AccumulatorCache
import
AccumulatorCache
136
137
@AccumulatorCache
138
def
getTrigEgammaKeys
(flags: AthConfigFlags, name=
''
, ion=
False
):
139
140
_d = {
141
# Dictionary that maps a string to a configuration setting for electron and photon chains
142
''
:
TrigEgammaKeysBase
(flags, ion),
143
'_noGSF'
:
TrigEgammaKeysBase
(flags, ion),
144
'_LRT'
:
TrigEgammaKeys_LRT
(flags, ion),
145
'_GSF'
:
TrigEgammaKeys_GSF
(flags, ion),
146
'_LRTGSF'
:
TrigEgammaKeys_LRTGSF
(flags, ion),
147
}
148
149
if
name
in
_d.keys():
150
return
_d[name]
151
else
:
152
raise
Exception(
'getTrigEgammaKeys() called with non valid name : '
+ name +
' valid names are:'
+ str(_d.keys()) )
153
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase
Definition
TrigEgammaKeys.py:15
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.fastPhotonContainer
fastPhotonContainer
Definition
TrigEgammaKeys.py:27
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionElectronEMClusterContainer
precisionElectronEMClusterContainer
Definition
TrigEgammaKeys.py:37
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionElectronSuperClusterCollection
str precisionElectronSuperClusterCollection
Definition
TrigEgammaKeys.py:47
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.__init__
__init__(self, AthConfigFlags flags, ion=False)
Definition
TrigEgammaKeys.py:18
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionElectronSuperClusterRecCollection
str precisionElectronSuperClusterRecCollection
Definition
TrigEgammaKeys.py:46
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionEgammaRecCollection
str precisionEgammaRecCollection
Definition
TrigEgammaKeys.py:35
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionTrackingContainer
precisionTrackingContainer(self)
Definition
TrigEgammaKeys.py:63
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.fastTrackParticleContainer
fastTrackParticleContainer(self)
Definition
TrigEgammaKeys.py:67
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionElectronContainer
precisionElectronContainer
Definition
TrigEgammaKeys.py:48
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionPhotonContainer
precisionPhotonContainer
Definition
TrigEgammaKeys.py:42
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.fastElectronContainer
fastElectronContainer
Definition
TrigEgammaKeys.py:23
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionCaloTopoCollection
str precisionCaloTopoCollection
Definition
TrigEgammaKeys.py:30
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionPhotonIsoContainer
precisionPhotonIsoContainer
Definition
TrigEgammaKeys.py:43
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionPhotonSuperClusterCollection
str precisionPhotonSuperClusterCollection
Definition
TrigEgammaKeys.py:41
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionPhotonCaloClusterContainer
precisionPhotonCaloClusterContainer
Definition
TrigEgammaKeys.py:33
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionEgammaSuperClusterRecCollection
str precisionEgammaSuperClusterRecCollection
Definition
TrigEgammaKeys.py:51
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase._flags
_flags
Definition
TrigEgammaKeys.py:58
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.fastTrackingRoIContainer
fastTrackingRoIContainer
Definition
TrigEgammaKeys.py:22
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionPhotonEMClusterContainer
precisionPhotonEMClusterContainer
Definition
TrigEgammaKeys.py:36
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionCaloEgammaRecCollection
str precisionCaloEgammaRecCollection
Definition
TrigEgammaKeys.py:31
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.egEventShape
egEventShape
Definition
TrigEgammaKeys.py:57
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionPhotonSuperClusterRecCollection
str precisionPhotonSuperClusterRecCollection
Definition
TrigEgammaKeys.py:40
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.TrigTRTHTCountsContainer
TrigTRTHTCountsContainer
Definition
TrigEgammaKeys.py:56
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionTopoClusterContainer
precisionTopoClusterContainer
Definition
TrigEgammaKeys.py:34
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.precisionElectronCaloClusterContainer
precisionElectronCaloClusterContainer
Definition
TrigEgammaKeys.py:32
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeysBase.fastPhotonRoIContainer
fastPhotonRoIContainer
Definition
TrigEgammaKeys.py:26
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_GSF
Definition
TrigEgammaKeys.py:93
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_GSF.precisionElectronTrkCollectionGSF
str precisionElectronTrkCollectionGSF
Definition
TrigEgammaKeys.py:100
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_GSF.__init__
__init__(self, AthConfigFlags flags, ion)
Definition
TrigEgammaKeys.py:95
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_GSF.precisionTrackingContainer
precisionTrackingContainer(self)
Definition
TrigEgammaKeys.py:104
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_GSF.fastTrackParticleContainer
fastTrackParticleContainer(self)
Definition
TrigEgammaKeys.py:108
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_GSF.precisionElectronTrackParticleContainerGSF
precisionElectronTrackParticleContainerGSF
Definition
TrigEgammaKeys.py:101
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_LRTGSF
Definition
TrigEgammaKeys.py:112
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_LRTGSF.precisionElectronTrkCollectionGSF
str precisionElectronTrkCollectionGSF
Definition
TrigEgammaKeys.py:119
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_LRTGSF.fastTrackParticleContainer
fastTrackParticleContainer(self)
Definition
TrigEgammaKeys.py:129
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_LRTGSF.__init__
__init__(self, AthConfigFlags flags, ion)
Definition
TrigEgammaKeys.py:114
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_LRTGSF.precisionTrackingContainer
precisionTrackingContainer(self)
Definition
TrigEgammaKeys.py:125
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_LRTGSF.precisionElectronTrackParticleContainerGSF
precisionElectronTrackParticleContainerGSF
Definition
TrigEgammaKeys.py:120
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_LRT
Definition
TrigEgammaKeys.py:72
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_LRT.__init__
__init__(self, AthConfigFlags flags, ion)
Definition
TrigEgammaKeys.py:74
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_LRT.fastTrackParticleContainer
fastTrackParticleContainer(self)
Definition
TrigEgammaKeys.py:89
python.HLT.Egamma.TrigEgammaKeys.TrigEgammaKeys_LRT.precisionTrackingContainer
precisionTrackingContainer(self)
Definition
TrigEgammaKeys.py:85
python.HLT.Egamma.TrigEgammaKeys.getTrigEgammaKeys
getTrigEgammaKeys(AthConfigFlags flags, name='', ion=False)
Definition
TrigEgammaKeys.py:138
Generated on
for ATLAS Offline Software by
1.17.0