8 result = ComponentAccumulator()
9 from MuonConfig.MuonDataPrepConfig
import PrimaryMeasContNamesCfg
10 kwargs.setdefault(
"PrdContainer", PrimaryMeasContNamesCfg(flags))
11 if flags.Muon.setupTruthAlgorithms:
12 from MuonObjectMarker.ObjectMarkerConfig
import TruthMeasMarkerAlgCfg
13 markerAlg = result.getPrimaryAndMerge(TruthMeasMarkerAlgCfg(flags))
14 kwargs.setdefault(
"TruthSegDecors", [markerAlg.SegmentLinkKey])
15 kwargs[
"TruthSegDecors"] += [markerAlg.SegmentLinkKey]
16 the_tool = CompFactory.MuonValR4.PatternVisualizationTool(name, **kwargs)
17 result.setPrivateTools(the_tool)
29 result = ComponentAccumulator()
30 kwargs.setdefault(
"isMC", flags.Input.isMC)
33 if flags.Detector.GeometryMDT
or flags.Detector.GeometryRPC
or flags.Detector.GeometryTGC:
34 seedKeys+=[
"MuonHoughStationSegmentSeeds"]
35 spKeys+=[
"MuonSpacePoints"]
36 if flags.Detector.GeometryMM
or flags.Detector.GeometrysTGC:
37 seedKeys+=[
"MuonNswSegmentSeeds"]
38 spKeys+=[
"NSWSpacePoints"]
39 if not flags.Input.isMC:
40 kwargs.setdefault(
"TruthSegmentKey",
"")
41 kwargs.setdefault(
"SegmentSeedKeys", seedKeys)
42 kwargs.setdefault(
"SpacePointKeys", spKeys)
44 theAlg = CompFactory.MuonValR4.MuonHoughTransformTester(name, **kwargs)
45 result.addEventAlgo(theAlg, primary=
True)
49 result = ComponentAccumulator()
50 from MuonConfig.MuonSegmentFindingConfig
import MuonLayerHoughAlgCfg, MuonSegmentFinderAlgCfg, MuonSegmentCnvAlgCfg
52 result.merge(MuonLayerHoughAlgCfg(flags))
53 result.merge(MuonSegmentFinderAlgCfg(flags, NSWSegmentCollectionName=
""))
55 from MuonConfig.MuonTrackBuildingConfig
import MuPatTrackBuilderCfg
56 result.merge(MuPatTrackBuilderCfg(flags))
57 from xAODTrackingCnv.xAODTrackingCnvConfig
import MuonStandaloneTrackParticleCnvAlgCfg
58 result.merge(MuonStandaloneTrackParticleCnvAlgCfg(flags))
60 from MuonCombinedConfig.MuonCombinedReconstructionConfig
import MuonCombinedMuonCandidateAlgCfg, MuonSegContainerMergerAlgCfg
61 result.merge(MuonCombinedMuonCandidateAlgCfg(flags))
64 result.merge(MuonSegContainerMergerAlgCfg(flags, TagMaps =[], InputSegmentContainers =[
"TrackMuonSegments"]))
66 result.merge(MuonSegmentCnvAlgCfg(flags,
67 SegmentContainerName=
"TrkMuonSegments",
68 xAODContainerName=
"MuonSegments"))
70 result.merge(MuonSegmentCnvAlgCfg(flags,
71 name =
"UnAssocMuonSegmentAlg",
72 SegmentContainerName=
"UnAssocMuonTrkSegments",
73 xAODContainerName=
"UnAssocMuonSegments"))
76 from MuonCombinedConfig.MuonCombinedReconstructionConfig
import MuonCreatorAlgCfg
77 result.merge(MuonCreatorAlgCfg(flags, TagMaps=[], CreateSAmuons =
True, MakeClusters=
False,
78 ClusterContainerName=
""))
80 result.getEventAlgo(
"MuonCreatorAlg").MuonCreatorTool.RequireMSOEforSA =
False
83 from DerivationFrameworkMuons.MuonsToolsConfig
import DiMuonTaggingAlgCfg
84 result.merge(DiMuonTaggingAlgCfg(flags, applyTrigger=
False, Mu1RequireQual =
False, Mu2RequireQual =
False,
85 UseTrackProbe =
False, InvariantMassLow=60. * 1000.,
86 TrackContainerKey =
"MuonSpectrometerTrackParticles", BranchPrefix=
"HabemusZ"))
89 from MuonObjectMarker.ObjectMarkerConfig
import SegmentMarkerAlgCfg, MeasurementMarkerAlgCfg
90 result.merge(SegmentMarkerAlgCfg(flags, SelectMuons=
"passHabemusZ", SegmentKey=
"MuonSegments"))
92 result.merge(MeasurementMarkerAlgCfg(flags, SelectSegments=
"passHabemusZ",
93 SegmentKey=
"MuonSegments", SegmentLinkKey=
"HabemusZ"))
95 from MuonObjectMarker.ObjectMarkerConfig
import MuonSegmentFitParDecorAlgCfg
96 result.merge(MuonSegmentFitParDecorAlgCfg(flags, name=
"MuonSegmentDecorAlg_MuonSegments",
97 SegmentKey=
"MuonSegments"))
98 result.merge(MuonSegmentFitParDecorAlgCfg(flags, name=
"MuonSegmentDecorAlg_UnAssocMuonSegments",
99 SegmentKey=
"UnAssocMuonSegments"))
101 if flags.Muon.setupTruthAlgorithms:
102 from MuonTruthAlgsR4.MuonTruthAlgsConfig
import RecoSegmentTruthAssocCfg
103 result.merge(RecoSegmentTruthAssocCfg(flags,
104 name=
"TrkMuonSegmentsTruthMatchingAlg",
105 SegmentKey=
"MuonSegments"))
106 result.merge(RecoSegmentTruthAssocCfg(flags,
107 name=
"UnAssocSegmentsTruthMatchingAlg",
108 SegmentKey=
"UnAssocMuonSegments"))
111 from xAODMuonViewAlgs.ViewAlgsConfig
import SegmentViewAlgCfg
112 result.merge(SegmentViewAlgCfg(flags,
113 SegmentsKeys=[
"UnAssocMuonSegments",
"MuonSegments"],
114 ViewKey=
"LegacyChainSegments",
115 ExtraInputs = []
if not flags.Input.isMC
else [(
"SG::AuxVectorBase",
"UnAssocMuonSegments.truthParticleLink"),
116 (
"SG::AuxVectorBase",
"MuonSegments.truthParticleLink")]))
121 result = ComponentAccumulator()
122 from MuonPatternCnv.MuonPatternCnvConfig
import MuonPatternCnvAlgCfg
123 result.merge(MuonPatternCnvAlgCfg(flags,
124 PatternCombiKey=
"R4HoughPatterns",
125 HoughDataPerSecKey=
"R4HoughDataPerSec"))
126 from MuonConfig.MuonSegmentFindingConfig
import MuonSegmentFinderAlgCfg, MuonSegmentCnvAlgCfg
127 result.merge(MuonSegmentFinderAlgCfg(flags,
128 name=
"MuonSegmentFinderR4Pattern",
129 MuonLayerHoughCombisKey=
"R4HoughPatterns",
130 SegmentCollectionName=
"TrkMuonSegmentsFromHoughR4",
131 NSWSegmentCollectionName=
""))
132 result.merge(MuonSegmentCnvAlgCfg(flags,
"MuonSegmentCnvAlgFromHoughR4",
133 SegmentContainerName=
"TrkMuonSegmentsFromHoughR4",
134 xAODContainerName=
"MuonSegmentsFromHoughR4"))
136 from MuonConfig.MuonTrackBuildingConfig
import MuPatTrackBuilderCfg
138 from xAODTrackingCnv.xAODTrackingCnvConfig
import MuonStandaloneTrackParticleCnvAlgCfg
139 result.merge(MuPatTrackBuilderCfg(flags, name=
"MuPatTrackBuilderFromHoughR4",
140 MuonSegmentCollection =
"TrkMuonSegmentsFromHoughR4",
141 SpectrometerTrackOutputLocation=
"MuonTracksFromHoughR4"))
142 result.merge(MuonStandaloneTrackParticleCnvAlgCfg(flags,
"MuonXAODParticleConvFromHoughR4",
143 TrackContainerName=
"MuonTracksFromHoughR4",
144 xAODTrackParticlesFromTracksContainerName=
"MuonSpectrometerTrackParticlesFromHoughR4"))
147 from MuonObjectMarker.ObjectMarkerConfig
import MuonSegmentFitParDecorAlgCfg
148 result.merge(MuonSegmentFitParDecorAlgCfg(flags, name=
"MuonSegmentParDecorAlgHougR4",
149 SegmentKey=
"MuonSegmentsFromHoughR4"))
150 if flags.Muon.setupTruthAlgorithms:
151 from MuonTruthAlgsR4.MuonTruthAlgsConfig
import RecoSegmentTruthAssocCfg
152 result.merge(RecoSegmentTruthAssocCfg(flags,
153 name=
"MuonSegmentsFromHoughR4TruthMatching",
154 SegmentKey=
"MuonSegmentsFromHoughR4"))
158 result = ComponentAccumulator()
161 from MuonSegmentCnv.MuonSegmentCnvConfig
import MuonR4SegmentCnvAlgCfg
162 result.merge(MuonR4SegmentCnvAlgCfg(flags))
164 from MuonConfig.MuonTrackBuildingConfig
import MuPatTrackBuilderCfg
165 result.merge(MuPatTrackBuilderCfg(flags, name=
"MuPatTrackBuilderFromR4",
166 MuonSegmentCollection =
"TrackMuonSegmentsR4",
167 SpectrometerTrackOutputLocation=
"MuonTracksR4"))
168 from xAODTrackingCnv.xAODTrackingCnvConfig
import MuonStandaloneTrackParticleCnvAlgCfg
170 result.merge(MuonStandaloneTrackParticleCnvAlgCfg(flags,name=
"MuonXAODParticleConvR4",
171 TrackContainerName=
"MuonTracksR4",
172 xAODTrackParticlesFromTracksContainerName=
"MuonSpectrometerTrackParticlesR4"))