3 from AthenaConfiguration.AthConfigFlags
import AthConfigFlags
4 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
5 from AthenaCommon.Logging
import logging
8 def __init__(self, flags : AthConfigFlags, signature : str, rois : str, inView : str):
17 self.
log = logging.getLogger(
"InnerTrackerTrigSequence")
19 def sequence(self, recoType : str) -> ComponentAccumulator:
24 ca.merge(self.viewDataVerifier(self.
inView))
26 if recoType ==
"dataPreparation":
27 ca.merge(self.dataPreparation())
30 if recoType ==
"spacePointFormation":
31 ca.merge(self.dataPreparation())
32 ca.merge(self.spacePointFormation())
35 if recoType ==
"FastTrackFinder":
36 ca.merge(self.dataPreparation())
37 ca.merge(self.spacePointFormation())
38 ca.merge(self.fastTrackFinder())
41 if recoType ==
"Offline":
42 ca.merge(self.dataPreparation())
43 ca.merge(self.spacePointFormation())
44 ca.merge(self.offlinePattern())
47 if recoType ==
"OfflineNoDataPrep":
48 ca.merge(self.viewDataVerifierAfterDataPrep())
49 ca.merge(self.offlinePattern())
55 extraFlags : AthConfigFlags =
None,
56 inputTracksName : str =
None) -> ComponentAccumulator:
58 return ComponentAccumulator of the FTF instance
59 if another instance of flags is passed in this is for a second instance of FTF
60 if inputTracksName is specified it is also a second instance but is invoked as first? what about the previous steps? TODO
68 signature = flags.Tracking.ActiveConfig.input_name
72 ftfargs[
"inputTracksName"] = self.
flags.Tracking.ActiveConfig.trkTracks_FTF
74 signature = flags.Tracking.ActiveConfig.name
76 ftfargs[
"inputTracksName"] = inputTracksName
78 from TrigFastTrackFinder.TrigFastTrackFinderConfig
import TrigFastTrackFinderCfg
80 self.
rois, **ftfargs))
85 def sequenceAfterPattern(self, recoType : str =
"PrecisionTracking", rois : str =
"") -> ComponentAccumulator:
92 self.
log.
info(f
"Sequence after patternReco for signature: {self.signature} RoIs: {self.rois} inview: {self.inView} with new RoIs {self.lastRois} - they must be a subvolume.")
94 ca.merge(self.ambiguitySolver())
95 if self.
flags.Tracking.ActiveConfig.doTRT:
96 ca.merge(self.trtExtensions())
97 ca.merge(self.xAODParticleCreation())