ATLAS Offline Software
TEST1.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 #!/usr/bin/env python
3 # TEST1.py - derivation framework example demonstrating skimming
4 
5 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
6 from AthenaConfiguration.ComponentFactory import CompFactory
7 from AthenaConfiguration.Enums import MetadataCategory
8 
10  """Configure the example skimming tool"""
11  acc = ComponentAccumulator()
12  acc.addPublicTool(CompFactory.DerivationFramework.SkimmingToolExample(name = "TEST1SkimmingTool",
13  MuonContainerKey = "Muons",
14  NumberOfMuons = 1,
15  MuonPtCut = 1000.0),
16  primary = True)
17  return(acc)
18 
19 def TEST1KernelCfg(flags, name='TEST1Kernel', **kwargs):
20  """Configure the derivation framework driving algorithm (kernel)"""
21  acc = ComponentAccumulator()
22  skimmingTool = acc.getPrimaryAndMerge(TEST1SkimmingToolCfg(flags))
23  DerivationKernel = CompFactory.DerivationFramework.DerivationKernel
24  acc.addEventAlgo(DerivationKernel(name, SkimmingTools = [skimmingTool]))
25  return acc
26 
27 
28 def TEST1Cfg(flags):
29 
30  acc = ComponentAccumulator()
31  acc.merge(TEST1KernelCfg(flags, name="TEST1Kernel"))
32 
33  from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
34  from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
35  from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
36  TEST1SlimmingHelper = SlimmingHelper("TEST1SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
37  TEST1SlimmingHelper.SmartCollections = ["EventInfo",
38  "Electrons",
39  "Photons",
40  "Muons",
41  "PrimaryVertices",
42  "InDetTrackParticles",
43  "AntiKt4EMTopoJets",
44  "AntiKt4EMPFlowJets",
45  "BTagging_AntiKt4EMPFlow",
46  "BTagging_AntiKtVR30Rmax4Rmin02Track",
47  "MET_Baseline_AntiKt4EMTopo",
48  "MET_Baseline_AntiKt4EMPFlow",
49  "TauJets",
50  "DiTauJets",
51  "DiTauJetsLowPt",
52  "AntiKt10LCTopoTrimmedPtFrac5SmallR20Jets",
53  "AntiKtVR30Rmax4Rmin02PV0TrackJets"]
54  TEST1ItemList = TEST1SlimmingHelper.GetItemList()
55 
56  acc.merge(OutputStreamCfg(flags, "DAOD_TEST1", ItemList=TEST1ItemList, AcceptAlgs=["TEST1Kernel"]))
57  acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_TEST1", AcceptAlgs=["TEST1Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData]))
58 
59  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
HION12.DerivationKernel
DerivationKernel
Definition: HION12.py:67
python.TEST1.TEST1KernelCfg
def TEST1KernelCfg(flags, name='TEST1Kernel', **kwargs)
Definition: TEST1.py:19
python.TEST1.TEST1SkimmingToolCfg
def TEST1SkimmingToolCfg(flags)
Definition: TEST1.py:9
python.TEST1.TEST1Cfg
def TEST1Cfg(flags)
Definition: TEST1.py:28
InfileMetaDataConfig.SetupMetaDataForStreamCfg
def SetupMetaDataForStreamCfg(flags, streamName="", AcceptAlgs=None, createMetadata=None, propagateMetadataFromInput=True, *args, **kwargs)
Definition: InfileMetaDataConfig.py:216
SlimmingHelper
Definition: SlimmingHelper.py:1