ATLAS Offline Software
DESDM_ALLCELLS.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
2 #!/usr/bin/env python
3 #====================================================================
4 # DESDM_ALLCELLS.py
5 # Component accumulator version
6 # IMPORTANT: this is NOT an AOD based derived data type but one built
7 # during reconstruction from HITS or RAW. It consequently has to be
8 # run from Reco_tf
9 #====================================================================
10 
11 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
12 from AthenaConfiguration.ComponentFactory import CompFactory
13 from AthenaConfiguration.Enums import MetadataCategory
14 
15 # Main algorithm config
16 def DESDM_ALLCELLSKernelCfg(configFlags, name='DESDM_ALLCELLSKernel', **kwargs):
17  """Configure the derivation framework driving algorithm (kernel) for ALLCELLS"""
18  acc = ComponentAccumulator()
19 
20  # ALLCELLS has no skimming
21  ALLCELLSKernel = CompFactory.DerivationFramework.DerivationKernel(name)
22  acc.addEventAlgo( ALLCELLSKernel )
23 
24  return acc
25 
26 # Main config
27 def DESDM_ALLCELLSCfg(configFlags):
28  """Main config fragment for DESDM_ALLCELLS"""
29  acc = ComponentAccumulator()
30 
31  # Main algorithm (kernel)
32  acc.merge(DESDM_ALLCELLSKernelCfg(configFlags, name="DESDM_ALLCELLSKernel", StreamName = 'StreamDESDM_ALLCELLS'))
33 
34  # =============================
35  # Define contents of the format
36  # =============================
37  from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
38 
39  items = ['xAOD::EventInfo#*', 'xAOD::EventAuxInfo#*',
40  # trigger content
41  'xAOD::TrigDecision#xTrigDecision', 'xAOD::TrigDecisionAuxInfo#xTrigDecisionAux.',
42  'xAOD::TrigCompositeContainer#HLTNav_Summary_AODSlimmed', 'xAOD::TrigCompositeAuxContainer#HLTNav_Summary_AODSlimmedAux.',
43  'xAOD::TrigConfKeys#TrigConfKeys',
44  'xAOD::BunchConfKey#BunchConfKey',
45  # Standard CP objects
46  'xAOD::ElectronContainer#Electrons','xAOD::ElectronAuxContainer#ElectronsAux.',
47  'xAOD::PhotonContainer#Photons','xAOD::PhotonAuxContainer#PhotonsAux.',
48  'xAOD::VertexContainer#PrimaryVertices','xAOD::VertexAuxContainer#PrimaryVerticesAux.-vxTrackAtVertex.-MvfFitInfo.-isInitialized.-VTAV',
49  'xAOD::TrackParticleContainer#GSFTrackParticles','xAOD::TrackParticleAuxContainer#GSFTrackParticlesAux.',
50  'xAOD::VertexContainer#GSFConversionVertices','xAOD::VertexAuxContainer#GSFConversionVerticesAux.-vxTrackAtVertex',
51  'xAOD::TrackParticleContainer#InDetTrackParticles','xAOD::TrackParticleAuxContainer#InDetTrackParticlesAux.',
52  'xAOD::CaloClusterContainer#egammaClusters','xAOD::CaloClusterAuxContainer#egammaClustersAux.',
53  'xAOD::CaloClusterContainer#ForwardElectronClusters','xAOD::CaloClusterAuxContainer#ForwardElectronClustersAux.',
54  'xAOD::CaloClusterContainer#CaloCalTopoClusters','xAOD::CaloClusterAuxContainer#CaloCalTopoClustersAux.',
55  'CaloCellContainer#AllCalo',
56  'CaloClusterCellLinkContainer#CaloCalTopoClusters_links',
57  'CaloClusterCellLinkContainer#egammaClusters_links',
58  'CaloClusterCellLinkContainer#ForwardElectronClusters_links'
59  ]
60 
61  if configFlags.Input.isMC:
62  items += ['xAOD::TruthParticleContainer#*','xAOD::TruthParticleAuxContainer#TruthParticlesAux.-caloExtension',
63  'xAOD::TruthVertexContainer#*','xAOD::TruthVertexAuxContainer#*',
64  'xAOD::TruthEventContainer#*','xAOD::TruthEventAuxContainer#*']
65 
66  acc.merge( OutputStreamCfg( configFlags, 'DESDM_ALLCELLS', ItemList=items, AcceptAlgs=["DESDM_ALLCELLSKernel"]) )
67 
68  from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
69  acc.merge(
71  configFlags,
72  "DESDM_ALLCELLS",
73  AcceptAlgs=["DESDM_ALLCELLSKernel"],
74  createMetadata=[
75  MetadataCategory.ByteStreamMetaData,
76  MetadataCategory.LumiBlockMetaData,
77  MetadataCategory.TriggerMenuMetaData,
78  ],
79  )
80  )
81 
82  return acc
83 
84 
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
python.OutputStreamConfig.OutputStreamCfg
def OutputStreamCfg(flags, streamName, ItemList=[], MetadataItemList=[], disableEventTag=False, trigNavThinningSvc=None, takeItemsFromInput=False, extendProvenanceRecord=True, AcceptAlgs=[], HelperTools=[])
Definition: OutputStreamConfig.py:12
python.DESDM_ALLCELLS.DESDM_ALLCELLSKernelCfg
def DESDM_ALLCELLSKernelCfg(configFlags, name='DESDM_ALLCELLSKernel', **kwargs)
Definition: DESDM_ALLCELLS.py:16
python.DESDM_ALLCELLS.DESDM_ALLCELLSCfg
def DESDM_ALLCELLSCfg(configFlags)
Definition: DESDM_ALLCELLS.py:27
InfileMetaDataConfig.SetupMetaDataForStreamCfg
def SetupMetaDataForStreamCfg(flags, streamName="", AcceptAlgs=None, createMetadata=None, propagateMetadataFromInput=True, *args, **kwargs)
Definition: InfileMetaDataConfig.py:216