6 from TriggerMenuMT.HLT.Config.MenuComponents
import MenuSequence, SelectionCA, InViewRecoCA
7 from TriggerMenuMT.HLT.Egamma.TrigEgammaKeys
import getTrigEgammaKeys
8 from AthenaConfiguration.ComponentFactory
import CompFactory
9 from AthenaConfiguration.AccumulatorCache
import AccumulatorCache
12 return 'precision' + (
'HI' if ion
is True else '') +
'CaloElectron'
16 """ Creates PrecisionCalo sequence """
18 hiInfo =
'HI' if ion
else ''
20 InViewRoIs=
"PrecisionCaloRoIs"+ variant
21 roiTool = CompFactory.ViewCreatorPreviousROITool()
25 roiTool.RoISGKey =
"HLT_Roi_FastElectron"
27 recoAcc = InViewRecoCA(
tag(ion)+variant,InViewRoIs=InViewRoIs, RoITool = roiTool, RequireParentView =
True, isProbe=is_probe_leg)
29 from TriggerMenuMT.HLT.Electron.PrecisionCaloRecoSequences
import precisionCaloRecoSequence
30 recoAcc.mergeReco(
precisionCaloRecoSequence(flags, InViewRoIs,
'ePrecisionCaloRecoSequence'+hiInfo+variant, ion=ion, variant=variant))
32 selAcc = SelectionCA(
'ePrecisionCaloMenuSequence'+hiInfo+variant, isProbe=is_probe_leg)
40 from TriggerMenuMT.HLT.HeavyIon.HeavyIonMenuSequences
import egammaFSHIEventShapeMakerCfg
43 from TrigGenericAlgs.TrigGenericAlgsConfig
import ROBPrefetchingAlgCfg_Calo
44 robPrefetchAlg =
ROBPrefetchingAlgCfg_Calo( flags, nameSuffix=InViewRoIs+hiInfo+
'_probe'+variant
if is_probe_leg
else InViewRoIs+hiInfo+variant)
46 selAcc.mergeReco(recoAcc, robPrefetchCA=robPrefetchAlg, upSequenceCA=pedestalCA)
48 hypoAlg = CompFactory.TrigEgammaPrecisionCaloHypoAlg(
'Electron' +
tag(ion) +
'Hypo' + variant)
50 hypoAlg.CaloClusters = TrigEgammaKeys.precisionElectronCaloClusterContainer
52 selAcc.addHypoAlgo(hypoAlg)
54 from TrigEgammaHypo.TrigEgammaPrecisionCaloHypoTool
import TrigEgammaPrecisionCaloHypoToolFromDict
56 return MenuSequence(flags, selAcc, HypoToolGen=TrigEgammaPrecisionCaloHypoToolFromDict)