15def precisionCaloSequenceGenCfg(flags, ion=False, is_probe_leg=False, variant=''):
16 """ Creates PrecisionCalo sequence """
17 TrigEgammaKeys = getTrigEgammaKeys(flags, variant, ion=ion)
18 hiInfo = 'HI' if ion else ''
19
20 InViewRoIs="PrecisionCaloRoIs"+ variant
21 roiTool = CompFactory.ViewCreatorPreviousROITool()
22
23
24
25 roiTool.RoISGKey = "HLT_Roi_FastElectron"
26
27 recoAcc = InViewRecoCA(tag(ion)+variant,InViewRoIs=InViewRoIs, RoITool = roiTool, RequireParentView = True, isProbe=is_probe_leg)
28
29 from TriggerMenuMT.HLT.Electron.PrecisionCaloRecoSequences import precisionCaloRecoSequence
30 recoAcc.mergeReco(precisionCaloRecoSequence(flags, InViewRoIs,'ePrecisionCaloRecoSequence'+hiInfo+variant, ion=ion, variant=variant))
31
32 selAcc = SelectionCA('ePrecisionCaloMenuSequence'+hiInfo+variant, isProbe=is_probe_leg)
33 pedestalCA = None
34 if ion is True:
35
36
37
38
39
40 from TriggerMenuMT.HLT.HeavyIon.HeavyIonMenuSequences import egammaFSHIEventShapeMakerCfg
41 pedestalCA = egammaFSHIEventShapeMakerCfg(flags)
42
43 selAcc.mergeReco(recoAcc, upSequenceCA=pedestalCA)
44
45 hypoAlg = CompFactory.TrigEgammaPrecisionCaloHypoAlg('Electron' + tag(ion) + 'Hypo' + variant)
46
47 hypoAlg.CaloClusters = TrigEgammaKeys.precisionElectronCaloClusterContainer
48
49 selAcc.addHypoAlgo(hypoAlg)
50
51 from TrigEgammaHypo.TrigEgammaPrecisionCaloHypoTool import TrigEgammaPrecisionCaloHypoToolFromDict
52
53 return MenuSequence(flags, selAcc, HypoToolGen=TrigEgammaPrecisionCaloHypoToolFromDict)
54
55