11 evSel = CompFactory.EventSelectorAthenaPool(
"EventSelector",
12 InputCollections=flags.Input.Files,
13 SkipEvents=flags.Exec.SkipEvents,
14 ConversionService=
"AthenaPoolSharedIOCnvSvc" if flags.MP.UseSharedReader
or flags.MP.UseSharedWriter
else "AthenaPoolCnvSvc")
15 if flags.Input.OverrideRunNumber:
16 if not flags.Input.RunAndLumiOverrideList:
21 if flags.Input.ConditionsRunNumber > 0:
23 DataRunNumber = flags.Input.ConditionsRunNumber
25 InitialTimeStamp = flags.IOVDb.RunToTimestampDict.get(DataRunNumber, 1)
26 if not flags.Sim.DoFullChain:
27 OldRunNumber = flags.Input.RunNumbers[0]
28 elif flags.Input.RunNumbers:
30 DataRunNumber = flags.Input.RunNumbers[0]
31 FirstLB = flags.Input.LumiBlockNumbers[0]
32 InitialTimeStamp = flags.Input.TimeStamps[0]
33 assert DataRunNumber >= 0, (
34 "flags.Input.OverrideRunNumber was True, but provided DataRunNumber (%d) is negative. "
35 "Use a real run number from data." % DataRunNumber)
36 evSel.OverrideRunNumber =
True
37 evSel.RunNumber = DataRunNumber
38 evSel.FirstLB = FirstLB
39 evSel.InitialTimeStamp = InitialTimeStamp
40 if hasattr(evSel,
"OverrideRunNumberFromInput"):
41 evSel.OverrideRunNumberFromInput =
True
43 evSel.OldRunNumber = OldRunNumber
44 elif flags.Common.ProductionStep
in [ProductionStep.Simulation, ProductionStep.FastChain]:
46 from AthenaKernel.EventIdOverrideConfig
import getMinMaxRunNumbers, getFirstLumiBlock
48 evSel.OverrideRunNumber =
True
49 evSel.RunNumber = minMax[0]
51 evSel.InitialTimeStamp = flags.IOVDb.RunToTimestampDict.get(minMax[0], 1)
52 if hasattr(evSel,
"OverrideRunNumberFromInput"):
53 evSel.OverrideRunNumberFromInput =
True
57 from AthenaKernel.EventIdOverrideConfig
import EvtIdModifierSvcCfg
59 elif flags.Common.ProductionStep
in [ProductionStep.Simulation]
and len(flags.Input.RunNumbers)
and flags.Sim.ISF.ReSimulation:
61 evSel.OverrideRunNumber =
True
62 evSel.RunNumber = flags.Input.RunNumbers[0]
63 if flags.Input.LumiBlockNumbers:
64 evSel.FirstLB = flags.Input.LumiBlockNumbers[0]
65 evSel.InitialTimeStamp = flags.IOVDb.RunToTimestampDict.get(flags.Input.RunNumbers[0], 1)
67 result.addService(evSel)