19 if len(flags.Tracking.recoChain) != 1:
20 raise ValueError(f
"Conflicting reco configuration: Tracking.recoChain should have only one element but we found {flags.Tracking.recoChain}")
23 from TrkConfig.TrkConfigFlags
import ITkPrimaryPassConfig
24 if flags.Tracking.ITkPrimaryPassConfig
is ITkPrimaryPassConfig.ActsFast:
25 if not flags.Tracking.doITkFastTracking:
26 raise ValueError(f
"Main pass is set to Fast Tracking but Tracking.doITkFastTracking is set to {flags.Tracking.doITkFastTracking}")
28 if flags.Tracking.doITkFastTracking:
29 raise ValueError(f
"Main pass is NOT set to Fast Tracking but Tracking.doITkFastTracking is set to {flags.Tracking.doITkFastTracking}")
32 trackingPasses += [flags.cloneAndReplace(
33 "Tracking.ActiveConfig",
34 f
"Tracking.{flags.Tracking.ITkPrimaryPassConfig.value}Pass")]
37 if flags.Acts.doLargeRadius:
38 trackingPasses += [flags.cloneAndReplace(
39 "Tracking.ActiveConfig",
40 "Tracking.ITkActsLargeRadiusPass")]
43 if flags.Acts.doITkConversion:
45 if not flags.Detector.EnableCalo:
46 raise ValueError(
"Problem in the job configuration: required reconstruction of photon conversion tracks but Calorimeter Detector is not enabled")
47 trackingPasses += [flags.cloneAndReplace(
48 "Tracking.ActiveConfig",
49 "Tracking.ITkActsConversionPass")]
52 if flags.Acts.doLowPt:
53 trackingPasses += [flags.cloneAndReplace(
54 "Tracking.ActiveConfig",
55 "Tracking.ITkActsLowPtPass")]
57 print(
"List of scheduled passes:")
58 for trackingPass
in trackingPasses:
59 print(f
'- {trackingPass.Tracking.ActiveConfig.extension}')