8def InDetExtensionProcessorCfg(flags, name="InDetExtensionProcessor", **kwargs):
9 acc = ComponentAccumulator()
10 doTrackOverlay = flags.TrackOverlay.isTrackOverlaySeq
11 prefix = 'TrackOverlay_' if doTrackOverlay else ''
12 if "TrackFitter" not in kwargs:
13 if flags.Tracking.ActiveConfig.extension != "LowPt":
14 from TrkConfig.CommonTrackFitterConfig import (
15 InDetTrackFitterHoleSearchCfg)
16 InDetExtensionFitter = acc.popToolsAndMerge(
17 InDetTrackFitterHoleSearchCfg(
18 flags,
19 name=('InDetTrackFitter_TRTExtension' +
20 flags.Tracking.ActiveConfig.extension)))
21 else:
22 from TrkConfig.CommonTrackFitterConfig import (
23 InDetTrackFitterLowPtHoleSearchCfg)
24 InDetExtensionFitter = acc.popToolsAndMerge(
25 InDetTrackFitterLowPtHoleSearchCfg(
26 flags,
27 name=('InDetTrackFitter_TRTExtension' +
28 flags.Tracking.ActiveConfig.extension)))
29
30 acc.addPublicTool(InDetExtensionFitter)
31 kwargs.setdefault("TrackFitter", InDetExtensionFitter)
32
33 if "ScoringTool" not in kwargs:
34 if flags.Beam.Type is BeamType.Cosmics:
35 from InDetConfig.InDetTrackScoringToolsConfig import (
36 InDetCosmicExtenScoringToolCfg)
37 InDetExtenScoringTool = acc.popToolsAndMerge(
38 InDetCosmicExtenScoringToolCfg(flags))
39 else:
40 from InDetConfig.InDetTrackScoringToolsConfig import (
41 InDetExtenScoringToolCfg)
42 InDetExtenScoringTool = acc.popToolsAndMerge(
43 InDetExtenScoringToolCfg(flags))
44
45 acc.addPublicTool(InDetExtenScoringTool)
46 kwargs.setdefault("ScoringTool", InDetExtenScoringTool)
47
48 if "TrackSummaryTool" not in kwargs:
49 from TrkConfig.TrkTrackSummaryToolConfig import InDetTrackSummaryToolCfg
50 kwargs.setdefault("TrackSummaryTool", acc.popToolsAndMerge(
51 InDetTrackSummaryToolCfg(flags)))
52
53 kwargs.setdefault("suppressHoleSearch", False)
54 kwargs.setdefault("tryBremFit", flags.Tracking.ActiveConfig.doBremRecoverySi)
55 kwargs.setdefault("caloSeededBrem", flags.Tracking.doCaloSeededBrem)
56 kwargs.setdefault("pTminBrem", flags.Tracking.ActiveConfig.minPTBrem)
57 kwargs.setdefault("RefitPrds", False)
58 kwargs.setdefault("matEffects",
59 flags.Tracking.materialInteractionsType
60 if flags.Tracking.materialInteractions else 0)
61 kwargs.setdefault("Cosmics", flags.Beam.Type is BeamType.Cosmics)
62
63 acc.addEventAlgo(CompFactory.InDet.InDetExtensionProcessor(
64 prefix + name + flags.Tracking.ActiveConfig.extension, **kwargs))
65 return acc
66
67