Skip to content
Snippets Groups Projects
Commit 2e4fbd19 authored by Graeme Stewart's avatar Graeme Stewart
Browse files

PhysicsAnalysis/D3PDMaker/L1CaloD3PDMaker deleted from 20.11

parent d44dbe99
No related branches found
No related tags found
No related merge requests found
Showing
with 0 additions and 764 deletions
package L1CaloD3PDMaker
author John Morris <john.morris@cern.ch>
use AtlasPolicy AtlasPolicy-*
private
use AthenaKernel AthenaKernel-* Control
use AtlasROOT AtlasROOT-* External
use D3PDMakerUtils D3PDMakerUtils-* PhysicsAnalysis/D3PDMaker
use SGTools SGTools-* Control
use EventInfo EventInfo-* Event
use GaudiInterface GaudiInterface-* External
use AthenaPoolUtilities AthenaPoolUtilities-* Database/AthenaPOOL
use AnalysisTriggerEvent AnalysisTriggerEvent-* PhysicsAnalysis/AnalysisTrigger
use CaloEvent CaloEvent-* Calorimeter
use TileEvent TileEvent-* TileCalorimeter
use LArRawEvent LArRawEvent-* LArCalorimeter
use LArRecUtils LArRecUtils-* LArCalorimeter
use TrigT1CaloEvent TrigT1CaloEvent-* Trigger/TrigT1
use TrigT1CaloUtils TrigT1CaloUtils-* Trigger/TrigT1
use TrigT1Interfaces TrigT1Interfaces-* Trigger/TrigT1
use TrigT1CaloToolInterfaces TrigT1CaloToolInterfaces-* Trigger/TrigT1
use TrigT1CaloCalibToolInterfaces TrigT1CaloCalibToolInterfaces-* Trigger/TrigT1
end_private
library L1CaloD3PDMaker *.cxx components/*.cxx
apply_pattern component_library
apply_pattern declare_python_modules files="*.py"
apply_pattern declare_joboptions files="*.py"
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo CMM CP Hits
# @author John Morris <john.morris@cern.ch>
#
from D3PDMakerCoreComps.D3PDObject import make_SGDataVector_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloCMMCPHits_D3PDObject = make_SGDataVector_D3PDObject('DataVector<LVL1::CMMCPHits>',
'CMMCPHits',
'L1CaloCMM_CPHits_',
'L1CaloCMMCPHits_D3PDObject')
#Level 0
L1CaloCMMCPHits_D3PDObject.defineBlock(0,'CMMCPHits',
L1CaloD3PDMaker.L1CaloCMMCPHitsFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo CMM Et Sums
# @author John Morris <john.morris@cern.ch>
#
from D3PDMakerCoreComps.D3PDObject import make_SGDataVector_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloCMMEtSums_D3PDObject = make_SGDataVector_D3PDObject('DataVector<LVL1::CMMEtSums>',
'CMMEtSums',
'L1CaloCMM_EtSums_',
'L1CaloCMMEtSums_D3PDObject')
#Level 0
L1CaloCMMEtSums_D3PDObject.defineBlock(0,'CMMEtSums',
L1CaloD3PDMaker.L1CaloCMMEtSumsFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo CMM Jet Hits
# @author John Morris <john.morris@cern.ch>
#
from D3PDMakerCoreComps.D3PDObject import make_SGDataVector_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloCMMJetHits_D3PDObject = make_SGDataVector_D3PDObject('DataVector<LVL1::CMMJetHits>',
'CMMJetHits',
'L1CaloCMM_JetHits_',
'L1CaloCMMJetHits_D3PDObject')
#Level 0
L1CaloCMMJetHits_D3PDObject.defineBlock(0,'CMMJetHits',
L1CaloD3PDMaker.L1CaloCMMJetHitsFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo CMM RoIs
# @author John Morris <john.morris@cern.ch>
#
from D3PDMakerCoreComps.D3PDObject import make_SG_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloCMMRoI_D3PDObject = make_SG_D3PDObject('LVL1::CMMRoI',
'CMMRoIs',
'L1CaloCMM_RoIs_',
'L1CaloCMMRoI_D3PDObject')
#Level 0
L1CaloCMMRoI_D3PDObject.defineBlock(0,'CMMRoI',
L1CaloD3PDMaker.L1CaloCMMRoIFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo CPM Hits
# @author John Morris <john.morris@cern.ch>
#
from D3PDMakerCoreComps.D3PDObject import make_SGDataVector_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloCPMHits_D3PDObject = make_SGDataVector_D3PDObject('DataVector<LVL1::CPMHits>',
'CPMHits',
'L1CaloCPM_Hits_',
'L1CaloCPMHits_D3PDObject')
#Level 0
L1CaloCPMHits_D3PDObject.defineBlock(0,'CPMHits',
L1CaloD3PDMaker.L1CaloCPMHitsFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo CPM RoI
# @author John Morris <john.morris@cern.ch>
#
from AthenaCommon.AppMgr import ToolSvc
from TrigT1CaloTools.TrigT1CaloToolsConf import LVL1__L1EmTauTools
L1EmTauTools_d3pd = LVL1__L1EmTauTools("LVL1EmTauTools_d3pd")
L1EmTauTools_d3pd.LVL1ConfigSvc="TrigConf::TrigConfigSvc/TrigConfigSvc"
ToolSvc += L1EmTauTools_d3pd
from D3PDMakerCoreComps.D3PDObject import make_SGDataVector_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloCPMRoI_D3PDObject = make_SGDataVector_D3PDObject('DataVector<LVL1::CPMRoI>',
'CPMRoIs',
'L1CaloCPM_RoI_',
'L1CaloCPMRoI_D3PDObject')
#Level 0
L1CaloCPMRoI_D3PDObject.defineBlock(0,'CPMRoI',
L1CaloD3PDMaker.L1CaloCPMRoIFillerTool,
L1EmTauTool = L1EmTauTools_d3pd)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo CPM Tower
# @author John Morris <john.morris@cern.ch>
#
from D3PDMakerCoreComps.D3PDObject import make_SGDataVector_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloCPMTower_D3PDObject = make_SGDataVector_D3PDObject('DataVector<LVL1::CPMTower>',
'CPMTowers',
'L1CaloCPM_Tower_',
'L1CaloCPMTower_D3PDObject')
#Level 0
L1CaloCPMTower_D3PDObject.defineBlock(0,'CPMTower',
L1CaloD3PDMaker.L1CaloCPMTowerFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# @file L1CaloD3PDMaker/python/L1CaloD3PD.py
# @author John Morris <john.morris@cern.ch>
# @brief Construct a L1Calo D3PD
from OutputStreamAthenaPool.MultipleStreamManager import MSMgr
from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags
D3PDMakerFlags.DoTrigger = False
import L1CaloD3PDMaker
from EventCommonD3PDMaker.EventInfoD3PDObject import EventInfoD3PDObject
from L1CaloD3PDMaker.L1CaloPPM_D3PDObject import L1CaloPPM_D3PDObject
TTreeName = 'physics'
dbTTreeName = 'L1CaloDB'
from RecExConfig.RecFlags import rec
isMC = rec.doTruth.get_Value()
if isMC:
from EventCommonD3PDMaker.GenEventD3PDObject import GenEventD3PDObject
from TruthD3PDMaker.TruthParticleD3PDObject import TruthParticleD3PDObject
from TauD3PDMaker.TauD3PDMakerConf import TruthTausToSG
from L1CaloD3PDMaker.L1CaloPPMdbMC_D3PDObject import L1CaloPPMdbMC_D3PDObject
if not isMC:
from L1CaloD3PDMaker.L1CaloPPMdbData_D3PDObject import L1CaloPPMdbData_D3PDObject
METIncludes = ['MET_RefFinal','MET_Final','MET_Topo','MET_LocHadTopo','MET_Base','MET_TopoObj','MET_Base_Samplings']
JetIncludes = ['Kinematics','KineMoments','DQMoments','JetQual','EMFraction','JESMoments','EMScale','Samplings']
JetHLTIncludes = ['Kinematics','EMScale','JetRoIword']
if isMC:
METIncludes.append('MET_Truth_NonInt')
def L1CaloD3PD(filename,
level = 0,
Jets = False,
Egamma = False,
MET = False,
Taus = False,
Database = False,
Collision = False,
Calibration = False,
Reprocess = False,
ReprocessList = 0):
if(Calibration == True):
alg = MSMgr.NewRootStream( 'StreamNTUP_L1Calo', filename , 'L1Calo' )
ppm_blockargs = { 'L1CaloPPM' : {'DoCalibration' : True}}
alg += EventInfoD3PDObject(level = 0)
### L1Calo PPM
alg += L1CaloPPM_D3PDObject(level = 9,blockargs = ppm_blockargs,prefix='')
from L1CaloD3PDMaker.L1CaloRODHeader_D3PDObject import L1CaloRODHeader_D3PDObject
### L1Calo CPM
from L1CaloD3PDMaker.L1CaloCPMHits_D3PDObject import L1CaloCPMHits_D3PDObject
from L1CaloD3PDMaker.L1CaloCPMRoI_D3PDObject import L1CaloCPMRoI_D3PDObject
from L1CaloD3PDMaker.L1CaloCPMTower_D3PDObject import L1CaloCPMTower_D3PDObject
alg += L1CaloCPMHits_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloCPMRoI_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloCPMTower_D3PDObject(level = 0, allowMissing = True)
### L1Calo JEM
from L1CaloD3PDMaker.L1CaloJEMEtSums_D3PDObject import L1CaloJEMEtSums_D3PDObject
from L1CaloD3PDMaker.L1CaloJEMHits_D3PDObject import L1CaloJEMHits_D3PDObject
from L1CaloD3PDMaker.L1CaloJEMRoI_D3PDObject import L1CaloJEMRoI_D3PDObject
from L1CaloD3PDMaker.L1CaloJetElement_D3PDObject import L1CaloJetElement_D3PDObject
alg += L1CaloJEMEtSums_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloJEMHits_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloJEMRoI_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloJetElement_D3PDObject(level = 0, allowMissing = True)
### L1Calo CMM
from L1CaloD3PDMaker.L1CaloCMMCPHits_D3PDObject import L1CaloCMMCPHits_D3PDObject
from L1CaloD3PDMaker.L1CaloCMMEtSums_D3PDObject import L1CaloCMMEtSums_D3PDObject
from L1CaloD3PDMaker.L1CaloCMMJetHits_D3PDObject import L1CaloCMMJetHits_D3PDObject
from L1CaloD3PDMaker.L1CaloCMMRoI_D3PDObject import L1CaloCMMRoI_D3PDObject
alg += L1CaloCMMCPHits_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloCMMEtSums_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloCMMJetHits_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloCMMRoI_D3PDObject(level = 0, allowMissing = True)
## L1Calo ROD Headers
alg += L1CaloRODHeader_D3PDObject(level = 0, allowMissing = True)
if(Database == True):
dbAlg = MSMgr.NewRootStream( 'StreamNTUP_L1CaloDB', filename, dbTTreeName )
if isMC:
dbAlg += L1CaloPPMdbMC_D3PDObject(level = 0)
if not isMC:
dbAlg += L1CaloPPMdbData_D3PDObject(level = 0)
if(Calibration == False):
alg = MSMgr.NewRootStream( 'StreamNTUP_L1CaloPhysics', filename, TTreeName )
### Event and Collision Info
if(Collision == True):
from TriggerD3PDMaker.TrigDecisionD3PDObject import TrigDecisionD3PDObject
from TriggerD3PDMaker.TrigDBKeysD3PDObject import TrigDBKeysD3PDObject
from TriggerD3PDMaker.TrigConfMetadata import addTrigConfMetadata
from TrackD3PDMaker.VertexD3PDObject import PrimaryVertexD3PDObject
from TrackD3PDMaker.TrackD3PDObject import TrackParticleD3PDObject
from CaloD3PDMaker.LArCollisionTimeD3PDObject import LArCollisionTimeD3PDObject
from CaloD3PDMaker.CollisionDecisionD3PDObject import CollisionDecisionD3PDObject
from CaloD3PDMaker.MBTSTimeD3PDObject import MBTSTimeD3PDObject
alg += EventInfoD3PDObject(level = 0)
alg += PrimaryVertexD3PDObject (0, 'PrimaryVertex', allowMissing = True, sgkey = D3PDMakerFlags.VertexSGKey(), prefix = 'vxp_')
alg += TrigDecisionD3PDObject(level = 2)
alg += TrigDBKeysD3PDObject(level = 0)
addTrigConfMetadata( alg )
alg += LArCollisionTimeD3PDObject(level = 1)
alg += CollisionDecisionD3PDObject (level = 1)
alg += MBTSTimeD3PDObject (level = 1)
### L1Calo PPM
if(Reprocess == False):
alg += L1CaloPPM_D3PDObject(level = 0)
if(Reprocess == True):
ppm_blockargs = { 'L1CaloPPM' : {'DoCalibration' : True}}
alg += L1CaloPPM_D3PDObject(level = 0,blockargs = ppm_blockargs)
### L1Calo CPM
from L1CaloD3PDMaker.L1CaloCPMHits_D3PDObject import L1CaloCPMHits_D3PDObject
from L1CaloD3PDMaker.L1CaloCPMRoI_D3PDObject import L1CaloCPMRoI_D3PDObject
from L1CaloD3PDMaker.L1CaloCPMTower_D3PDObject import L1CaloCPMTower_D3PDObject
alg += L1CaloCPMHits_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloCPMRoI_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloCPMTower_D3PDObject(level = 0, allowMissing = True)
### L1Calo JEM
from L1CaloD3PDMaker.L1CaloJEMEtSums_D3PDObject import L1CaloJEMEtSums_D3PDObject
from L1CaloD3PDMaker.L1CaloJEMHits_D3PDObject import L1CaloJEMHits_D3PDObject
from L1CaloD3PDMaker.L1CaloJEMRoI_D3PDObject import L1CaloJEMRoI_D3PDObject
from L1CaloD3PDMaker.L1CaloJetElement_D3PDObject import L1CaloJetElement_D3PDObject
alg += L1CaloJEMEtSums_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloJEMHits_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloJEMRoI_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloJetElement_D3PDObject(level = 0, allowMissing = True)
### L1Calo CMM
from L1CaloD3PDMaker.L1CaloCMMCPHits_D3PDObject import L1CaloCMMCPHits_D3PDObject
from L1CaloD3PDMaker.L1CaloCMMEtSums_D3PDObject import L1CaloCMMEtSums_D3PDObject
from L1CaloD3PDMaker.L1CaloCMMJetHits_D3PDObject import L1CaloCMMJetHits_D3PDObject
from L1CaloD3PDMaker.L1CaloCMMRoI_D3PDObject import L1CaloCMMRoI_D3PDObject
alg += L1CaloCMMCPHits_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloCMMEtSums_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloCMMJetHits_D3PDObject(level = 0, allowMissing = True)
alg += L1CaloCMMRoI_D3PDObject(level = 0, allowMissing = True)
if not isMC:
from L1CaloD3PDMaker.L1CaloRODHeader_D3PDObject import L1CaloRODHeader_D3PDObject
alg += L1CaloRODHeader_D3PDObject(level = 0, allowMissing = True) ### ROD Headers are not in mc10
### L1Calo RoIs
from TriggerD3PDMaker.JetROID3PDObject import JetROID3PDObject
from TriggerD3PDMaker.EmTauROID3PDObject import EmTauROID3PDObject
from TriggerD3PDMaker.EnergySumROID3PDObject import EnergySumROID3PDObject
from TriggerD3PDMaker.JetETROID3PDObject import JetETROID3PDObject
alg += JetROID3PDObject(level = 3, prefix='trig_L1_jet_')
alg += EmTauROID3PDObject(level = 3,prefix='trig_L1_emtau_',exclude=['Triggers'])
alg += JetETROID3PDObject(level = 2,prefix='trig_L1_jetEt_')
alg += EnergySumROID3PDObject(level = 2,prefix='trig_L1_energySum_', allowMissing = True)
### Jets
if(Jets == True):
from TrigJetD3PDMaker.TrigJetD3PDObject import TrigJetD3PDObject
from JetD3PDMaker.JetD3PDObject import JetD3PDObject
alg += TrigJetD3PDObject(level = 2,prefix = 'trig_L2_jet_',exclude=['Decision'])
alg += JetD3PDObject (level = 0,include = JetHLTIncludes, prefix='trig_EF_jet_', sgkey='HLT_TrigJetRec',name='HLT_TrigJetRec_Filler')
alg += JetD3PDObject (level = 0,include = JetIncludes, prefix='AntiKt4TopoEMJet_', sgkey='AntiKt4TopoEMJets',name='AntiKt4TopoEMJets_Filler')
alg += JetD3PDObject (level = 0,include = JetIncludes, prefix='AntiKt6TopoEMJet_', sgkey='AntiKt6TopoEMJets',name='AntiKt6TopoEMJets_Filler')
alg += JetD3PDObject (level = 0,include = JetIncludes, prefix='AntiKt4LCTopoJet_', sgkey='AntiKt4LCTopoJets',name='AntiKt4LCTopoJets_Filler')
alg += JetD3PDObject (level = 0,include = JetIncludes, prefix='AntiKt6LCTopoJet_', sgkey='AntiKt6LCTopoJets',name='AntiKt6LCTopoJets_Filler')
if isMC:
alg += JetD3PDObject (0, prefix='AntiKt4TruthJets_', sgkey='AntiKt4TruthJets')
alg += JetD3PDObject (0, prefix='AntiKt6TruthJets_', sgkey='AntiKt6TruthJets')
### Egamma
if(Egamma == True):
from TrigEgammaD3PDMaker.TrigElectronD3PDObject import TrigElectronD3PDObject
from TrigEgammaD3PDMaker.EFElectronD3PDObject import EFElectronD3PDObject
from egammaD3PDMaker.ElectronD3PDObject import ElectronD3PDObject
alg += TrigElectronD3PDObject(level = 0)
alg += EFElectronD3PDObject(level = 0)
alg += ElectronD3PDObject(level = 2)
from TrigEgammaD3PDMaker.TrigPhotonD3PDObject import TrigPhotonD3PDObject
from TrigEgammaD3PDMaker.EFPhotonD3PDObject import EFPhotonD3PDObject
from egammaD3PDMaker.PhotonD3PDObject import PhotonD3PDObject
alg += TrigPhotonD3PDObject(level =0)
alg += EFPhotonD3PDObject(level = 0)
alg += PhotonD3PDObject(level = 2)
### Missing Et
if(MET == True):
from TrigMissingETD3PDMaker.TrigMETD3PDObject import TrigMETD3PDObject
from MissingETD3PDMaker.MissingETD3PDObject import MissingETD3PDObject
alg += TrigMETD3PDObject( 0 )
alg += TrigMETD3PDObject( 0, prefix = "trig_EF_met_", sgkey = "HLT_TrigEFMissingET" )
alg += MissingETD3PDObject(level=-1,include=METIncludes,allowMissing = True)
### Taus
if(Taus == True):
from TrigTauD3PDMaker.TrigL2TauD3PDObject import TrigL2TauD3PDObject
from TrigTauD3PDMaker.TrigEFTauD3PDObject import TrigEFTauD3PDObject
from TauD3PDMaker.TauD3PDObject import TauD3PDObject
alg += TrigL2TauD3PDObject(level = 0)
alg += TrigEFTauD3PDObject(level = 0)
alg += TauD3PDObject(level = 1,prefix='Tau_')
### MonteCarlo extras
if isMC:
alg += GenEventD3PDObject (1)
alg += TruthParticleD3PDObject (1, prefix='mc_')
### Reprocess L1Calo from ADC to RoI
if(Reprocess == True):
from L1CaloD3PDMaker.ReprocessL1Calo_D3PDObject import ReprocessL1Calo_D3PDObject
for i in ReprocessList:
Reprocess_blockargs = { 'ReprocessL1Calo' : {'ReprocessName' : i} }
alg += ReprocessL1Calo_D3PDObject(level = 0,blockargs = Reprocess_blockargs,
prefix = 'L1Calo_rtt_trig_L1_' + i + '_',
name = 'L1Calo_rtt_trig_L1_' + i + '_')
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# @file L1CaloD3PDMaker/python/L1CaloD3PDProblemChannel.py
# @author John Morris <john.morris@cern.ch>
# @date Aptil 2010
# @brief Construct a L1Calo Problem Channel D3PD
from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags
D3PDMakerFlags.DoTrigger = False
from L1CaloD3PDMaker.L1CaloProblemChannel_D3PDObject import L1CaloProblemChannel_D3PDObject
def L1CaloD3PDProblemChannel(alg,
level = 0):
alg += L1CaloProblemChannel_D3PDObject(level = 0)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# @file L1CaloD3PDMaker/python/L1CaloD3PDProdFlags.py
# @author scott snyder
# @date Oct, 2012
# @brief Define flags and configuration settings used when making
# L1Calo D3PDs from production transforms.
from AthenaCommon.JobProperties import JobProperty
class WriteL1CALOD3PD (JobProperty):
"""Produce the L1Calo D3PD."""
statusOn = True
allowedTypes = ['bool']
StoredValue = False
StreamName = 'StreamNTUP_L1CALO'
FileName = ''
isVirtual = False
DPDMakerScript = "L1CaloD3PDMaker/L1CaloD3PD_prodJobOFragment.py"
TreeNames = ['physics']
SubSteps = ['e2d']
class WriteL1CALOPROBD3PD (JobProperty):
"""Produce the L1Calo Problem Channel D3PD."""
statusOn = True
allowedTypes = ['bool']
StoredValue = False
StreamName = 'StreamNTUP_L1CALOPROB'
FileName = ''
isVirtual = False
DPDMakerScript = "L1CaloD3PDMaker/L1CaloProbChanD3PD_prodJobOFragment.py"
TreeNames = ['L1CaloTree']
SubSteps = ['e2d']
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# @file L1CaloD3PDMaker/python/L1CaloD3PDUpgrade.py
# @author John Morris <john.morris@cern.ch>
# @brief Construct a L1Calo Upgrade D3PD
from OutputStreamAthenaPool.MultipleStreamManager import MSMgr
from D3PDMakerConfig.D3PDMakerFlags import D3PDMakerFlags
D3PDMakerFlags.DoTrigger = False
import L1CaloD3PDMaker
from EventCommonD3PDMaker.EventInfoD3PDObject import EventInfoD3PDObject
TTreeName = 'physics'
from RecExConfig.RecFlags import rec
isMC = rec.doTruth.get_Value()
def L1CaloD3PDUpgrade(filename,level = 0):
alg = MSMgr.NewRootStream( 'StreamNTUP_L1CaloPhysics', filename, TTreeName )
from TriggerD3PDMaker.TrigDecisionD3PDObject import TrigDecisionD3PDObject
from TriggerD3PDMaker.TrigDBKeysD3PDObject import TrigDBKeysD3PDObject
from TriggerD3PDMaker.TrigConfMetadata import addTrigConfMetadata
from TrackD3PDMaker.VertexD3PDObject import PrimaryVertexD3PDObject
from TrackD3PDMaker.TrackD3PDObject import TrackParticleD3PDObject
from CaloD3PDMaker.LArCollisionTimeD3PDObject import LArCollisionTimeD3PDObject
from CaloD3PDMaker.CollisionDecisionD3PDObject import CollisionDecisionD3PDObject
from CaloD3PDMaker.MBTSTimeD3PDObject import MBTSTimeD3PDObject
alg += EventInfoD3PDObject(level = 0)
alg += PrimaryVertexD3PDObject (0, 'PrimaryVertex', allowMissing = True, sgkey = D3PDMakerFlags.VertexSGKey(), prefix = 'vxp_')
alg += TrigDecisionD3PDObject(level = 2)
alg += TrigDBKeysD3PDObject(level = 0)
addTrigConfMetadata( alg )
alg += LArCollisionTimeD3PDObject(level = 1)
alg += CollisionDecisionD3PDObject (level = 1)
alg += MBTSTimeD3PDObject (level = 1)
### Trigger RoIs
from TriggerD3PDMaker.JetROID3PDObject import JetROID3PDObject
from TriggerD3PDMaker.EmTauROID3PDObject import EmTauROID3PDObject
from TriggerD3PDMaker.EnergySumROID3PDObject import EnergySumROID3PDObject
from TriggerD3PDMaker.JetETROID3PDObject import JetETROID3PDObject
from TriggerD3PDMaker.MuonROID3PDObject import MuonROID3PDObject
alg += JetROID3PDObject(level = 3, prefix='trig_L1_jet_')
alg += EmTauROID3PDObject(level = 3,prefix='trig_L1_emtau_',exclude=['Triggers'])
alg += JetETROID3PDObject(level = 2,prefix='trig_L1_jetEt_')
alg += EnergySumROID3PDObject(level = 2,prefix='trig_L1_energySum_', allowMissing = True)
alg += MuonROID3PDObject(level = 2,prefix='trig_L1_mu_')
### MonteCarlo extras
if isMC:
from EventCommonD3PDMaker.GenEventD3PDObject import GenEventD3PDObject
from TruthD3PDMaker.TruthParticleD3PDObject import TruthParticleD3PDObject
alg += GenEventD3PDObject (1)
alg += TruthParticleD3PDObject (1, prefix='mc_')
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo JEM Et Sums
# @author John Morris <john.morris@cern.ch>
#
from D3PDMakerCoreComps.D3PDObject import make_SGDataVector_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloJEMEtSums_D3PDObject = make_SGDataVector_D3PDObject('DataVector<LVL1::JEMEtSums>',
'JEMEtSums',
'L1CaloJEM_EtSums_',
'L1CaloJEMEtSums_D3PDObject')
#Level 0
L1CaloJEMEtSums_D3PDObject.defineBlock(0,'JEMEtSums',
L1CaloD3PDMaker.L1CaloJEMEtSumsFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo JEM Hits
# @author John Morris <john.morris@cern.ch>
#
from D3PDMakerCoreComps.D3PDObject import make_SGDataVector_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloJEMHits_D3PDObject = make_SGDataVector_D3PDObject('DataVector<LVL1::JEMHits>',
'JEMHits',
'L1CaloJEM_Hits_',
'L1CaloJEMHits_D3PDObject')
#Level 0
L1CaloJEMHits_D3PDObject.defineBlock(0,'JEMHits',
L1CaloD3PDMaker.L1CaloJEMHitsFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo JEM RoI
# @author John Morris <john.morris@cern.ch>
#
from D3PDMakerCoreComps.D3PDObject import make_SGDataVector_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloJEMRoI_D3PDObject = make_SGDataVector_D3PDObject('DataVector<LVL1::JEMRoI>',
'JEMRoIs',
'L1CaloJEM_RoI_',
'L1CaloJEMRoI_D3PDObject')
#Level 0
L1CaloJEMRoI_D3PDObject.defineBlock(0,'JEMRoI',
L1CaloD3PDMaker.L1CaloJEMRoIFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $Id$
#
# D3PD object saving L1Calo Jet Elements
# @author John Morris <john.morris@cern.ch>
#
from D3PDMakerCoreComps.D3PDObject import make_SGDataVector_D3PDObject
import EventCommonD3PDMaker
import L1CaloD3PDMaker
L1CaloJetElement_D3PDObject = make_SGDataVector_D3PDObject('DataVector<LVL1::JetElement>',
'JetElements',
'L1CaloJEM_JetEl_',
'L1CaloJetElement_D3PDObject')
#Level 0
L1CaloJetElement_D3PDObject.defineBlock(0,'JetElement',
L1CaloD3PDMaker.L1CaloJetElementFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $ID$
#
# @file L1CaloD3PDMaker/python/L1CaloNoFCALRoI_D3PDObject.py
# @author John Morris <john.morris@cern.ch>
# @date October 2011
# @brief L1Calo RoIs with no FCAL
#
import D3PDMakerCoreComps
import L1CaloD3PDMaker
from D3PDMakerCoreComps.D3PDObject import D3PDObject
# Maker
def makeL1CaloNoFCALRoI_D3PDObject(name, prefix, object_name, getter = None, sgkey = ''):
return D3PDMakerCoreComps.VoidObjFillerTool(name, Prefix = prefix,
ObjectName = object_name)
# create the object type
L1CaloNoFCALRoI_D3PDObject = D3PDObject(makeL1CaloNoFCALRoI_D3PDObject,
default_object_name = 'L1CaloNoFCALRoI_D3PDObject',
default_name = 'L1CaloNoFCALRoIsFiller')
# define blocks
L1CaloNoFCALRoI_D3PDObject.defineBlock(lod = 0,
name = 'L1CaloNoFCALRoI',
func = L1CaloD3PDMaker.L1CaloNoFCALRoIFillerTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $ID$
#
# @file L1CaloD3PDMaker/python/L1CaloPPM_D3PDObject.py
# @author John Morris <john.morris@cern.ch>
# @date March 2010
# @brief Fills L1Calo PPM information
#
import D3PDMakerCoreComps
import L1CaloD3PDMaker
from D3PDMakerCoreComps.D3PDObject import D3PDObject
from RecExConfig.RecFlags import rec
isMC = rec.doTruth.get_Value()
if not isMC:
from IOVDbSvc.CondDB import conddb
conddb.addFolder('TRIGGER','/TRIGGER/L1Calo/V1/Conditions/DisabledTowers')
conddb.addFolder('TRIGGER','/TRIGGER/L1Calo/V1/Calibration/PpmDeadChannels')
# Maker
def makeL1CaloPPM_D3PDObject(name, prefix, object_name, getter = None, sgkey = ''):
return D3PDMakerCoreComps.VoidObjFillerTool(name, Prefix = prefix,
ObjectName = object_name)
# create the object type
L1CaloPPM_D3PDObject = D3PDObject(makeL1CaloPPM_D3PDObject,
default_object_name = 'L1CaloPPM_D3PDObject',
default_name = 'L1CaloPPMFiller')
# define blocks
L1CaloPPM_D3PDObject.defineBlock(lod = 0,
name = 'L1CaloPPM',
func = L1CaloD3PDMaker.L1CaloPPMFillerTool,
prefix = 'L1CaloPPM_',
DoCalibration = False,
MinADC = 36,
MinCaloCellEnergy = 0.8,
UseRandom = True,
MinRandom = 0.01,
IsMC = isMC)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $ID$
#
# @file L1CaloD3PDMaker/python/L1CaloPPMdbData_D3PDObject.py
# @author John Morris <john.morris@cern.ch>
# @brief Fills L1Calo PPM Database information
#
import D3PDMakerCoreComps
import L1CaloD3PDMaker
from D3PDMakerCoreComps.D3PDObject import D3PDObject
from IOVDbSvc.CondDB import conddb
conddb.addFolder('TRIGGER','/TRIGGER/L1Calo/V1/Calibration/Physics/PprChanCalib')
conddb.addFolder('TRIGGER','/TRIGGER/Receivers/Conditions/VgaDac')
conddb.addFolder('TRIGGER','/TRIGGER/Receivers/Factors/CalibGains')
from AthenaCommon.AppMgr import ToolSvc
# include LAr HV Correction tool
from LArRecUtils.LArHVCorrToolDefault import LArHVCorrToolDefault
theLArHVCorrTool=LArHVCorrToolDefault()
ToolSvc+=theLArHVCorrTool
# Maker
def makeL1CaloPPMdbData_D3PDObject(name, prefix, object_name, getter = None, sgkey = ''):
return D3PDMakerCoreComps.VoidObjFillerTool(name, Prefix = prefix,
ObjectName = object_name)
# create the object type
L1CaloPPMdbData_D3PDObject = D3PDObject(makeL1CaloPPMdbData_D3PDObject,
default_object_name = 'L1CaloPPMdbData_D3PDObject',
default_name = 'L1CaloPPMdbDataFiller')
# define blocks
L1CaloPPMdbData_D3PDObject.defineBlock(0,'L1CaloPPMdbData',
func = L1CaloD3PDMaker.L1CaloPPMdbDataFillerTool,
prefix = '',
LArHVCorrTool = theLArHVCorrTool)
# Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
# $ID$
#
# @file L1CaloD3PDMaker/python/L1CaloPPMdbMC_D3PDObject.py
# @author John Morris <john.morris@cern.ch>
# @brief Fills L1Calo PPM Database information
#
import D3PDMakerCoreComps
import L1CaloD3PDMaker
from D3PDMakerCoreComps.D3PDObject import D3PDObject
# Maker
def makeL1CaloPPMdbMC_D3PDObject(name, prefix, object_name, getter = None, sgkey = ''):
return D3PDMakerCoreComps.VoidObjFillerTool(name, Prefix = prefix,
ObjectName = object_name)
# create the object type
L1CaloPPMdbMC_D3PDObject = D3PDObject(makeL1CaloPPMdbMC_D3PDObject,
default_object_name = 'L1CaloPPMdbMC_D3PDObject',
default_name = 'L1CaloPPMdbMCFiller')
# define blocks
L1CaloPPMdbMC_D3PDObject.defineBlock(0,'L1CaloPPMdbMC',
func = L1CaloD3PDMaker.L1CaloPPMdbMCFillerTool,
prefix = '')
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment