9from AthenaCommon.Logging
import logging
10logging.getLogger().info(f
'Importing {__name__}')
11log = logging.getLogger(__name__)
13from TriggerMenuMT.HLT.Config.ChainConfigurationBase
import ChainConfigurationBase
15from .TauMenuSequences
import (
16 tauCaloMVASequenceGenCfg,
17 tauCaloHitsSequenceGenCfg,
18 tauFTFCoreSequenceGenCfg,
19 tauFTFIsoSequenceGenCfg,
20 tauPrecTrackSequenceGenCfg,
21 tauPrecisionSequenceGenCfg,
24from .TauConfigurationTools
import (
25 getChainSequenceConfigName,
26 getChainCaloHitsSeqName, getHitZConfig,
27 getChainPrecisionSeqName,
38 ChainConfigurationBase.__init__(self, chainDict)
41 log.debug(f
'Assembling chain for {self.chainName}')
48 'ptonly' : [
'getCaloMVA',
'getCaloHitsEmpty',
'getFTFCoreEmpty',
'getFTFIsoEmpty',
'getPrecTrackEmpty',
'getPrecisionEmpty'],
51 'tracktwoMVA' : [
'getCaloMVA',
'getCaloHitsEmpty',
'getFTFCore' ,
'getFTFIso' ,
'getPrecTrackIso' ,
'getPrecision' ],
52 'tracktwoLLP' : [
'getCaloMVA',
'getCaloHitsEmpty',
'getFTFCore' ,
'getFTFIso' ,
'getPrecTrackIso' ,
'getPrecision' ],
55 'CaloHits_tracktwoMVA' : [
'getCaloMVA',
'getCaloHits' ,
'getFTFCore' ,
'getFTFIso' ,
'getPrecTrackIso' ,
'getPrecision' ],
58 'trackLRT' : [
'getCaloMVA',
'getCaloHitsEmpty',
'getFTFLRT' ,
'getFTFIsoEmpty',
'getPrecTrackLRT' ,
'getPrecision' ],
61 steps = step_dictionary[getChainSequenceConfigName(self.chainPart)]
64 chain_step = getattr(self, step)(flags)
66 is_probe_leg = self.chainPart[
'tnpInfo']==
'probe'
67 chain_step = getattr(self, step)(flags, is_probe_leg=is_probe_leg)
69 chain_steps.append(chain_step)
71 return self.buildChain(chain_steps)
78 stepName =
'CaloMVA_tau'
79 return self.getStep(flags, stepName, [tauCaloMVASequenceGenCfg], is_probe_leg=is_probe_leg)
86 sequenceName = getChainCaloHitsSeqName(self.chainPart)
87 stepName = f
'CaloHits_{sequenceName}_tau'
91 [tauCaloHitsSequenceGenCfg],
92 seq_name=sequenceName,
93 precision_seq_name=getChainPrecisionSeqName(self.chainPart),
94 hitz_config=getHitZConfig(flags, self.chainPart),
95 is_probe_leg=is_probe_leg,
99 stepName =
'CaloHitsEmpty_tau'
100 return self.getEmptyStep(stepName)
108 if calohits_seq_name := getChainCaloHitsSeqName(self.chainPart):
109 stepName += f
'_fromCaloHits_{calohits_seq_name}'
115 [tauFTFCoreSequenceGenCfg],
116 calohits_seq_name=calohits_seq_name,
117 is_probe_leg=is_probe_leg,
121 stepName =
'FTFLRT_tau'
125 [tauFTFCoreSequenceGenCfg],
127 is_probe_leg=is_probe_leg,
131 stepName =
'FTFCoreEmpty_tau'
132 return self.getEmptyStep(stepName)
140 if calohits_seq_name := getChainCaloHitsSeqName(self.chainPart):
141 stepName += f
'_fromCaloHits_{calohits_seq_name}'
147 [tauFTFIsoSequenceGenCfg],
148 calohits_seq_name=calohits_seq_name,
149 is_probe_leg=is_probe_leg
153 stepName =
'FTFIsoEmpty_tau'
154 return self.getEmptyStep(stepName)
161 stepName =
'PrecTrkIso'
162 if calohits_seq_name := getChainCaloHitsSeqName(self.chainPart):
163 stepName += f
'_fromCaloHits_{calohits_seq_name}'
169 [tauPrecTrackSequenceGenCfg],
170 calohits_seq_name=calohits_seq_name,
171 is_probe_leg=is_probe_leg
175 stepName =
'PrecTrkLRT_tau'
179 [tauPrecTrackSequenceGenCfg],
181 is_probe_leg=is_probe_leg
185 stepName =
'PrecTrkEmpty_tau'
186 return self.getEmptyStep(stepName)
193 sequenceName = getChainPrecisionSeqName(self.chainPart)
194 stepName = f
'Precision_{sequenceName}'
195 if calohits_seq_name := getChainCaloHitsSeqName(self.chainPart):
196 stepName += f
'_fromCaloHits_{calohits_seq_name}'
202 [tauPrecisionSequenceGenCfg],
203 seq_name=sequenceName,
204 calohits_seq_name=calohits_seq_name,
205 do_lrt=
'LRT' in sequenceName,
206 is_probe_leg=is_probe_leg,
210 stepName =
'PrecisionEmpty_tau'
211 return self.getEmptyStep(stepName)
Class to configure tau chains.
__init__(self, chainDict)
getFTFCoreEmpty(self, flags)
getCaloHits(self, flags, is_probe_leg=False)
getPrecisionEmpty(self, flags)
getFTFIso(self, flags, is_probe_leg=False)
getFTFLRT(self, flags, is_probe_leg=False)
assembleChainImpl(self, flags)
getPrecTrackIso(self, flags, is_probe_leg=False)
getPrecision(self, flags, is_probe_leg=False)
getPrecTrackLRT(self, flags, is_probe_leg=False)
getPrecTrackEmpty(self, flags)
getCaloHitsEmpty(self, flags)
getFTFIsoEmpty(self, flags)
getCaloMVA(self, flags, is_probe_leg=False)
getFTFCore(self, flags, is_probe_leg=False)