5from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
6from AthenaConfiguration.Enums
import BeamType
9@file TileDigitsToNtupleConfig.py
10@brief Python configuration of Tile digits to ntuple algorithm for the Run III
13from AthenaConfiguration.ComponentFactory
import CompFactory
17 ''' Function to configure Tile digits to h40 ntuple algorithm.'''
19 acc = ComponentAccumulator()
21 from TileGeoModel.TileGMConfig
import TileGMCfg
22 acc.merge(TileGMCfg(flags))
24 from TileConditions.TileCablingSvcConfig
import TileCablingSvcCfg
25 acc.merge( TileCablingSvcCfg(flags) )
27 from TileConditions.TileInfoLoaderConfig
import TileInfoLoaderCfg
28 acc.merge( TileInfoLoaderCfg(flags) )
31 prefix =
'tiletb' if flags.Beam.Type
is BeamType.TestBeam
else 'tile'
32 outputFile = f
'{prefix}.ntup.root'
34 ntupleSvc = CompFactory.NTupleSvc()
35 ntupleSvc.Output = [
"NTUP DATAFILE='%s' OPT='NEW'" % outputFile]
36 acc.addService(ntupleSvc)
38 kwargs.setdefault(
'TileDigitsContainer',
'TileDigitsCnt')
39 kwargs.setdefault(
'NTupleLoc',
'/NTUP')
41 TileDigitsToNtuple = CompFactory.TileDigitsToNtuple
44 acc.setAppProperty(
'HistogramPersistency',
'ROOT')
49if __name__ ==
'__main__':
52 from AthenaConfiguration.AllConfigFlags
import initConfigFlags
53 flags = initConfigFlags()
56 from AthenaCommon.Logging
import log
60 from AthenaConfiguration.TestDefaults
import defaultTestFiles
61 flags.Input.Files = defaultTestFiles.RDO_RUN3
62 flags.Exec.MaxEvents = 3
65 log.info(
'Final configuration flags follow:')
71 from AthenaConfiguration.MainServicesConfig
import MainServicesCfg
72 cfg = MainServicesCfg(flags)
74 from AthenaPoolCnvSvc.PoolReadConfig
import PoolReadCfg
75 cfg.merge(PoolReadCfg(flags))
79 cfg.printConfig(withDetails=
True, summariseProps=
True)
81 with open(
'TileDigitsToNtupleConfig.pkl',
'wb')
as f:
88 sys.exit(0
if sc.isSuccess()
else 1)
TileDigitsToNtupleCfg(flags, outputFile=None, **kwargs)