1"""Define functions for event bookkeeping configuration using ComponentAccumulator
3Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
6from AthenaConfiguration.ComponentFactory
import CompFactory
7from AthenaServices.MetaDataSvcConfig
import MetaDataSvcCfg
11 """BookkeeperTool config"""
12 tool = CompFactory.BookkeeperTool(name,
13 InputCollName = output_name,
14 OutputCollName = output_name)
15 acc = MetaDataSvcCfg(flags, tools=[tool])
16 acc.addPublicTool(tool)
21 """BookkeeperDumperTool configuration"""
22 return MetaDataSvcCfg(flags, toolNames=[
'BookkeeperDumperTool'])
26 """CutFlowSvc configuration"""
29 kwargs.setdefault(
'Configured',
True)
31 kwargs.setdefault(
'InputStream', flags.Input.ProcessingTags[-1]
if flags.Input.ProcessingTags
else 'N/A')
33 from AthenaConfiguration.AutoConfigFlags
import GetFileMD
34 kwargs.setdefault(
'SkimmingCycle', GetFileMD(flags.Input.Files).
get(
'currentCutCycle', -1) + 1)
37 acc.addService(CompFactory.CutFlowSvc(**kwargs))
40 acc.addEventAlgo(CompFactory.AllExecutedEventsCounterAlg())
46 """AllWrittenEventsCounterAlg configuration"""
47 acc = ComponentAccumulator(CompFactory.AthSequencer(
"AthOutSeq", StopOverride=
True))
48 acc.addEventAlgo(CompFactory.AllWrittenEventsCounterAlg())
53 """CutFlow output metadata list"""
55 'xAOD::CutBookkeeperContainer#' + output_name +
'*',
56 'xAOD::CutBookkeeperAuxContainer#' + output_name +
'*Aux.*',
57 'xAOD::CutBookkeeperContainer#Incomplete' + output_name +
'*',
58 'xAOD::CutBookkeeperAuxContainer#Incomplete' + output_name +
'*Aux.*'
T * get(TKey *tobj)
get a TObject* from a TKey* (why can't a TObject be a TKey?)