12 """Return component accumulator with configured Tile cabling service
15 flags -- Athena configuration flags
18 from AthenaCommon.Logging
import logging
19 msg = logging.getLogger(
'TileCablingSvc')
21 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
24 from TileGeoModel.TileGMConfig
import TileGMCfg
27 tileCablingSvc = CompFactory.TileCablingSvc()
29 geometry = flags.GeoModel.AtlasVersion
31 if geometry.startswith(
'ATLAS-CTB'):
32 tileCablingSvc.CablingType = -1
33 msg.info(
"Forcing TestBeam cabling for geometry %s", geometry)
34 elif not flags.Common.isOnline:
35 runNumber = flags.Input.RunNumbers[0]
36 if flags.Input.OverrideRunNumber > 0:
37 from AthenaKernel.EventIdOverrideConfig
import getMinMaxRunNumbers
39 if flags.GeoModel.Run
is LHCPeriod.Run1:
40 if runNumber > 219651:
42 tileCablingSvc.CablingType = 4
43 msg.warning(
"Forcing RUN2 cabling for run %s with geometry %s", runNumber, geometry)
45 elif flags.GeoModel.Run
is LHCPeriod.Run2:
46 if (flags.Input.isMC
and runNumber >= 310000)
or runNumber >= 343000
or runNumber < 1:
48 tileCablingSvc.CablingType = 5
49 msg.info(
"Forcing RUN2a (2018) cabling for run %s with geometry %s", runNumber, geometry)
52 tileCablingSvc.CablingType = 4
53 msg.info(
"Forcing RUN2 (2014-2017) cabling for run %s with geometry %s", runNumber, geometry)
54 elif flags.GeoModel.Run
is LHCPeriod.Run3:
55 tileCablingSvc.CablingType = 6
56 msg.info(
"Forcing RUN3 cabling for run %s with geometry %s", flags.GeoModel.Run.value, geometry)
58 if flags.GeoModel.Run
is LHCPeriod.Run1:
59 tileCablingSvc.CablingType = 4
60 msg.warning(
"Forcing RUN2 (2014-2017) cabling for unknown run number and geometry %s", geometry)
61 if flags.GeoModel.Run
is LHCPeriod.Run2:
62 tileCablingSvc.CablingType = 5
63 msg.info(
"Forcing RUN2a (2018) cabling for online run with geometry %s", geometry)
64 elif flags.GeoModel.Run
is LHCPeriod.Run3:
65 tileCablingSvc.CablingType = 6
66 msg.info(
"Forcing RUN3 cabling for online run with geometry %s", geometry)
67 elif flags.GeoModel.Run
is LHCPeriod.Run4:
68 tileCablingSvc.CablingType = 6
69 msg.warning(
"Forcing RUN3 cabling beyond Run3 for online run with geometry %s", geometry)
71 msg.error(
"Tile Cabling version not set for %s", geometry)
73 acc.addService(tileCablingSvc, primary =
True)