42def HGTD_TruthOverlayCfg(flags, name="HGTD_SDOOverlay", **kwargs):
43 """Return a ComponentAccumulator for the HGTD SDO overlay algorithm"""
44 acc = ComponentAccumulator()
45
46
47 if not flags.Input.isMC:
48 kwargs.setdefault("BkgInputKey", "")
49 else:
50 kwargs.setdefault("BkgInputKey", f"{flags.Overlay.BkgPrefix}HGTD_SDO_Map")
51
52 if kwargs["BkgInputKey"]:
53 from SGComps.SGInputLoaderConfig import SGInputLoaderCfg
54 acc.merge(SGInputLoaderCfg(flags, [f'InDetSimDataCollection#{kwargs["BkgInputKey"]}']))
55
56 kwargs.setdefault("SignalInputKey", f"{flags.Overlay.SigPrefix}HGTD_SDO_Map")
57 kwargs.setdefault("OutputKey", "HGTD_SDO_Map")
58
59
60 acc.addEventAlgo(CompFactory.InDetSDOOverlay(name, **kwargs))
61
62
63 if flags.Output.doWriteRDO:
64 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
65 acc.merge(OutputStreamCfg(flags, "RDO", ItemList=[
66 "InDetSimDataCollection#HGTD_SDO_Map"
67 ]))
68
69 if flags.Output.doWriteRDO_SGNL:
70 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
71 acc.merge(OutputStreamCfg(flags, "RDO_SGNL", ItemList=[
72 f"InDetSimDataCollection#{flags.Overlay.SigPrefix}HGTD_SDO_Map"
73 ]))
74
75 return acc
76
77