ATLAS Offline Software
Loading...
Searching...
No Matches
TEST3.py
Go to the documentation of this file.
1# Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2# TEST3.py - derivation framework example demonstrating thinning
3
4from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
5from AthenaConfiguration.ComponentFactory import CompFactory
6from AthenaConfiguration.Enums import MetadataCategory
7
8def TEST3ThinningToolCfg(flags,streamName):
9 """Configure the example thinning tool"""
10 acc = ComponentAccumulator()
11 acc.addPublicTool(CompFactory.DerivationFramework.ThinningToolExample(name = "TEST3ThinningTool",
12 StreamName = streamName,
13 TrackPtCut = 20000.0),
14 primary = True)
15 return(acc)
16
17
18def TEST3KernelCfg(flags, name='TEST3Kernel', **kwargs):
19 """Configure the derivation framework driving algorithm (kernel)"""
20 acc = ComponentAccumulator()
21 thinningTool = acc.getPrimaryAndMerge(TEST3ThinningToolCfg(flags,kwargs["StreamName"]))
22 DerivationKernel = CompFactory.DerivationFramework.DerivationKernel
23 acc.addEventAlgo(DerivationKernel(name, ThinningTools = [thinningTool]))
24 return acc
25
26
27def TEST3Cfg(flags):
28
29 acc = ComponentAccumulator()
30 acc.merge(TEST3KernelCfg(flags, name="TEST3Kernel",StreamName = "StreamDAOD_TEST3"))
31
32 from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
33 from xAODMetaDataCnv.InfileMetaDataConfig import SetupMetaDataForStreamCfg
34 from DerivationFrameworkCore.SlimmingHelper import SlimmingHelper
35 TEST3SlimmingHelper = SlimmingHelper("TEST3SlimmingHelper", NamesAndTypes = flags.Input.TypedCollections, flags = flags)
36 TEST3SlimmingHelper.SmartCollections = ["EventInfo","InDetTrackParticles"]
37 TEST3ItemList = TEST3SlimmingHelper.GetItemList()
38 acc.merge(OutputStreamCfg(flags, "DAOD_TEST3", ItemList=TEST3ItemList, AcceptAlgs=["TEST3Kernel"]))
39 acc.merge(SetupMetaDataForStreamCfg(flags, "DAOD_TEST3", AcceptAlgs=["TEST3Kernel"], createMetadata=[MetadataCategory.CutFlowMetaData]))
40 return acc
TEST3Cfg(flags)
Definition TEST3.py:27
TEST3KernelCfg(flags, name='TEST3Kernel', **kwargs)
Definition TEST3.py:18
TEST3ThinningToolCfg(flags, streamName)
Definition TEST3.py:8