diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Electron/generateElectron.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Electron/generateElectron.py index e04d987296f4085473635aeca3401fee2c1260ea..8bdd03dc0b28f5dd8047f1c63a5179cee33f2b76 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Electron/generateElectron.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Electron/generateElectron.py @@ -34,11 +34,8 @@ def generateChains( flags, chainDict ): accCalo.addEventAlgo(l2CaloHypo, sequenceName=stepView.getName()) - fastCaloSequence = CAMenuSequence( Sequence = l2CaloReco.sequence(), - Maker = l2CaloReco.inputMaker(), - Hypo = l2CaloHypo, - HypoToolGen = TrigEgammaFastCaloHypoToolFromDict, - CA = accCalo) + fastCaloSequence = CAMenuSequence(accCalo, + HypoToolGen = TrigEgammaFastCaloHypoToolFromDict) accCalo.printConfig() # this cannot work for asymmetric combined chains....FP @@ -84,11 +81,8 @@ def generateChains( flags, chainDict ): accTrk.addEventAlgo(fastElectronHypoAlg, sequenceName=stepView.getName()) from TrigEgammaHypo.TrigEgammaFastElectronHypoTool import TrigEgammaFastElectronHypoToolFromDict - fastInDetSequence = CAMenuSequence(Sequence = fastInDetReco.sequence(), - Maker = fastInDetReco.inputMaker(), - Hypo = fastElectronHypoAlg, - HypoToolGen = TrigEgammaFastElectronHypoToolFromDict, - CA = accTrk) + fastInDetSequence = CAMenuSequence(accTrk, + HypoToolGen = TrigEgammaFastElectronHypoToolFromDict) fastInDetStep = ChainStep( name=secondStepName, Sequences=[fastInDetSequence], chainDicts=[chainDict], multiplicity=getChainMultFromDict(chainDict)) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/generateJet.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/generateJet.py index 11a1e9117e579e5a5cfdcf5a66af5c7dc65f424c..9f74d1abac38dbe6c54f50f6fb163e6ea97ef8dd 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/generateJet.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Jet/generateJet.py @@ -86,11 +86,8 @@ def generateChains( flags, chainDict ): hypo.Jets = jetsfullname acc.addEventAlgo(hypo, sequenceName=stepView.getName() ) - jetSequence = CAMenuSequence( Sequence = inEventReco.sequence(), - Maker = inEventReco.inputMaker(), - Hypo = hypo, - HypoToolGen = trigJetHypoToolFromDict, - CA = acc) + jetSequence = CAMenuSequence(acc, + HypoToolGen = trigJetHypoToolFromDict) jetStep = ChainStep(name=stepName, Sequences=[jetSequence], chainDicts=[chainDict]) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuComponents.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuComponents.py index 22a8e9fe8ee5d5e86e0b71fa828b8ed124a010cc..394f04c9a13fd178dc364a8f6d7cfe2f783693e7 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuComponents.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Menu/MenuComponents.py @@ -530,9 +530,16 @@ class MenuSequence(object): class CAMenuSequence(MenuSequence): ''' MenuSequence with Compoment Accumulator ''' - def __init__(self, Sequence, Maker, Hypo, HypoToolGen, CA): - self.ca = CA - MenuSequence.__init__(self, Sequence, Maker, Hypo, HypoToolGen) + def __init__(self, ca, HypoToolGen ): + self.ca = ca + allAlgs = ca.getEventAlgos() + inputMaker = [ a for a in allAlgs if isInputMakerBase(a)] + assert len(inputMaker) == 1, "Wrong number of input makers in the compnent accumulator {}".format(len(inputMaker)) + inputMaker = inputMaker[0] + hypoAlg = [ a for a in allAlgs if isHypoAlg(a)] + assert len(hypoAlg) == 1, "Wrong number of hypo algs in the compnent accumulator {}".format(len(hypoAlg)) + hypoAlg = hypoAlg[0] + MenuSequence.__init__(self, ca.getSequence(), inputMaker, hypoAlg, HypoToolGen) @property def sequence(self): @@ -873,13 +880,11 @@ class InEventReco( ComponentAccumulator ): def mergeReco( self, ca ): """ Merged CA movnig reconstruction algorithms into the right sequence """ - return self.merge( ca, sequenceName=self.recoSeq.getName() ) + return self.merge( ca, sequenceName=self.recoSeq.name ) - def addHypoAlg(self, alg): - self.addEventAlgo( alg, self.mainSeq.name ) - - def sequence( self ): - return self.mainSeq + def addRecoAlgo( self, algo ): + """ Place algorithm in the correct reconstruction sequence """ + return self.addEventAlgo( algo, sequenceName=self.recoSeq.name ) def inputMaker( self ): return self.inputMakerAlg @@ -911,25 +916,13 @@ class InViewReco(ComponentAccumulator): self.viewsSeq = parOR( self.viewMakerAlg.ViewNodeName ) self.addSequence( self.viewsSeq, self.mainSeq.name ) - def addInput(self, inKey, outKey ): - """Adds input (DecisionsContainer) from which the views should be created """ - self.viewMakerAlg.InputMakerInputDecisions += [ inKey ] - self.viewMakerAlg.InputMakerOutputDecisions = outKey - def mergeReco( self, ca ): """ Merge CA movnig reconstruction algorithms into the right sequence """ - return self.merge( ca, sequenceName=self.viewsSeq.getName() ) + return self.merge( ca, sequenceName=self.viewsSeq.name ) def addRecoAlgo( self, algo ): """ Place algorithm in the correct reconstruction sequence """ - return self.addEventAlgo( algo, sequenceName=self.viewsSeq.getName() ) - - - def addHypoAlg(self, alg): - self.addEventAlgo( alg, self.mainSeq.name ) - - def sequence( self ): - return self.mainSeq + return self.addEventAlgo( algo, sequenceName=self.viewsSeq.name ) def inputMaker( self ): return self.viewMakerAlg diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/generateMuon.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/generateMuon.py index c687d6abc0cb6501c3a0d140a7e04bc581231ce8..ccf2337ed4f856e8f3da26e40e84c1b1e12ce41d 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/generateMuon.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Muon/generateMuon.py @@ -211,11 +211,8 @@ def generateChains( flags, chainDict ): acc.addEventAlgo(l2muFastHypo, sequenceName=stepView.getName()) - l2muFastSequence = CAMenuSequence( Sequence = reco.sequence(), - Maker = reco.inputMaker(), - Hypo = l2muFastHypo, - HypoToolGen = TrigMufastHypoToolFromDict, - CA = acc ) + l2muFastSequence = CAMenuSequence(acc, + HypoToolGen = TrigMufastHypoToolFromDict ) l2muFastStep = ChainStep( name=stepName, Sequences=[l2muFastSequence], chainDicts=[chainDict] ) @@ -240,17 +237,14 @@ def generateChains( flags, chainDict ): accL2CB.merge(recoL2CB, sequenceName = stepL2CBReco.getName()) - l2muCombHypo = l2MuCombHypoCfg( flags, - name = 'TrigL2MuCombHypo', - muCombInfo = 'HLT_MuonL2CBInfo' ) + l2muCombHypo = l2MuCombHypoCfg(flags, + name = 'TrigL2MuCombHypo', + muCombInfo = 'HLT_MuonL2CBInfo' ) accL2CB.addEventAlgo(l2muCombHypo, sequenceName=stepL2CBView.getName()) - l2muCombSequence = CAMenuSequence( Sequence = recoL2CB.sequence(), - Maker = recoL2CB.inputMaker(), - Hypo = l2muCombHypo, - HypoToolGen = TrigmuCombHypoToolFromDict, - CA = accL2CB ) + l2muCombSequence = CAMenuSequence(accL2CB, + HypoToolGen = TrigmuCombHypoToolFromDict) l2muCombStep = ChainStep( name=stepL2CBName, Sequences=[l2muCombSequence], chainDicts=[chainDict] ) @@ -323,11 +317,8 @@ def generateChains( flags, chainDict ): accMS.addEventAlgo(efmuMSHypo, sequenceName=stepEFMSView.getName()) - efmuMSSequence = CAMenuSequence( Sequence = recoMS.sequence(), - Maker = recoMS.inputMaker(), - Hypo = efmuMSHypo, - HypoToolGen = TrigMuonEFMSonlyHypoToolFromDict, - CA = accMS ) + efmuMSSequence = CAMenuSequence(accMS, + HypoToolGen = TrigMuonEFMSonlyHypoToolFromDict) efmuMSStep = ChainStep( name=stepEFMSName, Sequences=[efmuMSSequence], chainDicts=[chainDict] ) diff --git a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/generatePhoton.py b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/generatePhoton.py index acdc24d9714e7275f5e622cc829f01f4601cda7c..37ea9deccf31b6e282bc5d5bb2e98d3ce5e917d1 100644 --- a/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/generatePhoton.py +++ b/Trigger/TriggerCommon/TriggerMenuMT/python/HLTMenuConfig/Photon/generatePhoton.py @@ -34,11 +34,8 @@ def generateChains(flags, chainDict): accCalo.addEventAlgo(l2CaloHypo, sequenceName=stepView.getName()) - fastCaloSequence = CAMenuSequence( Sequence = l2CaloReco.sequence(), - Maker = l2CaloReco.inputMaker(), - Hypo = l2CaloHypo, - HypoToolGen = TrigEgammaFastCaloHypoToolFromDict, - CA = accCalo ) + fastCaloSequence = CAMenuSequence(accCalo, + HypoToolGen = TrigEgammaFastCaloHypoToolFromDict) fastCaloStep = ChainStep(firstStepName, [fastCaloSequence], multiplicity=[1],chainDicts=[chainDict] ) @@ -58,11 +55,8 @@ def generateChains(flags, chainDict): accPhoton.addEventAlgo(l2PhotonHypo, sequenceName=stepView.getName()) - l2PhotonSequence = CAMenuSequence( Sequence = l2PhotonReco.sequence(), - Maker = l2PhotonReco.inputMaker(), - Hypo = l2PhotonHypo, - HypoToolGen = TrigEgammaFastPhotonHypoToolFromDict, - CA = accPhoton ) + l2PhotonSequence = CAMenuSequence(accPhoton, + HypoToolGen = TrigEgammaFastPhotonHypoToolFromDict) l2PhotonStep = ChainStep(secondStepName, [l2PhotonSequence], multiplicity=[1],chainDicts=[chainDict] )