3 """Define methods to construct configured Tile integrator conditions tool and algorithm"""
5 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
6 from AthenaConfiguration.ComponentFactory
import CompFactory
9 """Return component accumulator with configured Tile integrator conditions algorithm
12 flags -- Athena configuration flags
14 Source -- source of Tile integrator conditions (COOL, FILE). Defaults to COOL.
15 TileIntegrator -- name of Tile integrator conditions object. Defaults to TileIntegrator.
20 source = kwargs.get(
'Source',
'COOL')
21 integrator = kwargs.get(
'TileIntegrator',
'TileIntegrator')
23 name = integrator +
'CondAlg'
28 from TileConditions.TileFolders
import TileFolders
29 folders = TileFolders(isMC = flags.Input.isMC, isOnline = flags.Common.isOnline)
31 if flags.IOVDb.DatabaseInstance ==
'CONDBR2':
32 integratorFolder = folders.addSplitOnline(
'/TILE/ONL01/INTEGRATOR',
'/TILE/OFL02/INTEGRATOR')
34 integratorFolder = folders.addSplitOnline(
'/TILE/OFL01/INTEGRATOR',
'/TILE/OFL02/INTEGRATOR')
36 TileCondProxyCoolFlt=CompFactory.getComp(
"TileCondProxyCool<TileCalibDrawerFlt>")
37 integratorProxy =
TileCondProxyCoolFlt(
'TileCondProxyCool_Integrator', Source = integratorFolder)
39 from IOVDbSvc.IOVDbSvcConfig
import addFolderList
42 elif source ==
'FILE':
44 TileCondProxyFileFlt=CompFactory.getComp(
"TileCondProxyFile<TileCalibDrawerFlt>")
45 integratorProxy =
TileCondProxyFileFlt(
'TileCondProxyFile_Integrator', Source =
'TileDefault.int')
47 raise(Exception(
"Invalid source: %s" % source))
49 TileCalibFltCondAlg=CompFactory.getComp(
"TileCalibCondAlg<TileCalibDrawerFlt>")
51 ConditionsProxy = integratorProxy,
52 TileCalibData = integrator)
54 acc.addCondAlgo(integratorCondAlg)
60 """Return component accumulator with configured private Tile integrator tool
62 flags -- Athena configuration flags
64 Source -- source of Tile integrator conditions (COOL, FILE). Defaults to COOL.
65 TileIntegrator -- name of Tile integrator conditions object. Defaults to TileIntegrator.
70 kwargs.setdefault(
'Source',
'COOL')
71 kwargs.setdefault(
'TileIntegrator',
'TileIntegrator')
73 integrator = kwargs[
'TileIntegrator']
74 name =
'TileCondToolIntegrator'
78 TileCondToolIntegrator=CompFactory.TileCondToolIntegrator
84 if __name__ ==
"__main__":
86 from AthenaConfiguration.AllConfigFlags
import initConfigFlags
87 from AthenaConfiguration.TestDefaults
import defaultTestFiles
88 from AthenaCommon.Logging
import log
95 flags.Input.Files = defaultTestFiles.RAW_RUN2
101 print(integratorTool)
103 acc.printConfig(withDetails =
True, summariseProps =
True)
104 print(acc.getService(
'IOVDbSvc'))
105 acc.store(
open(
'TileIntegrator.pkl',
'wb') )