6def L0MuonTGCSimCfg(flags, name="L0Muon.TGCSimulation", **kwargs):
7
8 result = ComponentAccumulator()
9
10 if "CandidateBuilderTool" not in kwargs:
11 from L0MuonS1TGCFloatingTools.L0MuonS1TGCFloatingToolsConfig import (
12 TgcL0FloatingCandidateBuilderToolCfg,
13 )
14 kwargs["CandidateBuilderTool"] = result.popToolsAndMerge(
15 TgcL0FloatingCandidateBuilderToolCfg(flags)
16 )
17
18 if "InnerCoincidenceTool" not in kwargs:
19 from L0MuonS1TGCFloatingTools.L0MuonS1TGCFloatingToolsConfig import (
20 TgcL0FloatingInnerCoincidenceToolCfg,
21 )
22 kwargs["InnerCoincidenceTool"] = result.popToolsAndMerge(
23 TgcL0FloatingInnerCoincidenceToolCfg(flags)
24 )
25
26 if "TrackSelectorTool" not in kwargs:
27 from L0MuonS1TGCFloatingTools.L0MuonS1TGCFloatingToolsConfig import (
28 TgcL0FloatingTrackSelectorToolCfg,
29 )
30 kwargs["TrackSelectorTool"] = result.popToolsAndMerge(
31 TgcL0FloatingTrackSelectorToolCfg(flags)
32 )
33
34 alg = CompFactory.L0Muon.TGCSimulation(name=name, **kwargs)
35
36 from AthenaMonitoringKernel.GenericMonitoringTool import GenericMonitoringTool
38 monTool.defineHistogram(
39 "nTgcRdoCollections",
40 path="EXPERT",
41 type="TH1F",
42 title=";TGC RDO collections;Events",
43 xbins=50,
44 xmin=0,
45 xmax=100,
46 )
47 alg.MonTool = monTool
48
49 histSvc = CompFactory.THistSvc(
50 Output=["EXPERT DATAFILE='" + name + ".root' OPT='RECREATE'"]
51 )
52 result.addEventAlgo(alg)
53 result.addService(histSvc)
54 return result
55
56