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=
"", MuonContainerLocation=
"MuonsLegacy"))
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",
87 MuonContainerKey =
"MuonsLegacy"))
90 from MuonObjectMarker.ObjectMarkerConfig
import SegmentMarkerAlgCfg, MeasurementMarkerAlgCfg
91 result.merge(SegmentMarkerAlgCfg(flags, SelectMuons=
"passHabemusZ", SegmentKey=
"MuonSegments", MuonKey=
"MuonsLegacy"))
93 result.merge(MeasurementMarkerAlgCfg(flags, SelectSegments=
"passHabemusZ",
94 SegmentKey=
"MuonSegments", SegmentLinkKey=
"HabemusZ"))
96 from MuonObjectMarker.ObjectMarkerConfig
import MuonSegmentFitParDecorAlgCfg
97 result.merge(MuonSegmentFitParDecorAlgCfg(flags, name=
"MuonSegmentDecorAlg_MuonSegments",
98 SegmentKey=
"MuonSegments"))
99 result.merge(MuonSegmentFitParDecorAlgCfg(flags, name=
"MuonSegmentDecorAlg_UnAssocMuonSegments",
100 SegmentKey=
"UnAssocMuonSegments"))
102 if flags.Muon.setupTruthAlgorithms:
103 from MuonTruthAlgsR4.MuonTruthAlgsConfig
import RecoSegmentTruthAssocCfg
104 result.merge(RecoSegmentTruthAssocCfg(flags,
105 name=
"TrkMuonSegmentsTruthMatchingAlg",
106 SegmentKey=
"MuonSegments"))
107 result.merge(RecoSegmentTruthAssocCfg(flags,
108 name=
"UnAssocSegmentsTruthMatchingAlg",
109 SegmentKey=
"UnAssocMuonSegments"))
112 from xAODMuonViewAlgs.ViewAlgsConfig
import SegmentViewAlgCfg
113 result.merge(SegmentViewAlgCfg(flags,
114 SegmentsKeys=[
"UnAssocMuonSegments",
"MuonSegments"],
115 ViewKey=
"LegacyChainSegments",
116 ExtraInputs = []
if not flags.Input.isMC
else [(
"SG::AuxVectorBase",
"UnAssocMuonSegments.truthParticleLink"),
117 (
"SG::AuxVectorBase",
"MuonSegments.truthParticleLink")]))
122 result = ComponentAccumulator()
123 from MuonPatternCnv.MuonPatternCnvConfig
import MuonPatternCnvAlgCfg
124 result.merge(MuonPatternCnvAlgCfg(flags,
125 PatternCombiKey=
"R4HoughPatterns",
126 HoughDataPerSecKey=
"R4HoughDataPerSec"))
127 from MuonConfig.MuonSegmentFindingConfig
import MuonSegmentFinderAlgCfg, MuonSegmentCnvAlgCfg
128 result.merge(MuonSegmentFinderAlgCfg(flags,
129 name=
"MuonSegmentFinderR4Pattern",
130 MuonLayerHoughCombisKey=
"R4HoughPatterns",
131 SegmentCollectionName=
"TrkMuonSegmentsFromHoughR4",
132 NSWSegmentCollectionName=
""))
133 result.merge(MuonSegmentCnvAlgCfg(flags,
"MuonSegmentCnvAlgFromHoughR4",
134 SegmentContainerName=
"TrkMuonSegmentsFromHoughR4",
135 xAODContainerName=
"MuonSegmentsFromHoughR4"))
137 from MuonConfig.MuonTrackBuildingConfig
import MuPatTrackBuilderCfg
139 from xAODTrackingCnv.xAODTrackingCnvConfig
import MuonStandaloneTrackParticleCnvAlgCfg
140 result.merge(MuPatTrackBuilderCfg(flags, name=
"MuPatTrackBuilderFromHoughR4",
141 MuonSegmentCollection =
"TrkMuonSegmentsFromHoughR4",
142 SpectrometerTrackOutputLocation=
"MuonTracksFromHoughR4"))
143 result.merge(MuonStandaloneTrackParticleCnvAlgCfg(flags,
"MuonXAODParticleConvFromHoughR4",
144 TrackContainerName=
"MuonTracksFromHoughR4",
145 xAODTrackParticlesFromTracksContainerName=
"MuonSpectrometerTrackParticlesFromHoughR4"))
148 from MuonObjectMarker.ObjectMarkerConfig
import MuonSegmentFitParDecorAlgCfg
149 result.merge(MuonSegmentFitParDecorAlgCfg(flags, name=
"MuonSegmentParDecorAlgHougR4",
150 SegmentKey=
"MuonSegmentsFromHoughR4"))
151 if flags.Muon.setupTruthAlgorithms:
152 from MuonTruthAlgsR4.MuonTruthAlgsConfig
import RecoSegmentTruthAssocCfg
153 result.merge(RecoSegmentTruthAssocCfg(flags,
154 name=
"MuonSegmentsFromHoughR4TruthMatching",
155 SegmentKey=
"MuonSegmentsFromHoughR4"))
159 result = ComponentAccumulator()
162 from MuonSegmentCnv.MuonSegmentCnvConfig
import MuonR4SegmentCnvAlgCfg
163 result.merge(MuonR4SegmentCnvAlgCfg(flags))
165 from MuonConfig.MuonTrackBuildingConfig
import MuPatTrackBuilderCfg
166 result.merge(MuPatTrackBuilderCfg(flags, name=
"MuPatTrackBuilderFromR4",
167 MuonSegmentCollection =
"TrackMuonSegmentsR4",
168 SpectrometerTrackOutputLocation=
"MuonTracksR4"))
169 from xAODTrackingCnv.xAODTrackingCnvConfig
import MuonStandaloneTrackParticleCnvAlgCfg
171 result.merge(MuonStandaloneTrackParticleCnvAlgCfg(flags,name=
"MuonXAODParticleConvR4",
172 TrackContainerName=
"MuonTracksR4",
173 xAODTrackParticlesFromTracksContainerName=
"MuonSpectrometerTrackParticlesR4"))