def muEFIsoAlgSequence(ConfigFlags): efmuIsoViewsMaker = EventViewCreatorAlgorithm("IMefmuIso") newRoITool = ViewCreatorCentredOnIParticleROITool() newRoITool.RoIEtaWidth = 0.15 newRoITool.RoIPhiWidth = 0.15 newRoITool.RoisWriteHandleKey = recordable("HLT_Roi_MuonIso") # efmuIsoViewsMaker.mergeUsingFeature = True efmuIsoViewsMaker.RoITool = newRoITool # efmuIsoViewsMaker.Views = "MUEFIsoViewRoIs" efmuIsoViewsMaker.InViewRoIs = "MUEFIsoRoIs" # efmuIsoViewsMaker.ViewFallThrough = True # Muon specific # TODO - this should be deprecated here and removed in the future, now that we mergeUsingFeature, each parent View should only have one muon. # therefore the xAOD::Muon should be got via ViewFallThrough, rather than being copied in here as "IsoViewMuons" efmuIsoViewsMaker.PlaceMuonInView = True efmuIsoViewsMaker.InViewMuonCandidates = "IsoMuonCandidates" efmuIsoViewsMaker.InViewMuons = "IsoViewMuons" ### get EF reco sequence ### from TriggerMenuMT.HLTMenuConfig.Muon.MuonSetup import efmuisoRecoSequence efmuisoRecoSequence, sequenceOut = efmuisoRecoSequence( efmuIsoViewsMaker.InViewRoIs, efmuIsoViewsMaker.InViewMuons) efmuIsoViewsMaker.ViewNodeName = efmuisoRecoSequence.name() ### Define a Sequence to run for muIso ### efmuIsoSequence = seqAND("efmuIsoSequence", [efmuIsoViewsMaker, efmuisoRecoSequence]) return (efmuIsoSequence, efmuIsoViewsMaker, sequenceOut)
def muEFCBFSAlgSequence(ConfigFlags): efcbfsInputMaker = EventViewCreatorAlgorithm("IMEFCBFS") newRoITool = ViewCreatorCentredOnIParticleROITool() newRoITool.RoisWriteHandleKey = "MuonCandidates_FS_ROIs" # efcbfsInputMaker.mergeUsingFeature = True efcbfsInputMaker.RoITool = newRoITool # efcbfsInputMaker.Views = "MUCBFSViews" efcbfsInputMaker.InViewRoIs = "MUCBFSRoIs" # efcbfsInputMaker.RequireParentView = True efcbfsInputMaker.ViewFallThrough = True # Muon specific efcbfsInputMaker.PlaceMuonInView = True efcbfsInputMaker.InViewMuons = "InViewMuons" efcbfsInputMaker.InViewMuonCandidates = "MuonCandidates_FS" from TriggerMenuMT.HLTMenuConfig.Muon.MuonSetup import muEFCBRecoSequence muEFCBFSRecoSequence, sequenceOut = muEFCBRecoSequence( efcbfsInputMaker.InViewRoIs, "FS") efcbfsInputMaker.ViewNodeName = muEFCBFSRecoSequence.name() muonEFCBFSSequence = seqAND("muonEFFSCBSequence", [efcbfsInputMaker, muEFCBFSRecoSequence]) return (muonEFCBFSSequence, efcbfsInputMaker, sequenceOut)