ATLAS Offline Software
TEST4.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 # TEST4.py - derivation framework example demonstrating slimming
3 # Note this is the same as TEST1,2,3 but without any tools
4 
5 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
6 from AthenaConfiguration.ComponentFactory import CompFactory
7 from AthenaConfiguration.Enums import MetadataCategory
8 
9 def TEST4KernelCfg(flags, name='TEST4Kernel', **kwargs):
10  """Configure the derivation framework driving algorithm (kernel)"""
11  acc = ComponentAccumulator()
12  DerivationKernel = CompFactory.DerivationFramework.DerivationKernel
13  acc.addEventAlgo(DerivationKernel(name))
14  return acc
15 
16 
17 def TEST4Cfg(flags):
18 
19  acc = ComponentAccumulator()
20  acc.merge(TEST4KernelCfg(flags, name="TEST4Kernel"))
21 
22  from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
23  from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
24  from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
25  TEST4SlimmingHelper = SlimmingHelper("TEST4SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
26  TEST4SlimmingHelper.SmartCollections = ["EventInfo",
27  "Electrons",
28  "Photons",
29  "Muons",
30  "PrimaryVertices",
31  "InDetTrackParticles",
32  "AntiKt4EMTopoJets",
33  "AntiKt4EMPFlowJets",
34  "BTagging_AntiKt4EMPFlow",
35  "BTagging_AntiKtVR30Rmax4Rmin02Track",
36  "MET_Baseline_AntiKt4EMTopo",
37  "MET_Baseline_AntiKt4EMPFlow",
38  "TauJets",
39  "DiTauJets",
40  "DiTauJetsLowPt",
41  "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
42  "AntiKtVR30Rmax4Rmin02PV0TrackJets"]
43  TEST4ItemList = TEST4SlimmingHelper.GetItemList()
44 
45  acc.merge(OutputStreamCfg(flags, "DAOD_TEST4", ItemList=TEST4ItemList, AcceptAlgs=["TEST4Kernel"]))
46  acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_TEST4", AcceptAlgs=["TEST4Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData]))
47 
48  return acc
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.TEST4.TEST4KernelCfg
def TEST4KernelCfg(flags, name='TEST4Kernel', **kwargs)
Definition: TEST4.py:9
InfileMetaDataConfig.SetupMetaDataForStreamCfg
def SetupMetaDataForStreamCfg(flags, streamName="", AcceptAlgs=None, createMetadata=None, propagateMetadataFromInput=True, *args, **kwargs)
Definition: InfileMetaDataConfig.py:222
SlimmingHelper
Definition: SlimmingHelper.py:1
python.HION12.DerivationKernel
DerivationKernel
Definition: HION12.py:66
python.TEST4.TEST4Cfg
def TEST4Cfg(flags)
Definition: TEST4.py:17