11def ActsEgammaSelectedTrackCopyCfg(flags, name="ActsEgammaSelectedTrackCopy", **kwargs):
12 acc = ComponentAccumulator()
13
14 assert flags.Acts.TrackingGeometry.UseBlueprint, "Must use ACTS Gen3 geometry"
15 assert flags.Detector.GeometryCalo, "Calorimeter must be enabled"
16
17
18
19 assert flags.Detector.GeometryITk
20
21 if "TrackingGeometryTool" not in kwargs:
22 from ActsConfig.ActsGeometryConfig import ActsTrackingGeometryToolCfg
23 kwargs["TrackingGeometryTool"] = acc.getPrimaryAndMerge(ActsTrackingGeometryToolCfg(flags))
24
25 if "egammaCaloClusterSelector" not in kwargs:
26 from egammaCaloTools.egammaCaloToolsConfig import (
27 egammaCaloClusterSelectorGSFCfg,
28 )
29
30 kwargs["egammaCaloClusterSelector"] = acc.popToolsAndMerge(
31 egammaCaloClusterSelectorGSFCfg(flags)
32 )
33
34 if 'ExtrapolationTool' not in kwargs:
35 from ActsConfig.ActsGeometryConfig import ActsExtrapolationToolCfg
36 kwargs.setdefault(
37 "ExtrapolationTool",
38 acc.popToolsAndMerge(ActsExtrapolationToolCfg(flags, MaxSteps=10000)),
39 )
40
41 kwargs.setdefault("ClusterContainerName",
42 flags.Egamma.Keys.Internal.EgammaTopoClusters)
43 kwargs.setdefault("TrackParticleContainerName",
44 flags.Egamma.Keys.Input.TrackParticles)
45 kwargs.setdefault("OutputTrkPartContainerName",
46 flags.Egamma.Keys.Output.TrkPartContainerName)
47
48 kwargs.setdefault(
49 "ExtraInputs",
50 [
51 (
52 "InDetDD::SiDetectorElementCollection",
53 "ConditionStore+ITkPixelDetectorElementCollection",
54 ),
55 (
56 "InDetDD::SiDetectorElementCollection",
57 "ConditionStore+ITkStripDetectorElementCollection",
58 ),
59 ],
60 )
61
62 actsEgseltrkcpAlg = CompFactory.ActsEgammaSelectedTrackCopy(name, **kwargs)
63
64 acc.addEventAlgo(actsEgseltrkcpAlg)
65 return acc
66
67