ATLAS Offline Software
PrecisionTracks_GSFRefittedMenuSequences.py
Go to the documentation of this file.
1 #
2 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 #
4 
5 from TriggerMenuMT.HLT.Config.MenuComponents import MenuSequence, SelectionCA, InViewRecoCA
6 from AthenaConfiguration.AccumulatorCache import AccumulatorCache
7 from AthenaConfiguration.ComponentFactory import CompFactory
8 
9 
10 def tag(ion):
11  return 'precision' + ('HI' if ion is True else '') + 'Tracking_GSFRefitted'
12 
13 @AccumulatorCache
14 def precisionTracks_GSFRefittedSequenceGenCfg(flags, name='Electron', ion=False, variant='_GSF', is_probe_leg = False):
15  """ sixth step: GSF refitting of precision track....."""
16 
17  inViewRoIs = "precisionTracks_GSFRefitted"+variant
18 
19  roiTool = CompFactory.ViewCreatorPreviousROITool()
20  reco = InViewRecoCA(tag(ion)+variant,
21  RoITool = roiTool,
22  InViewRoIs = inViewRoIs,
23  RequireParentView = True,
24  mergeUsingFeature = True,
25  ViewFallThrough = True,
26  isProbe=is_probe_leg)
27 
28  # calling GSF refitter
29  from TriggerMenuMT.HLT.Electron.PrecisionTracks_GSFRefittedSequence import precisionTracks_GSFRefitted
30  precisionTracks_GSFRefittedInViewSequence = precisionTracks_GSFRefitted(flags, inViewRoIs, ion, variant)
31 
32  reco.mergeReco(precisionTracks_GSFRefittedInViewSequence)
33 
34  selAcc = SelectionCA(name + tag(ion) +variant, isProbe=is_probe_leg)
35  selAcc.mergeReco(reco)
36 
37  thePrecisionTrack_GSFRefittedHypo = CompFactory.TrigStreamerHypoAlg(name + tag(ion) + "Hypo" + variant)
38  thePrecisionTrack_GSFRefittedHypo.FeatureIsROI = False
39  selAcc.addHypoAlgo(thePrecisionTrack_GSFRefittedHypo)
40  def acceptAllHypoToolGen(chainDict):
41  return CompFactory.TrigStreamerHypoTool(chainDict["chainName"], Pass = True)
42  return MenuSequence(flags,selAcc,HypoToolGen=acceptAllHypoToolGen)
43 
44 
45 def precisionTracks_GSFRefitted_LRTSequenceGenCfg(flags, name='Electron', is_probe_leg=False):
46  return precisionTracks_GSFRefittedSequenceGenCfg(flags, name, is_probe_leg=is_probe_leg, ion=False, variant='_LRTGSF')
python.HLT.Electron.PrecisionTracks_GSFRefittedSequence.precisionTracks_GSFRefitted
def precisionTracks_GSFRefitted(flags, RoIs, ion=False, variant='')
Definition: PrecisionTracks_GSFRefittedSequence.py:11
python.HLT.Electron.PrecisionTracks_GSFRefittedMenuSequences.precisionTracks_GSFRefitted_LRTSequenceGenCfg
def precisionTracks_GSFRefitted_LRTSequenceGenCfg(flags, name='Electron', is_probe_leg=False)
Definition: PrecisionTracks_GSFRefittedMenuSequences.py:45
python.HLT.Electron.PrecisionTracks_GSFRefittedMenuSequences.precisionTracks_GSFRefittedSequenceGenCfg
def precisionTracks_GSFRefittedSequenceGenCfg(flags, name='Electron', ion=False, variant='_GSF', is_probe_leg=False)
Definition: PrecisionTracks_GSFRefittedMenuSequences.py:14
python.HLT.Electron.PrecisionTracks_GSFRefittedMenuSequences.tag
def tag(ion)
Definition: PrecisionTracks_GSFRefittedMenuSequences.py:10