ATLAS Offline Software
Loading...
Searching...
No Matches
CaloRetrieversConfig.py
Go to the documentation of this file.
1# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2
3from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
4from AthenaConfiguration.ComponentFactory import CompFactory
5from AthenaConfiguration.Enums import Format
6
7
8def LArDigitRetrieverCfg(flags, **kwargs):
9 result = ComponentAccumulator()
10 the_tool = CompFactory.JiveXML.LArDigitRetriever(
11 name="LArDigitRetriever",
12 DoLArDigit=False,
13 DoHECDigit=False,
14 DoFCalDigit=False,
15 )
16 result.addPublicTool(the_tool, primary=True)
17 return result
18
19
20def CaloFCalRetrieverCfg(flags, **kwargs):
21 result = ComponentAccumulator()
22 the_tool = CompFactory.JiveXML.CaloFCalRetriever(
23 name="CaloFCalRetriever",
24 DoFCalCellDetails=False,
25 DoBadFCal=False,
26 )
27 result.addPublicTool(the_tool, primary=True)
28 return result
29
30
31def CaloLArRetrieverCfg(flags, **kwargs):
32 result = ComponentAccumulator()
33 the_tool = CompFactory.JiveXML.CaloLArRetriever(
34 name="CaloLArRetriever",
35 DoLArCellDetails=False,
36 DoBadLAr=False,
37 LArlCellThreshold = 500 if flags.OnlineEventDisplays.BeamSplashMode else 50,
38 )
39 result.addPublicTool(the_tool, primary=True)
40 return result
41
42
43def CaloHECRetrieverCfg(flags, **kwargs):
44 result = ComponentAccumulator()
45 the_tool = CompFactory.JiveXML.CaloHECRetriever(
46 name="CaloHECRetriever",
47 DoHECCellDetails=False,
48 DoBadHEC=False,
49 HEClCellThreshold = 500 if flags.OnlineEventDisplays.BeamSplashMode else 50,
50 )
51 result.addPublicTool(the_tool, primary=True)
52 return result
53
54
55def CaloClusterRetrieverCfg(flags, **kwargs):
56 result = ComponentAccumulator()
57 the_tool = CompFactory.JiveXML.CaloClusterRetriever(name = "CaloClusterRetriever",**kwargs)
58 result.addPublicTool(the_tool, primary=True)
59 return result
60
61
62def CaloTileRetrieverCfg(flags, **kwargs):
63 result = ComponentAccumulator()
64
65 if flags.Input.Format is Format.BS:
66 tileDigitsContainer = "TileDigitsCnt"
67
68 if flags.Tile.doOpt2:
69 tileRawChannelContainer = 'TileRawChannelOpt2'
70 elif flags.Tile.doOptATLAS:
71 tileRawChannelContainer = 'TileRawChannelFixed'
72 elif flags.Tile.doFitCOOL:
73 tileRawChannelContainer = 'TileRawChannelFitCool'
74 elif flags.Tile.doFit:
75 tileRawChannelContainer = 'TileRawChannelFit'
76 else:
77 tileRawChannelContainer = 'TileRawChannelCnt'
78
79 else:
80 if "TileDigitsCnt" in flags.Input.Collections:
81 tileDigitsContainer = "TileDigitsCnt"
82 elif "TileDigitsFlt" in flags.Input.Collections:
83 tileDigitsContainer = "TileDigitsFlt"
84
85 if "TileRawChannelOpt2" in flags.Input.Collections:
86 tileRawChannelContainer = 'TileRawChannelOpt2'
87 elif "TileRawChannelFitCool" in flags.Input.Collections:
88 tileRawChannelContainer = 'TileRawChannelFitCool'
89 elif "TileRawChannelFit" in flags.Input.Collections:
90 tileRawChannelContainer = 'TileRawChannelFit'
91 elif "TileRawChannelCnt" in flags.Input.Collections:
92 tileRawChannelContainer = 'TileRawChannelCnt'
93
94 the_tool = CompFactory.JiveXML.CaloTileRetriever(
95 name = "CaloTileRetriever",
96 TileDigitsContainer = tileDigitsContainer,
97 TileRawChannelContainer = tileRawChannelContainer,
98 DoTileCellDetails = False,
99 DoTileDigit = False,
100 DoBadTile = False,
101 )
102 result.addPublicTool(the_tool, primary=True)
103 return result
104
105
106def CaloMBTSRetrieverCfg(flags, **kwargs):
107 result = ComponentAccumulator()
108
109 if flags.Input.Format is Format.BS:
110 tileDigitsContainer = "TileDigitsCnt"
111
112 if flags.Tile.doOpt2:
113 tileRawChannelContainer = 'TileRawChannelOpt2'
114 elif flags.Tile.doOptATLAS:
115 tileRawChannelContainer = 'TileRawChannelFixed'
116 elif flags.Tile.doFitCOOL:
117 tileRawChannelContainer = 'TileRawChannelFitCool'
118 elif flags.Tile.doFit:
119 tileRawChannelContainer = 'TileRawChannelFit'
120 else:
121 tileRawChannelContainer = 'TileRawChannelCnt'
122
123 else:
124 if "TileDigitsCnt" in flags.Input.Collections:
125 tileDigitsContainer = "TileDigitsCnt"
126 elif "TileDigitsFlt" in flags.Input.Collections:
127 tileDigitsContainer = "TileDigitsFlt"
128
129 if "TileRawChannelOpt2" in flags.Input.Collections:
130 tileRawChannelContainer = 'TileRawChannelOpt2'
131 elif "TileRawChannelFitCool" in flags.Input.Collections:
132 tileRawChannelContainer = 'TileRawChannelFitCool'
133 elif "TileRawChannelFit" in flags.Input.Collections:
134 tileRawChannelContainer = 'TileRawChannelFit'
135 elif "TileRawChannelCnt" in flags.Input.Collections:
136 tileRawChannelContainer = 'TileRawChannelCnt'
137
138 the_tool = CompFactory.JiveXML.CaloMBTSRetriever(
139 name = "CaloMBTSRetriever",
140 TileDigitsContainer= tileDigitsContainer,
141 TileRawChannelContainer = tileRawChannelContainer,
142 DoMBTSDigits = False,
143 )
144 result.addPublicTool(the_tool, primary=True)
145 return result
146
147
148def CaloRetrieversCfg(flags, **kwargs):
149 result = ComponentAccumulator()
150 from LArRecUtils.LArADC2MeVCondAlgConfig import LArADC2MeVCondAlgCfg
151 result.merge(LArADC2MeVCondAlgCfg (flags))
152
153 from CaloJiveXML.CaloJiveXMLConf import JiveXML__LArDigitRetriever
154 theLArDigitRetriever = JiveXML__LArDigitRetriever(name="LArDigitRetriever")
155 theLArDigitRetriever.DoLArDigit = False
156 theLArDigitRetriever.DoHECDigit = False
157 theLArDigitRetriever.DoFCalDigit = False
158
159 tools = []
160
161 if (theLArDigitRetriever.DoLArDigit or theLArDigitRetriever.DoHECDigit or theLArDigitRetriever.DoFCalDigit):
162 tools += [result.getPrimaryAndMerge(LArDigitRetrieverCfg(flags))]
163 else:
164 tools += [result.getPrimaryAndMerge(CaloFCalRetrieverCfg(flags))]
165 tools += [result.getPrimaryAndMerge(CaloLArRetrieverCfg(flags))]
166 tools += [result.getPrimaryAndMerge(CaloHECRetrieverCfg(flags))]
167
168 tools += [result.getPrimaryAndMerge(CaloClusterRetrieverCfg(flags))]
169 tools += [result.getPrimaryAndMerge(CaloTileRetrieverCfg(flags))]
170 tools += [result.getPrimaryAndMerge(CaloMBTSRetrieverCfg(flags))]
171
172 return result, tools
CaloClusterRetrieverCfg(flags, **kwargs)
CaloTileRetrieverCfg(flags, **kwargs)
CaloFCalRetrieverCfg(flags, **kwargs)
CaloHECRetrieverCfg(flags, **kwargs)
CaloMBTSRetrieverCfg(flags, **kwargs)
CaloLArRetrieverCfg(flags, **kwargs)
CaloRetrieversCfg(flags, **kwargs)
LArDigitRetrieverCfg(flags, **kwargs)