ATLAS Offline Software
TauMenuSequences.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 
3 from TriggerMenuMT.HLT.Config.MenuComponents import MenuSequence, SelectionCA, InViewRecoCA
4 from AthenaConfiguration.ComponentFactory import CompFactory
5 
6 from AthenaConfiguration.AccumulatorCache import AccumulatorCache
7 from TrigEDMConfig.TriggerEDM import recordable
8 
9 from TrigInDetConfig.utils import getFlagsForActiveConfig
10 from AthenaCommon.Logging import logging
11 log = logging.getLogger(__name__)
12 
13 
14 def _caloSeq(flags, is_probe_leg=False):
15  selAcc = SelectionCA('CaloTau', isProbe=is_probe_leg)
16 
17  recoAcc = InViewRecoCA(name = 'tauCaloMVA',
18  InViewRoIs = 'CaloMVA_RoIs',
19  isProbe = is_probe_leg)
20 
21  recoAcc.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier(name=recoAcc.name+'RecoVDV',
22  DataObjects={('TrigRoiDescriptorCollection', 'StoreGateSvc+'+recoAcc.inputMaker().InViewRoIs.Path),
23  #( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+HLT_TAURoI'),
24  ('CaloBCIDAverage', 'StoreGateSvc+CaloBCIDAverage'),
25  ( 'xAOD::EventInfo' , 'StoreGateSvc+EventInfo' ),
26  ( 'SG::AuxElement' , 'StoreGateSvc+EventInfo.actualInteractionsPerCrossing'),
27  ( 'SG::AuxElement' , 'StoreGateSvc+EventInfo.averageInteractionsPerCrossing')}))
28 
29  from TrigCaloRec.TrigCaloRecConfig import tauTopoClusteringCfg
30  recoAcc.mergeReco(tauTopoClusteringCfg(flags,
31  RoIs = recoAcc.inputMaker().InViewRoIs))
32 
33  from TrigTauRec.TrigTauRecConfig import trigTauRecMergedCaloOnlyMVACfg
34  from TrigTauHypo.TrigTauHypoConfig import tauCaloRoiUpdaterCfg
35 
36  recoAcc.mergeReco(tauCaloRoiUpdaterCfg(flags,inputRoIs=recoAcc.inputMaker().InViewRoIs,clusters = 'HLT_TopoCaloClustersLC'))
37 
38  recoAcc.mergeReco(trigTauRecMergedCaloOnlyMVACfg(flags))
39 
40  from TrigGenericAlgs.TrigGenericAlgsConfig import ROBPrefetchingAlgCfg_Calo
41  robPrefetchAlg = ROBPrefetchingAlgCfg_Calo( flags, nameSuffix='IM_'+recoAcc.name+'_probe' if is_probe_leg else 'IM_'+recoAcc.name)
42  selAcc.mergeReco(recoAcc, robPrefetchCA=robPrefetchAlg)
43 
44  hypoAlg = CompFactory.TrigTauCaloHypoAlg("TauL2CaloMVAHypo",
45  taujets = "HLT_TrigTauRecMerged_CaloMVAOnly" )
46  selAcc.addHypoAlgo(hypoAlg)
47 
48  from TrigTauHypo.TrigTauHypoTool import TrigL2TauHypoToolFromDict
49  menuCA = MenuSequence(flags, selAcc, HypoToolGen=TrigL2TauHypoToolFromDict)
50  return (selAcc , menuCA)
51 
52 
53 @AccumulatorCache
54 def tauCaloMVAMenuSequenceGenCfg(flags, is_probe_leg=False):
55  (selAcc , menuCA) = _caloSeq(flags, is_probe_leg)
56  return menuCA
57 
58 
59 def _ftfCoreSeq(flags,name,is_probe_leg=False):
60  selAcc=SelectionCA('tau'+name+'FTF', isProbe=is_probe_leg)
61 
62  newRoITool = CompFactory.ViewCreatorFetchFromViewROITool(
63  RoisWriteHandleKey = recordable(flags.Tracking.ActiveConfig.roi),
64  InViewRoIs = 'UpdatedCaloRoI')
65 
66  # Resize the RoI before running the tracking to either 'tauCore' or 'tauIso'
67  newRoITool.doResize = True
68  newRoITool.RoIEtaWidth = flags.Tracking.ActiveConfig.etaHalfWidth
69  newRoITool.RoIPhiWidth = flags.Tracking.ActiveConfig.phiHalfWidth
70  newRoITool.RoIZedWidth = flags.Tracking.ActiveConfig.zedHalfWidth
71 
72 
73  from TrigGenericAlgs.TrigGenericAlgsConfig import ROBPrefetchingAlgCfg_Si
74  from TriggerJobOpts.TriggerConfigFlags import ROBPrefetching
75 
76  extraPrefetching = ROBPrefetching.TauCoreLargeRoI in flags.Trigger.ROBPrefetchingOptions and 'Core' in name
77  if extraPrefetching:
78  # Add extra RoI to prefetch ROBs for the subsequent tauIso step together with ROBs for tauCore
79  prefetchRoIUpdater = CompFactory.RoiUpdaterTool()
80  prefetchRoIUpdater.useBeamSpot = True
81  prefetchRoIUpdater.NSigma = 1.5
82  prefetchRoIUpdater.EtaWidth = flags.Trigger.InDetTracking.tauIso.etaHalfWidth
83  prefetchRoIUpdater.PhiWidth = flags.Trigger.InDetTracking.tauIso.phiHalfWidth
84  prefetchRoIUpdater.ZedWidth = flags.Trigger.InDetTracking.tauIso.zedHalfWidth
85  prefetchRoITool = CompFactory.ViewCreatorExtraPrefetchROITool()
86  prefetchRoITool.RoiCreator = newRoITool
87  prefetchRoITool.RoiUpdater = prefetchRoIUpdater
88  prefetchRoITool.ExtraPrefetchRoIsKey = str(newRoITool.RoisWriteHandleKey) + "_forPrefetching"
89  prefetchRoITool.PrefetchRoIsLinkName = "prefetchRoI"
90  prefetchRoITool.MergeWithOriginal = True
91 
92  fastInDetReco = InViewRecoCA('tauFastTrack'+name,RoITool = prefetchRoITool if extraPrefetching else newRoITool,
93  ViewFallThrough = True,
94  RequireParentView = True,
95  mergeUsingFeature = True,
96  isProbe = is_probe_leg)
97 
98  robPrefetchAlg = ROBPrefetchingAlgCfg_Si( flags, nameSuffix='IM_'+fastInDetReco.name)
99  if extraPrefetching:
100  robPrefetchAlg.RoILinkName = str(prefetchRoITool.PrefetchRoIsLinkName)
101 
102  from TrigInDetConfig.TrigInDetConfig import trigInDetFastTrackingCfg
103  fastInDetReco.mergeReco(trigInDetFastTrackingCfg(flags, roisKey=fastInDetReco.inputMaker().InViewRoIs, signatureName='tau'+name))
104  fastInDetReco.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier(
105  name='VDVFastTau'+name,
106  DataObjects={( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+{}'.format(fastInDetReco.inputMaker().InViewRoIs) ),
107  ( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloMVAOnly')}) )
108 
109  RoIs = fastInDetReco.inputMaker().InViewRoIs
110  TrackCollection = flags.Tracking.ActiveConfig.trkTracks_FTF
111 
112  from TrigTauHypo.TrigTauHypoConfig import tauTrackRoiUpdaterCfg,tauLRTRoiUpdaterCfg
113 
114  if 'LRT' in name:
115  fastInDetReco.mergeReco(tauLRTRoiUpdaterCfg(flags,inputRoIs = RoIs,tracks = TrackCollection))
116  else:
117  fastInDetReco.mergeReco(tauTrackRoiUpdaterCfg(flags,inputRoIs = RoIs,tracks = TrackCollection))
118 
119  selAcc.mergeReco(fastInDetReco, robPrefetchCA=robPrefetchAlg)
120  hypoAlg = CompFactory.TrigTrackPreSelHypoAlg('TrackPreSelHypoAlg_PassBy'+name,
121  RoIForIDReadHandleKey = 'UpdatedTrackLRTRoI' if 'LRT' in name else '',
122  trackcollection = flags.Tracking.ActiveConfig.trkTracks_FTF )
123  selAcc.addHypoAlgo(hypoAlg)
124  from TrigTauHypo.TrigTauHypoTool import TrigTauTrackHypoToolFromDict
125  menuCA = MenuSequence(flags, selAcc, HypoToolGen=TrigTauTrackHypoToolFromDict)
126  return (selAcc , menuCA)
127 
128 
129 @AccumulatorCache
130 def tauFTFTauCoreSequenceGenCfg(flags, is_probe_leg=False):
131  newflags = getFlagsForActiveConfig(flags,'tauCore',log)
132 
133  name='Core'
134  (selAcc , menuCA) = _ftfCoreSeq(newflags,name,is_probe_leg)
135  return menuCA
136 
137 
138 @AccumulatorCache
139 def tauFTFTauLRTSequenceGenCfg(flags, is_probe_leg=False):
140  newflags = getFlagsForActiveConfig(flags,'tauLRT',log)
141  name='LRT'
142  (selAcc , menuCA) = _ftfCoreSeq(newflags,name,is_probe_leg)
143  return menuCA
144 
145 
146 def _ftfTauIsoSeq(flags,name,is_probe_leg=False):
147  selAcc=SelectionCA('tau'+name+'FTF', isProbe=is_probe_leg)
148 
149  newRoITool = CompFactory.ViewCreatorFetchFromViewROITool(
150  RoisWriteHandleKey = recordable(flags.Tracking.ActiveConfig.roi),
151  InViewRoIs = 'UpdatedTrackRoI')
152 
153  from TrigGenericAlgs.TrigGenericAlgsConfig import ROBPrefetchingAlgCfg_Si
154 
155  fastInDetReco = InViewRecoCA('tauFastTrack'+name,RoITool = newRoITool,
156  RequireParentView = True,
157  ViewFallThrough = True,
158  isProbe = is_probe_leg)
159 
160  robPrefetchAlg = ROBPrefetchingAlgCfg_Si( flags, nameSuffix='IM_'+fastInDetReco.name)
161 
162  from TrigInDetConfig.TrigInDetConfig import trigInDetFastTrackingCfg
163  idTracking = trigInDetFastTrackingCfg(flags, roisKey=fastInDetReco.inputMaker().InViewRoIs, signatureName='tau'+name)
164  fastInDetReco.mergeReco(idTracking)
165  fastInDetReco.addRecoAlgo(CompFactory.AthViews.ViewDataVerifier(
166  name='VDVFastTau'+name,
167  DataObjects={( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+{}'.format(fastInDetReco.inputMaker().InViewRoIs) ),
168  ( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloMVAOnly')}) )
169 
170  selAcc.mergeReco(fastInDetReco, robPrefetchCA=robPrefetchAlg)
171  hypoAlg = CompFactory.TrigTrackPreSelHypoAlg('TrackPreSelHypoAlg_PassBy'+name,
172  trackcollection = flags.Tracking.ActiveConfig.trkTracks_FTF )
173  selAcc.addHypoAlgo(hypoAlg)
174 
175  from TrigTauHypo.TrigTauHypoTool import TrigTauTrackHypoToolFromDict
176  menuCA = MenuSequence(flags, selAcc, HypoToolGen=TrigTauTrackHypoToolFromDict)
177  return (selAcc , menuCA)
178 
179 
180 @AccumulatorCache
181 def tauFTFTauIsoSequenceGenCfg(flags, is_probe_leg=False):
182  newflags = getFlagsForActiveConfig(flags,'tauIso',log)
183  name = 'Iso'
184  (selAcc , menuCA) = _ftfTauIsoSeq(newflags,name,is_probe_leg)
185  return menuCA
186 
187 
188 def _precTrackSeq(flags,name,is_probe_leg=False):
189  selAcc=SelectionCA('tau'+name+'Track', isProbe=is_probe_leg)
190 
191  recoAcc = InViewRecoCA(name = 'prec'+name+'Track',
192  RoITool = CompFactory.ViewCreatorPreviousROITool(),
193  InViewRoIs = 'tauFastTrack'+name,
194  RequireParentView = True,
195  ViewFallThrough = True,
196  isProbe = is_probe_leg)
197 
198  from TrigInDetConfig.TrigInDetConfig import trigInDetPrecisionTrackingCfg
199  precTracking = trigInDetPrecisionTrackingCfg(flags, rois=recoAcc.inputMaker().InViewRoIs, signatureName='tau'+name)
200  recoAcc.mergeReco(precTracking)
201 
202  ViewVerifyTrk = CompFactory.AthViews.ViewDataVerifier(
203  name='VDVPrecTrkTau'+name,
204  DataObjects = {( 'xAOD::TrackParticleContainer' , 'StoreGateSvc+%s' % flags.Tracking.ActiveConfig.tracks_FTF ),
205  ( 'SG::AuxElement' , 'StoreGateSvc+EventInfo.averageInteractionsPerCrossing' ),
206  ( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+{}'.format(recoAcc.inputMaker().InViewRoIs) ),
207  ( 'xAOD::TauTrackContainer' , 'StoreGateSvc+HLT_tautrack_dummy' ),
208  ( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloMVAOnly' ),
209  ( 'xAOD::IParticleContainer' , 'StoreGateSvc+%s' % flags.Tracking.ActiveConfig.tracks_FTF ),
210  })
211 
212  recoAcc.addRecoAlgo(ViewVerifyTrk)
213 
214  precTracks = flags.Tracking.ActiveConfig.tracks_IDTrig
215 
216  from TrigInDetConfig.TrigInDetConfig import trigInDetVertexingCfg
217  recoAcc.mergeReco(trigInDetVertexingCfg(flags,precTracks,flags.Tracking.ActiveConfig.vertex))
218 
219  selAcc.mergeReco(recoAcc)
220  hypoAlg = CompFactory.TrigTrkPrecHypoAlg('TrkPrec'+name+'HypoAlg',
221  trackparticles = precTracks,
222  RoIForIDReadHandleKey = '' )
223  selAcc.addHypoAlgo(hypoAlg)
224 
225  from TrigTauHypo.TrigTauHypoTool import TrigTrkPrecHypoToolFromDict
226  menuCA = MenuSequence(flags, selAcc, HypoToolGen=TrigTrkPrecHypoToolFromDict)
227  return (selAcc , menuCA)
228 
229 
230 @AccumulatorCache
231 def tauPrecTrackIsoSequenceGenCfg(flags, is_probe_leg=False):
232  newflags = getFlagsForActiveConfig(flags,'tauIso',log)
233  name = 'Iso'
234  (selAcc , menuCA) = _precTrackSeq(newflags,name,is_probe_leg)
235  return menuCA
236 
237 
238 @AccumulatorCache
239 def tauPrecTrackLRTSequenceGenCfg(flags, is_probe_leg=False):
240  newflags = getFlagsForActiveConfig(flags,'tauLRT',log)
241  name = 'LRT'
242  (selAcc , menuCA) = _precTrackSeq(newflags,name,is_probe_leg)
243  return menuCA
244 
245 
246 def _tauPrecSeq(flags,name,is_probe_leg=False):
247  selAcc=SelectionCA('tauPrec'+name, isProbe=is_probe_leg)
248 
249  InViewName = 'Iso' if 'LRT' not in name else 'LRT'
250  recoAcc = InViewRecoCA(name = 'prec'+name+'Tau',
251  RoITool = CompFactory.ViewCreatorPreviousROITool(),
252  InViewRoIs = 'tauFastTrack'+InViewName,
253  RequireParentView = True,
254  ViewFallThrough = True,
255  isProbe = is_probe_leg)
256 
257  ViewVerifyID = CompFactory.AthViews.ViewDataVerifier(
258  name='VDVPrecTau'+name,
259  DataObjects = {( 'TrigRoiDescriptorCollection' , 'StoreGateSvc+{}'.format(recoAcc.inputMaker().InViewRoIs)),
260  ( 'SG::AuxElement' , 'StoreGateSvc+EventInfo.averageInteractionsPerCrossing' ),
261  ( 'xAOD::VertexContainer', 'StoreGateSvc+'+flags.Tracking.ActiveConfig.vertex),
262  ( 'xAOD::TauTrackContainer' , 'StoreGateSvc+HLT_tautrack_dummy' ),
263  ( 'xAOD::TauJetContainer' , 'StoreGateSvc+HLT_TrigTauRecMerged_CaloMVAOnly' ),
264  ( 'xAOD::TrackParticleContainer' , 'StoreGateSvc+'+flags.Tracking.ActiveConfig.tracks_IDTrig )})
265 
266  recoAcc.addRecoAlgo(ViewVerifyID)
267 
268  from TrigTauRec.TrigTauRecConfig import trigTauRecMergedPrecisionMVACfg
269  tauPrecisionAlg = trigTauRecMergedPrecisionMVACfg(flags, name, inputRoIs = recoAcc.inputMaker().InViewRoIs, tracks = flags.Tracking.ActiveConfig.tracks_IDTrig)
270 
271  recoAcc.mergeReco(tauPrecisionAlg)
272 
273  selAcc.mergeReco(recoAcc)
274  hypoAlg = CompFactory.TrigEFTauMVHypoAlg('EFTauMVHypoAlg'+name,
275  taujetcontainer = 'HLT_TrigTauRecMerged_'+name)
276  selAcc.addHypoAlgo(hypoAlg)
277 
278  from TrigTauHypo.TrigTauHypoTool import TrigEFTauMVHypoToolFromDict
279  menuCA = MenuSequence(flags, selAcc, HypoToolGen=TrigEFTauMVHypoToolFromDict)
280  return (selAcc , menuCA)
281 
282 
283 @AccumulatorCache
284 def tauTrackTwoMVASequenceGenCfg(flags, is_probe_leg=False):
285  newflags = getFlagsForActiveConfig(flags,'tauIso',log)
286  name = 'MVA'
287  (selAcc , menuCA) = _tauPrecSeq(newflags,name,is_probe_leg)
288  return menuCA
289 
290 
291 @AccumulatorCache
292 def tauTrackTwoLLPSequenceGenCfg(flags, is_probe_leg=False):
293  newflags = getFlagsForActiveConfig(flags,'tauIso',log)
294  name = 'LLP'
295  (selAcc , menuCA) = _tauPrecSeq(newflags,name,is_probe_leg)
296  return menuCA
297 
298 
299 @AccumulatorCache
300 def tauTrackLRTSequenceGenCfg(flags, is_probe_leg=False):
301  newflags = getFlagsForActiveConfig(flags,'tauLRT',log)
302  name = 'LRT'
303  (selAcc , menuCA) = _tauPrecSeq(newflags,name,is_probe_leg)
304  return menuCA
python.HLT.Tau.TauMenuSequences.tauFTFTauLRTSequenceGenCfg
def tauFTFTauLRTSequenceGenCfg(flags, is_probe_leg=False)
Definition: TauMenuSequences.py:139
vtune_athena.format
format
Definition: vtune_athena.py:14
TrigTauHypoConfig.tauLRTRoiUpdaterCfg
def tauLRTRoiUpdaterCfg(flags, inputRoIs, tracks)
Definition: TrigTauHypoConfig.py:31
python.HLT.Tau.TauMenuSequences.tauTrackTwoMVASequenceGenCfg
def tauTrackTwoMVASequenceGenCfg(flags, is_probe_leg=False)
Definition: TauMenuSequences.py:284
python.HLT.Tau.TauMenuSequences._caloSeq
def _caloSeq(flags, is_probe_leg=False)
Definition: TauMenuSequences.py:14
TrigTauHypoConfig.tauTrackRoiUpdaterCfg
def tauTrackRoiUpdaterCfg(flags, inputRoIs, tracks)
Definition: TrigTauHypoConfig.py:17
python.TrigGenericAlgsConfig.ROBPrefetchingAlgCfg_Calo
def ROBPrefetchingAlgCfg_Calo(flags, nameSuffix, **kwargs)
Definition: TrigGenericAlgsConfig.py:60
python.HLT.Tau.TauMenuSequences._ftfCoreSeq
def _ftfCoreSeq(flags, name, is_probe_leg=False)
Definition: TauMenuSequences.py:59
python.TrigInDetConfig.trigInDetPrecisionTrackingCfg
def trigInDetPrecisionTrackingCfg(inflags, rois, signatureName, in_view=True)
precision tracking
Definition: TrigInDetConfig.py:113
python.TrigInDetConfig.trigInDetFastTrackingCfg
def trigInDetFastTrackingCfg(inflags, roisKey="EMRoIs", signatureName='', patternMode='FTF', in_view=True)
Definition: TrigInDetConfig.py:54
python.utils.getFlagsForActiveConfig
AthConfigFlags getFlagsForActiveConfig(AthConfigFlags flags, str config_name, logging.Logger log)
Definition: Trigger/TrigTools/TrigInDetConfig/python/utils.py:9
TrigTauRecConfig.trigTauRecMergedPrecisionMVACfg
def trigTauRecMergedPrecisionMVACfg(flags, name='', inputRoIs='', tracks='')
Definition: TrigTauRecConfig.py:3
python.HLT.Tau.TauMenuSequences.tauPrecTrackLRTSequenceGenCfg
def tauPrecTrackLRTSequenceGenCfg(flags, is_probe_leg=False)
Definition: TauMenuSequences.py:239
python.HLT.Tau.TauMenuSequences._tauPrecSeq
def _tauPrecSeq(flags, name, is_probe_leg=False)
Definition: TauMenuSequences.py:246
python.TrigGenericAlgsConfig.ROBPrefetchingAlgCfg_Si
def ROBPrefetchingAlgCfg_Si(flags, nameSuffix, **kwargs)
Definition: TrigGenericAlgsConfig.py:57
python.TrigInDetConfig.trigInDetVertexingCfg
def trigInDetVertexingCfg(flags, inputTracks, outputVtx)
Definition: TrigInDetConfig.py:147
python.HLT.Tau.TauMenuSequences.tauCaloMVAMenuSequenceGenCfg
def tauCaloMVAMenuSequenceGenCfg(flags, is_probe_leg=False)
Definition: TauMenuSequences.py:54
python.HLT.Tau.TauMenuSequences._ftfTauIsoSeq
def _ftfTauIsoSeq(flags, name, is_probe_leg=False)
Definition: TauMenuSequences.py:146
python.HLT.Tau.TauMenuSequences._precTrackSeq
def _precTrackSeq(flags, name, is_probe_leg=False)
Definition: TauMenuSequences.py:188
python.HLT.Tau.TauMenuSequences.tauTrackLRTSequenceGenCfg
def tauTrackLRTSequenceGenCfg(flags, is_probe_leg=False)
Definition: TauMenuSequences.py:300
python.HLT.Tau.TauMenuSequences.tauFTFTauIsoSequenceGenCfg
def tauFTFTauIsoSequenceGenCfg(flags, is_probe_leg=False)
Definition: TauMenuSequences.py:181
python.TriggerEDM.recordable
def recordable(arg, runVersion=3)
Definition: TriggerEDM.py:34
str
Definition: BTagTrackIpAccessor.cxx:11
TrigCaloRecConfig.tauTopoClusteringCfg
def tauTopoClusteringCfg(flags, RoIs)
TauSpecific TopoClustering####################################.
Definition: TrigCaloRecConfig.py:429
python.HLT.Tau.TauMenuSequences.tauPrecTrackIsoSequenceGenCfg
def tauPrecTrackIsoSequenceGenCfg(flags, is_probe_leg=False)
Definition: TauMenuSequences.py:231
python.HLT.Tau.TauMenuSequences.tauTrackTwoLLPSequenceGenCfg
def tauTrackTwoLLPSequenceGenCfg(flags, is_probe_leg=False)
Definition: TauMenuSequences.py:292
TrigTauRecConfig.trigTauRecMergedCaloOnlyMVACfg
def trigTauRecMergedCaloOnlyMVACfg(flags)
Definition: TrigTauRecConfig.py:101
python.HLT.Tau.TauMenuSequences.tauFTFTauCoreSequenceGenCfg
def tauFTFTauCoreSequenceGenCfg(flags, is_probe_leg=False)
Definition: TauMenuSequences.py:130
TrigTauHypoConfig.tauCaloRoiUpdaterCfg
def tauCaloRoiUpdaterCfg(flags, inputRoIs, clusters)
Definition: TrigTauHypoConfig.py:7