5 from AthenaCommon.Logging
import logging
6 log = logging.getLogger(__name__)
9 from TrigEDMConfig.TriggerEDM
import recordable
10 from MuonConfig.MuonBytestreamDecodeConfig
import RpcBytestreamDecodeCfg, TgcBytestreamDecodeCfg, MdtBytestreamDecodeCfg, CscBytestreamDecodeCfg, sTgcBytestreamDecodeCfg, MmBytestreamDecodeCfg
11 from MuonConfig.MuonRdoDecodeConfig
import RpcRDODecodeCfg, TgcRDODecodeCfg, MdtRDODecodeCfg, CscRDODecodeCfg, CscClusterBuildCfg, StgcRDODecodeCfg, MMRDODecodeCfg
12 from MuonConfig.MuonRdoDecodeConfig
import MuonPrdCacheNames
13 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
14 from AthenaConfiguration.ComponentFactory
import CompFactory
15 from TrigInDetConfig.utils
import getFlagsForActiveConfig
17 CBTPname =
recordable(
"HLT_CBCombinedMuon_RoITrackParticles")
18 CBTPnameFS =
recordable(
"HLT_CBCombinedMuon_FSTrackParticles")
19 CBTPnameLRT =
recordable(
"HLT_CBCombinedMuon_LRTTrackParticles")
20 ExtrpTPname =
recordable(
"HLT_MSExtrapolatedMuons_RoITrackParticles")
21 ExtrpTPnameFS =
recordable(
"HLT_MSExtrapolatedMuons_FSTrackParticles")
22 MSextrpTPname =
recordable(
"HLT_MSOnlyExtrapolatedMuons_FSTrackParticles")
25 from AthenaConfiguration.Enums
import BeamType
64 return (flags.Beam.Type == BeamType.Cosmics)
73 return flags.Trigger.InDetTracking.muonLRT.tracks_FTF
75 return flags.Trigger.InDetTracking.cosmics.tracks_IDTrig
77 return flags.Trigger.InDetTracking.muon.tracks_FTF
82 dataobjects=[(
'RpcPrepDataCollection_Cache' ,
'StoreGateSvc+RpcPrdCache' ),
83 (
'TgcRdo_Cache' ,
'StoreGateSvc+TgcRdoCache' ),
84 (
'MdtCsm_Cache' ,
'StoreGateSvc+MdtCsmRdoCache' ),
85 (
'RpcPad_Cache' ,
'StoreGateSvc+RpcRdoCache' ),
86 (
'RpcCoinDataCollection_Cache' ,
'StoreGateSvc+RpcCoinCache' ),
87 (
'TgcPrepDataCollection_Cache' ,
'StoreGateSvc+' + MuonPrdCacheNames.TgcCache +
'PriorBC' ),
88 (
'TgcPrepDataCollection_Cache' ,
'StoreGateSvc+' + MuonPrdCacheNames.TgcCache +
'NextBC' ),
89 (
'TgcPrepDataCollection_Cache' ,
'StoreGateSvc+' + MuonPrdCacheNames.TgcCache +
'AllBCs' ),
90 (
'TgcPrepDataCollection_Cache' ,
'StoreGateSvc+' + MuonPrdCacheNames.TgcCache ),
91 (
'TgcCoinDataCollection_Cache' ,
'StoreGateSvc+' + MuonPrdCacheNames.TgcCoinCache +
'PriorBC' ),
92 (
'TgcCoinDataCollection_Cache' ,
'StoreGateSvc+' + MuonPrdCacheNames.TgcCoinCache +
'NextBC' ),
93 (
'TgcCoinDataCollection_Cache' ,
'StoreGateSvc+' + MuonPrdCacheNames.TgcCoinCache +
'NextNextBC' ),
94 (
'TgcCoinDataCollection_Cache' ,
'StoreGateSvc+' + MuonPrdCacheNames.TgcCoinCache )
97 dataobjects += [(
'MdtCsmContainer' ,
'StoreGateSvc+MDTCSM' ),
98 (
'RpcPadContainer' ,
'StoreGateSvc+RPCPAD' ),
99 (
'TgcRdoContainer' ,
'StoreGateSvc+TGCRDO' )]
100 if flags.Detector.GeometryCSC:
101 dataobjects+=[(
'CscRawDataCollection_Cache' ,
'StoreGateSvc+CscRdoCache' )]
103 dataobjects += [(
'CscRawDataContainer' ,
'StoreGateSvc+CSCRDO' ),
104 (
'CscRawDataCollection_Cache' ,
'StoreGateSvc+CscRdoCache' )]
105 if flags.Detector.GeometrysTGC
and flags.Detector.GeometryMM
and flags.Input.isMC:
106 dataobjects += [(
'Muon::STGC_RawDataContainer' ,
'StoreGateSvc+sTGCRDO' ),
107 (
'Muon::MM_RawDataContainer' ,
'StoreGateSvc+MMRDO' )]
108 if flags.Detector.GeometrysTGC
and flags.Detector.GeometryMM:
109 dataobjects += [(
'MMPrepDataCollection_Cache' ,
'StoreGateSvc+' + MuonPrdCacheNames.MmCache)]
110 dataobjects += [(
'sTgcPrepDataCollection_Cache' ,
'StoreGateSvc+' + MuonPrdCacheNames.sTgcCache)]
111 alg = CompFactory.AthViews.ViewDataVerifier( name =
"VDVMuDataPrep",
112 DataObjects = dataobjects)
113 result.addEventAlgo(alg)
120 doSeededDecoding =
True
122 doSeededDecoding =
False
125 if not flags.Input.isMC:
126 rpcAcc =
RpcBytestreamDecodeCfg( flags, name =
"RpcRawDataProvider_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding )
129 rpcAcc =
RpcRDODecodeCfg( flags, name=
"RpcRdoToRpcPrepData_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding )
132 if not flags.Input.isMC:
133 tgcAcc =
TgcBytestreamDecodeCfg( flags, name=
"TgcRawDataProvider_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding )
136 tgcAcc =
TgcRDODecodeCfg( flags, name=
"TgcRdoToTgcPrepData_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding )
139 if not flags.Input.isMC:
140 mdtAcc =
MdtBytestreamDecodeCfg( flags, name=
"MdtRawDataProvider_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding )
143 mdtAcc =
MdtRDODecodeCfg( flags, name=
"MdtRdoToMdtPrepData_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding )
146 if flags.Detector.GeometryCSC:
147 if not flags.Input.isMC:
148 cscAcc =
CscBytestreamDecodeCfg( flags, name=
"CscRawDataProvider_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding )
151 cscAcc =
CscRDODecodeCfg( flags, name=
"CscRdoToCscPrepData_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding )
157 if flags.Detector.GeometrysTGC
and flags.Detector.GeometryMM:
158 if not flags.Input.isMC:
159 stgcAcc =
sTgcBytestreamDecodeCfg(flags, name=
"sTgcRawDataProvider_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding)
161 mmAcc =
MmBytestreamDecodeCfg(flags, name=
"MMRawDataProvider_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding)
164 stgcAcc =
StgcRDODecodeCfg( flags, name=
"StgcRdoToStgcPrepData_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding )
167 mmAcc =
MMRDODecodeCfg( flags, name=
"MMRdoToMMPrepData_"+RoIs, RoIs = RoIs, DoSeededDecoding = doSeededDecoding)
177 dataObjects = [(
'Muon::TgcPrepDataContainer',
'StoreGateSvc+TGC_Measurements'),
178 (
'TgcRdoContainer' ,
'StoreGateSvc+TGCRDO'),
179 (
'Muon::RpcPrepDataContainer',
'StoreGateSvc+RPC_Measurements'),
180 (
'Muon::MdtPrepDataContainer',
'StoreGateSvc+MDT_DriftCircles'),
181 (
'RpcPadContainer' ,
'StoreGateSvc+RPCPAD' )]
182 if flags.Detector.GeometryCSC:
183 dataObjects += [(
'Muon::CscPrepDataContainer',
'StoreGateSvc+CSC_Clusters')]
184 if flags.Detector.GeometrysTGC:
185 dataObjects += [(
'Muon::sTgcPrepDataContainer',
'StoreGateSvc+STGC_Measurements')]
186 if flags.Detector.GeometryMM:
187 dataObjects += [(
'Muon::MMPrepDataContainer',
'StoreGateSvc+MM_Measurements')]
189 dataObjects += [(
'TrigRoiDescriptorCollection' ,
'StoreGateSvc+%s' % RoIs )]
190 dataObjects += [(
'xAOD::EventInfo' ,
'StoreGateSvc+EventInfo' )]
191 if flags.Trigger.enableL1MuonPhase1:
192 dataObjects += [(
'xAOD::MuonRoIContainer' ,
'StoreGateSvc+LVL1MuonRoIs' )]
194 dataObjects += [(
'DataVector< LVL1::RecMuonRoI >' ,
'StoreGateSvc+HLT_RecMURoIs' )]
198 dataObjects += extraLoads
199 ViewVerify = CompFactory.AthViews.ViewDataVerifier(
"muFastRecoVDV"+postFix, DataObjects = dataObjects)
201 result.addEventAlgo(ViewVerify)
204 def muFastRecoSequenceCfg( flags, RoIs, doFullScanID = False, InsideOutMode=False, extraLoads=None, l2mtmode=False, calib=False ):
215 acc.merge(
muFastVDVCfg(flags, RoIs, postFix, InsideOutMode, extraLoads))
219 from TrigL2MuonSA.TrigL2MuonSAConfig
import l2MuFastAlgCfg
223 FILL_FSIDRoI = doFullScanID,
224 MuonL2SAInfo = muNames.L2SAName+postFix,
225 L2IOCB = muNames.L2CBName+postFix,
226 forID = muNames.L2forIDName+postFix,
227 forMS =
"forMS"+postFix,
235 dataObjects=[(
'TrigRoiDescriptorCollection' ,
'StoreGateSvc+%s' % RoIs )]
237 dataObjects += extraLoads
238 if extraLoadsForl2mtmode:
239 dataObjects += extraLoadsForl2mtmode
240 ViewVerify = CompFactory.AthViews.ViewDataVerifier(
"muCombVDV"+name, DataObjects = dataObjects)
242 result.addEventAlgo(ViewVerify)
248 from TrigInDetConfig.TrigInDetConfig
import trigInDetFastTrackingCfg
251 acc.merge(
muonIDtrackVDVCfg(flags, name, RoIs, extraLoads, extraLoadsForl2mtmode))
259 acc.merge(
muonIDtrackVDVCfg(flags,
'cosmics', RoIs, extraLoads, extraLoadsForl2mtmode))
263 from TrigInDetConfig.InnerTrackingTrigSequence
import InnerTrackingTrigSequence
264 seq = InnerTrackingTrigSequence.create(flagsWithTrk,
265 flagsWithTrk.Tracking.ActiveConfig.input_name,
267 inView =
"muCombVDVcosmics")
268 acc.merge(seq.sequence(
"Offline"))
275 dataObjects=[(
'xAOD::L2StandAloneMuonContainer',
'StoreGateSvc+%s' % muNames.L2SAName+postFix)]
276 ViewVerify = CompFactory.AthViews.ViewDataVerifier(
"muCombAlgVDV"+postFix, DataObjects = dataObjects)
277 result.addEventAlgo(ViewVerify)
289 from TrigmuComb.TrigmuCombConfig
import muCombCfg
291 acc.merge(
muCombCfg(flags, f
'{postFix}_{name}', useBackExtrp=
True,
292 L2StandAloneMuonContainerName = muNames.L2SAName+postFix,
293 L2CombinedMuonContainerName = l2CBname, TrackParticleContainerName = l2trackname ))
299 dataobjects=[(
'xAOD::EventInfo' ,
'StoreGateSvc+EventInfo' ),
300 (
'TrigRoiDescriptorCollection' ,
'StoreGateSvc+%s' % RoIs )]
302 alg = CompFactory.AthViews.ViewDataVerifier( name =
"VDVMuEFSA_"+roiName,
303 DataObjects = dataobjects)
304 result.addEventAlgo(alg)
311 from MuonCombinedAlgs.MuonCombinedAlgsMonitoring
import MuonCreatorAlgMonitoring
312 from MuonConfig.MuonSegmentFindingConfig
import MuonSegmentFinderAlgCfg, MuonLayerHoughAlgCfg, MuonSegmentFilterAlgCfg
313 from MuonConfig.MuonTrackBuildingConfig
import MuPatTrackBuilderCfg, EMEO_MuPatTrackBuilderCfg
314 from xAODTrackingCnv.xAODTrackingCnvConfig
import MuonStandaloneTrackParticleCnvAlgCfg
315 from MuonCombinedConfig.MuonCombinedReconstructionConfig
import MuonCombinedMuonCandidateAlgCfg, MuonCreatorAlgCfg
325 if flags.Muon.runCommissioningChain:
326 acc.merge(
MuonSegmentFinderAlgCfg(flags, name=
"TrigMuonSegmentMaker_"+name,SegmentCollectionName=
"TrackMuonSegments_withNSW"))
327 acc.merge(
MuonSegmentFilterAlgCfg(flags, name=
"TrigMuonSegmentFilter_"+name,SegmentCollectionName=
"TrackMuonSegments_withNSW",
328 FilteredCollectionName=
"TrackMuonSegments", TrashUnFiltered=
False, ThinStations=()))
332 from MuonSegmentTrackMaker.MuonTrackMakerAlgsMonitoring
import MuPatTrackBuilderMonitoring
334 if flags.Muon.runCommissioningChain:
335 acc.merge(
EMEO_MuPatTrackBuilderCfg(flags, name=
"TrigMuPatTrackBuilder_"+name ,MuonSegmentCollection =
"TrackMuonSegments", MonTool =
MuPatTrackBuilderMonitoring(flags,
"MuPatTrackBuilderMonitoringSA_"+name), SpectrometerTrackOutputLocation=
"MuonSpectrometerTracks"))
343 msMuonName = muNames.EFSAName
345 msMuonName = muNamesFS.EFSAName
347 acc.merge(
MuonCreatorAlgCfg(flags, name=
"TrigMuonCreatorAlg_"+name, CreateSAmuons=
True, TagMaps=[], MuonContainerLocation=msMuonName,
348 ExtrapolatedLocation =
"HLT_MSExtrapolatedMuons_"+name, MSOnlyExtrapolatedLocation =
"HLT_MSOnlyExtrapolatedMuons_"+name,
354 sequenceOut = msMuonName
356 return acc, sequenceOut
362 dataObjects = [(
'Muon::MdtPrepDataContainer' ,
'StoreGateSvc+MDT_DriftCircles' ),
363 (
'Muon::TgcPrepDataContainer' ,
'StoreGateSvc+TGC_Measurements' ),
364 (
'Muon::RpcPrepDataContainer' ,
'StoreGateSvc+RPC_Measurements' ),
365 (
'TrigRoiDescriptorCollection' ,
'StoreGateSvc+%s' % RoIs ),
366 (
'xAOD::EventInfo' ,
'StoreGateSvc+EventInfo' ),
369 dataObjects +=[(
'MuonCandidateCollection' ,
'StoreGateSvc+MuonCandidates_FS' )]
371 dataObjects +=[(
'MuonCandidateCollection' ,
'StoreGateSvc+MuonCandidates')]
373 if flags.Detector.GeometryCSC:
374 dataObjects += [(
'Muon::CscStripPrepDataContainer' ,
'StoreGateSvc+CSC_Measurements' )]
375 if flags.Detector.GeometrysTGC
and flags.Detector.GeometryMM:
376 dataObjects += [(
'Muon::MMPrepDataContainer' ,
'StoreGateSvc+MM_Measurements'),
377 (
'Muon::sTgcPrepDataContainer' ,
'StoreGateSvc+STGC_Measurements') ]
379 alg = CompFactory.AthViews.ViewDataVerifier( name =
"VDVMuEFCB_"+name,
380 DataObjects = dataObjects)
381 acc.addEventAlgo(alg)
387 vdvName =
"VDVMuTrkLRT" if "LRT" in name
else "VDVMuTrk"
388 trkname =
"LRT" if "LRT" in name
else ''
389 LRT_suffix =
"_LRT" if "LRT" in name
else ''
390 dataObjects = [(
'xAOD::TrackParticleContainer' ,
'StoreGateSvc+'+
getIDTracks(flags, trkname) ),
391 (
'xAOD::IParticleContainer' ,
'StoreGateSvc+'+
getIDTracks(flags, trkname) )]
393 if not flags.Muon.enableTrigIDtrackReuse:
394 dataObjects += [(
'xAOD::TrackParticleContainer', f
'StoreGateSvc+HLT_IDTrack_MuonComb_FTF{LRT_suffix}')]
397 if flags.Muon.enableTrigIDtrackReuse:
398 dataObjects += [(
'xAOD::TrackParticleContainer',
'StoreGateSvc+'+
getIDTracks(flags) ),
399 (
'xAOD::L2CombinedMuonContainer',
'StoreGateSvc+'+muNames.L2CBName),
400 (
'xAOD::L2CombinedMuonContainer',
'StoreGateSvc+'+muNames.L2CBName+
'IOmode'),
401 (
'xAOD::L2CombinedMuonContainer',
'StoreGateSvc+'+muNames.L2CBName+
'l2mtmode')]
403 if not flags.Input.isMC:
404 dataObjects += [(
'IDCInDetBSErrContainer' ,
'StoreGateSvc+PixelByteStreamErrs' ),
405 (
'IDCInDetBSErrContainer' ,
'StoreGateSvc+SCT_ByteStreamErrs' )]
407 alg = CompFactory.AthViews.ViewDataVerifier( name = vdvName,
408 DataObjects = dataObjects)
409 acc.addEventAlgo(alg)
417 from MuonCombinedAlgs.MuonCombinedAlgsMonitoring
import MuonCreatorAlgMonitoring
418 from MuonCombinedConfig.MuonCombinedReconstructionConfig
import MuonCreatorAlgCfg, MuonCombinedAlgCfg, MuonCombinedInDetCandidateAlgCfg
428 from TrigInDetConfig.TrigInDetConfig
import trigInDetFastTrackingCfg
436 from TrigInDetConfig.TrigInDetConfig
import trigInDetPrecisionTrackingCfg
440 if isCosmic(flags)
and 'LRT' not in name:
442 if flags.Muon.enableTrigIDtrackReuse:
443 trackParticles=
'HLT_IDTrack_MuonComb_FTF'
450 if flags.Muon.enableTrigIDtrackReuse:
451 trackParticles=
'HLT_IDTrack_MuonComb_FTF_LRT'
453 trackParticles = muLrtFlags.Tracking.ActiveConfig.tracks_IDTrig
457 trackParticles = muFsFlags.Tracking.ActiveConfig.tracks_IDTrig
462 if flags.Muon.enableTrigIDtrackReuse:
463 trackParticles=
'HLT_IDTrack_MuonComb_FTF'
465 trackParticles = muFlags.Tracking.ActiveConfig.tracks_IDTrig
468 if flags.Muon.enableTrigIDtrackReuse:
469 from TrigMuonEF.TrigMuonEFConfig
import MergeMuonInDetTracksAlgCfg
472 MuonCBContainerLocation=muNames.L2CBName,
473 MuonInsideOutContainerLocation=muNames.L2CBName+
'IOmode',
474 MuonL2mtContainerLocation=muNames.L2CBName+
'l2mtmode',
475 IDtrackOutputLocation=
"HLT_IDTrack_MuonComb_FTF"))
480 acc.merge(
MuonCombinedInDetCandidateAlgCfg(flags, name=
"TrigMuonCombinedInDetCandidateAlg_"+name,TrackParticleLocation = [trackParticles], InDetCandidateLocation=
"InDetCandidates_"+name))
484 candidatesName =
"MuonCandidates"
486 candidatesName =
"MuonCandidates_FS"
488 acc.merge(
MuonCombinedAlgCfg(flags,name=
"TrigMuonCombinedAlg_"+name, MuonCandidateLocation=candidatesName, InDetCandidateLocation=
"InDetCandidates_"+name))
490 cbMuonName = muNames.EFCBOutInName
492 cbMuonName = muNamesFS.EFCBOutInName
494 cbMuonName = muNamesLRT.EFCBName
497 acc.merge(
MuonCreatorAlgCfg(flags, name=
"TrigMuonCreatorAlgCB_"+name, MuonCandidateLocation=[candidatesName], TagMaps=[
"muidcoTagMap"], InDetCandidateLocation=
"InDetCandidates_"+name,
498 MuonContainerLocation = cbMuonName, ExtrapolatedLocation =
"CBExtrapolatedMuons",
499 MSOnlyExtrapolatedLocation =
"CBMSonlyExtrapolatedMuons", CombinedLocation =
"HLT_CBCombinedMuon_"+name,
509 dataObjects = [(
'Muon::RpcPrepDataContainer' ,
'StoreGateSvc+RPC_Measurements' ),
510 (
'Muon::TgcPrepDataContainer' ,
'StoreGateSvc+TGC_Measurements' ),
511 (
'MuonCandidateCollection' ,
'StoreGateSvc+'+candidatesName )]
512 if not isCosmic(flags): dataObjects += [(
'Muon::HoughDataPerSectorVec' ,
'StoreGateSvc+HoughDataPerSectorVec')]
513 if flags.Detector.GeometryCSC:
514 dataObjects += [(
'Muon::CscPrepDataContainer' ,
'StoreGateSvc+CSC_Clusters' )]
515 if flags.Detector.GeometrysTGC
and flags.Detector.GeometryMM:
516 dataObjects += [(
'Muon::MMPrepDataContainer' ,
'StoreGateSvc+MM_Measurements'),
517 (
'Muon::sTgcPrepDataContainer' ,
'StoreGateSvc+STGC_Measurements') ]
519 alg = CompFactory.AthViews.ViewDataVerifier( name =
"VDVMuInsideOut_"+name,
520 DataObjects = dataObjects)
521 acc.addEventAlgo(alg)
527 from MuonConfig.MuonSegmentFindingConfig
import MuonSegmentFinderAlgCfg, MuonLayerHoughAlgCfg, MuonSegmentFilterAlgCfg
528 from MuonCombinedAlgs.MuonCombinedAlgsMonitoring
import MuonCreatorAlgMonitoring
529 from MuonCombinedConfig.MuonCombinedReconstructionConfig
import MuonCreatorAlgCfg, MuGirlStauAlgCfg, StauCreatorAlgCfg, MuonInDetToMuonSystemExtensionAlgCfg, MuonInsideOutRecoAlgCfg, MuonCombinedInDetCandidateAlgCfg
533 candidatesName =
"MuonCandidates"
535 candidatesName =
"MuonCandidates_FS"
543 if flags.Muon.runCommissioningChain:
544 acc.merge(
MuonSegmentFinderAlgCfg(flags, name=
"TrigMuonSegmentMaker_"+name,SegmentCollectionName=
"TrackMuonSegments_withNSW"))
545 acc.merge(
MuonSegmentFilterAlgCfg(flags, name=
"TrigMuonSegmentFilter_"+name,SegmentCollectionName=
"TrackMuonSegments_withNSW",
546 FilteredCollectionName=
"TrackMuonSegments", TrashUnFiltered=
False, ThinStations=()))
552 from TrigInDetConfig.TrigInDetConfig
import trigInDetPrecisionTrackingCfg
555 trackParticles = muLateFlags.Tracking.ActiveConfig.tracks_IDTrig
558 acc.merge(
MuonCombinedInDetCandidateAlgCfg(flags, name=
"TrigMuonCombinedInDetCandidateAlg_"+name,TrackParticleLocation = [trackParticles],ForwardParticleLocation=trackParticles, InDetCandidateLocation=
"InDetCandidates_"+name))
567 cbMuonName = muNames.EFCBInOutName
569 cbMuonName = cbMuonName+
"_Late"
570 acc.merge(
MuGirlStauAlgCfg(flags, name=
"TrigMuonLateInsideOutRecoAlg_"+name,InDetCandidateLocation=
"InDetCandidates_"+name))
571 acc.merge(
StauCreatorAlgCfg(flags, name=
"TrigLateMuonCreatorAlg_"+name, TagMaps=[
"stauTagMap"],InDetCandidateLocation=
"InDetCandidates_"+name,
575 WriteInDetCandidates=
"InDetCandidatesSystemExtended_"+name))
576 acc.merge(
MuonInsideOutRecoAlgCfg(flags, name=
"TrigMuonInsideOutRecoAlg_"+name,InDetCandidateLocation=
"InDetCandidatesSystemExtended_"+name))
578 acc.merge(
MuonCreatorAlgCfg(flags, name=
"TrigMuonCreatorAlgInsideOut_"+name, MuonCandidateLocation=[candidatesName], TagMaps=[
"muGirlTagMap"],InDetCandidateLocation=
"InDetCandidates_"+name,
579 MuonContainerLocation = cbMuonName, ExtrapolatedLocation =
"InsideOutCBExtrapolatedMuons",
580 MSOnlyExtrapolatedLocation =
"InsideOutCBMSOnlyExtrapolatedMuons", CombinedLocation =
"InsideOutCBCombinedMuon", MonTool =
MuonCreatorAlgMonitoring(flags,
"MuonCreatorAlgInsideOut_"+name)))
589 dataObjects = [(
'TrigRoiDescriptorCollection' ,
'StoreGateSvc+'+RoIs ),
590 (
'xAOD::MuonContainer' ,
'StoreGateSvc+IsoViewMuons'+name )]
592 alg = CompFactory.AthViews.ViewDataVerifier( name =
"efMuIsoVDV"+name,
593 DataObjects = dataObjects)
594 acc.addEventAlgo(alg)
607 from TrigInDetConfig.TrigInDetConfig
import trigInDetPrecisionTrackingCfg
610 trackParticles = muIsoFlags.Tracking.ActiveConfig.tracks_IDTrig
613 from TrigMuonEF.TrigMuonEFConfig
import TrigMuonEFTrackIsolationAlgCfg
615 MuonEFContainer = Muons,IdTrackParticles = trackParticles, MuonContName = muNames.EFIsoMuonName+name,
616 ptcone02Name = muNames.EFIsoMuonName+name +
".ptcone02",
617 ptcone03Name = muNames.EFIsoMuonName+name +
".ptcone03"))
624 dataObjects = [(
'MuCTPI_RDO' ,
'StoreGateSvc+MUCTPI_RDO' )]
626 alg = CompFactory.AthViews.ViewDataVerifier( name =
"efLateMuRoIVDV",
627 DataObjects = dataObjects)
628 acc.addEventAlgo(alg)
636 loadFromSG= [(
'MuCTPI_RDO' ,
'StoreGateSvc+MUCTPI_RDO' )]
637 from SGComps.SGInputLoaderConfig
import SGInputLoaderCfg
640 from TrigmuRoI.TrigmuRoIConfig
import TrigmuRoIConfig
641 sequenceOut =
"LateMuRoIs"
644 return acc, sequenceOut