8from AthenaCommon.Logging
import logging
9logging.getLogger().info(
"Importing %s",__name__)
10log = logging.getLogger(__name__)
11from ..Config.ChainConfigurationBase
import ChainConfigurationBase
12from ..Muon.MuonChainConfiguration
import MuonChainConfiguration
14from ..Muon.MuonMenuSequences
import mul2IOOvlpRmSequenceGenCfg, mul2mtCBOvlpRmSequenceGenCfg, muEFCBSequenceGenCfg
16from .BphysicsMenuSequences
import dimuL2SequenceGenCfg, dimuEFSequenceGenCfg, bmumuxSequenceGenCfg
17from TrigBphysHypo.TrigMultiTrkComboHypoConfig
import StreamerDimuL2ComboHypoCfg, StreamerDimuL2IOComboHypoCfg, StreamerDimuL2MTComboHypoCfg, DimuEFComboHypoCfg, BmutrkComboHypoCfg, StreamerDimuEFComboHypoCfg, TrigMultiTrkComboHypoToolFromDict
18from TrigBphysHypo.TrigBmumuxComboHypoConfig
import BmumuxComboHypoCfg, TrigBmumuxComboHypoToolFromDict
19from TrigBphysHypo.TrigBmuxComboHypoConfig
import BmuxComboHypoCfg
29 ChainConfigurationBase.__init__(self,chainDict)
36 log.debug(
"Assembling chain for %s", self.
chainName)
40 steps=stepDictionary[key]
43 for step_level
in steps:
44 for step
in step_level:
45 chainStep = getattr(self, step)(flags)
46 chainSteps+=[chainStep]
48 chain = self.buildChain(chainSteps)
54 'dimu' : [[
'getmuFast',
'getDimuL2'], [
'getmuEFSA',
'getmuEFCB',
'getDimuEF']],
55 'bmumux' : [[
'getmuFast',
'getDimuL2'], [
'getmuEFSA',
'getDimuEFCB',
'getBmumux']],
56 'bmutrk' : [[
'getmuFast',
'getmuCombIO'], [
'getmuEFSA',
'getmuEFCB',
'getBmutrk']],
57 'bmux' : [[
'getmuFast',
'getmuCombIO'], [
'getmuEFSA',
'getmuEFCB',
'getBmux']],
63 the_topo = self.dict[
'topo'][0]
68 'bJpsimutrk' :
'bmutrk',
80 'b0dRAB12vtx20' :
'dimu',
81 'b0dRAB207invmAB22vtx20' :
'dimu',
82 'b0dRAB127invmAB22vtx20' :
'dimu',
83 'b7invmAB22vtx20' :
'dimu',
86 return topo_dict[the_topo]
89 if 'noL2Comb' in self.chainPart[
'extra']:
90 return self.getStep(flags,
'dimuL2', [dimuL2SequenceGenCfg], comboHypoCfg=StreamerDimuL2ComboHypoCfg)
91 elif 'l2mt' in self.chainPart[
'l2AlgInfo']:
92 return self.getStep(flags,
'dimuL2MT', [mul2mtCBOvlpRmSequenceGenCfg], comboHypoCfg=StreamerDimuL2MTComboHypoCfg)
94 return self.getStep(flags,
'dimuL2IO', [mul2IOOvlpRmSequenceGenCfg], comboHypoCfg=StreamerDimuL2IOComboHypoCfg)
97 return self.getStep(flags,
'dimuEF', [dimuEFSequenceGenCfg], comboHypoCfg=DimuEFComboHypoCfg, comboTools=[TrigMultiTrkComboHypoToolFromDict])
100 return self.getStep(flags,
'dimuEFCB', [muEFCBSequenceGenCfg], comboHypoCfg=StreamerDimuEFComboHypoCfg)
103 return self.getStep(flags,
'bmux', [bmumuxSequenceGenCfg], comboHypoCfg=BmuxComboHypoCfg, comboTools=[TrigBmumuxComboHypoToolFromDict])
106 return self.getStep(flags,
'bmumux', [bmumuxSequenceGenCfg], comboHypoCfg=BmumuxComboHypoCfg, comboTools=[TrigBmumuxComboHypoToolFromDict])
109 return self.getStep(flags,
'bmutrk', [bmumuxSequenceGenCfg], comboHypoCfg=BmutrkComboHypoCfg, comboTools=[TrigMultiTrkComboHypoToolFromDict])
Class/function to configure muon chains.
__init__(self, chainDict)
getBphysStepDictionary(self)
assembleBphysChain(self, flags)
Class/function to configure muon chains.