3"""Define method to construct configured Tile info loader service"""
6from AthenaConfiguration.ComponentFactory
import CompFactory
7from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
8from AthenaConfiguration.AccumulatorCache
import AccumulatorCache
12 """Return component accumulator with configured Tile info loader service
15 flags -- Athena configuration flags
18 from AthenaCommon.Logging
import logging
19 msg = logging.getLogger(
'TileInfoLoaderCfg')
21 from TileConditions.TileCablingSvcConfig
import TileCablingSvcCfg
22 acc = ComponentAccumulator()
23 acc.merge (TileCablingSvcCfg(flags))
25 kwargs.setdefault(
'LoadWienerFilterWeights', flags.Tile.doWiener)
27 if 'NoiseScaleIndex' not in kwargs:
28 if flags.Tile.doOpt2
and not flags.Tile.doOptATLAS:
29 msg.info(
"Adjusting TileInfo to return cell noise for Opt.Filter with iterations")
30 kwargs[
'NoiseScaleIndex'] = 2
32 msg.info(
"Adjusting TileInfo to return cell noise for Opt.Filter without iterations")
33 kwargs[
'NoiseScaleIndex'] = 1
35 kwargs.setdefault(
'TileNoise', flags.Digitization.DoCaloNoise)
36 if kwargs[
'TileNoise']:
37 msg.info(
"Switching ON noise in Tile Digitization" )
39 msg.info(
"Switching OFF noise in Tile Digitization" )
42 TileInfoLoader=CompFactory.TileInfoLoader
43 acc.addService(
TileInfoLoader(**kwargs), primary =
True, create=
True)
48if __name__ ==
"__main__":
50 from AthenaConfiguration.AllConfigFlags
import initConfigFlags
51 from AthenaConfiguration.TestDefaults
import defaultTestFiles
52 from AthenaCommon.Logging
import log
58 flags = initConfigFlags()
59 flags.Input.Files = defaultTestFiles.RAW_RUN2
62 acc = ComponentAccumulator()
65 acc.printConfig(withDetails =
True, summariseProps =
True)
66 print(acc.getService(
'TileInfoLoader'))
67 acc.store( open(
'TileInfoLoader.pkl',
'wb') )
void print(char *figname, TCanvas *c1)
TileInfoLoaderCfg(flags, **kwargs)