예제 #1
0
def convert_trigdec(seq, xaod_key, key):
    from AthenaCommon.AppMgr import ToolSvc

    from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool
    tdt = Trig__TrigDecisionTool('TrigDecisionToolCnv',
                                 TrigDecisionKey='TrigDecision',
                                 UseAODDecision=True)
    ToolSvc += tdt

    from xAODTriggerCnv.xAODTriggerCnvConf import \
         xAODMaker__TrigDecisionCnvAlg, \
         xAODMaker__TrigDecisionCnvTool
    tdct = xAODMaker__TrigDecisionCnvTool(xaod_key + 'CnvTool',
                                          TrigDecisionTool=tdt)
    alg = xAODMaker__TrigDecisionCnvAlg(xaod_key + 'Cnv',
                                        AODKey=key,
                                        xAODKey=xaod_key,
                                        CnvTool=tdct)
    seq += alg
    return
예제 #2
0
    def __init__(self):
        from AthenaCommon.AlgSequence import AlgSequence
        TopAlg = AlgSequence()

        from xAODTriggerCnv.xAODTriggerCnvConf import xAODMaker__TrigDecisionCnvAlg
        alg = xAODMaker__TrigDecisionCnvAlg()

        # In order for the conversion to work we need to setup the TrigDecisionTool such that it uses the old decision
        ToolSvc.TrigDecisionTool.UseAODDecision = True
        ToolSvc.TrigDecisionTool.TrigDecisionKey = "TrigDecision"

        from AthenaCommon.Logging import logging  # loads logger
        log = logging.getLogger('WritexAODTrigDecision')
        log.info('TrigDecisionTool setup to use old decision')

        alg.xAODKey = "xTrigDecision"
        TopAlg += alg

        from xAODTriggerCnv.xAODTriggerCnvConf import xAODMaker__TrigNavigationCnvAlg
        TopAlg += xAODMaker__TrigNavigationCnvAlg()

        log.info('TrigDecision writing to xAOD enabled')
예제 #3
0
from AnalysisTriggerAlgs.AnalysisTriggerAlgsConfig import \
        RoIBResultToAOD
idx=0
for i in topSequence.getAllChildren():
    idx += 1
    if "TrigSteer_HLT" in i.getName():
       if not hasattr(i,'RoIBResultToxAOD'):
           topSequence.insert(idx+1, RoIBResultToAOD("RoIBResultToxAOD"))
    if "StreamRDO" in i.getName():
       from TrigDecisionMaker.TrigDecisionMakerConfig import TrigDecisionMaker,WritexAODTrigDecision
       topSequence.insert(idx, TrigDecisionMaker('TrigDecMaker'))
       from AthenaCommon.Logging import logging 
       log = logging.getLogger( 'WriteTrigDecisionToAOD' )
       log.info('TrigDecision writing enabled')
       from xAODTriggerCnv.xAODTriggerCnvConf import xAODMaker__TrigDecisionCnvAlg
       alg = xAODMaker__TrigDecisionCnvAlg()
       alg.AODKey = "TrigDecision"
       alg.xAODKey = "xTrigDecision"
       topSequence.insert(idx+1, alg)
       from xAODTriggerCnv.xAODTriggerCnvConf import xAODMaker__TrigNavigationCnvAlg
       topSequence.insert(idx+2, xAODMaker__TrigNavigationCnvAlg())

from AthenaCommon.AppMgr import ServiceMgr, ToolSvc
from TrigDecisionTool.TrigDecisionToolConf import *

if hasattr(ToolSvc, 'TrigDecisionTool'):
    ToolSvc.TrigDecisionTool.TrigDecisionKey = "TrigDecision"
    ToolSvc.TrigDecisionTool.UseAODDecision = True

# inform TD maker that some parts may be missing
if TriggerFlags.dataTakingConditions()=='Lvl1Only':
예제 #4
0
from AthenaCommon.AlgSequence import AlgSequence

topSequence = AlgSequence()

#fix xAOD trigger object by scheduling cnv alg again

include("RecExCond/RecExCommon_flags.py")

from xAODTriggerCnv.xAODTriggerCnvConf import xAODMaker__TrigDecisionCnvAlg

topSequence += xAODMaker__TrigDecisionCnvAlg("TrigDecisionCnvAlg")
topSequence.TrigDecisionCnvAlg.xAODKey = 'xTrigDecision'

from TrigDecisionTool.TrigDecisionToolConf import Trig__TrigDecisionTool

ToolSvc += Trig__TrigDecisionTool("TrigDecisionTool")