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