ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Reconstruction
RecJobTransforms
python
RDOtoBS_Skeleton.py
Go to the documentation of this file.
1
# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2
3
from
PyJobTransforms.TransformUtils
import
processPreExec, processPreInclude, processPostExec, processPostInclude
4
5
from
AthenaCommon.Logging
import
logging
6
log = logging.getLogger(
'RDOtoBS'
)
7
8
# force no legacy job properties
9
from
AthenaCommon
import
JobProperties
10
JobProperties.jobPropertiesDisallowed =
True
11
12
13
def
configureFlags
(runArgs):
14
# some basic settings here...
15
from
AthenaConfiguration.AllConfigFlags
import
initConfigFlags
16
flags = initConfigFlags()
17
from
PyJobTransforms.CommonRunArgsToFlags
import
commonRunArgsToFlags
18
commonRunArgsToFlags(runArgs, flags)
19
20
# Autoconfigure enabled subdetectors
21
if
hasattr(runArgs,
'detectors'
):
22
detectors = runArgs.detectors
23
else
:
24
detectors =
None
25
26
# Input
27
if
hasattr(runArgs,
'inputRDOFile'
):
28
flags.Input.Files = runArgs.inputRDOFile
29
30
# Output
31
if
hasattr(runArgs,
'outputBSFile'
):
32
flags.Output.BSFileName = runArgs.outputBSFile
33
34
flags.Output.doWriteBS=
True
35
36
from
RecJobTransforms.RecoConfigFlags
import
recoRunArgsToFlags
37
recoRunArgsToFlags(runArgs, flags)
38
39
from
AthenaConfiguration.Enums
import
ProductionStep
40
flags.Common.ProductionStep=ProductionStep.Reconstruction
41
42
# Setup detector flags
43
from
AthenaConfiguration.DetectorConfigFlags
import
setupDetectorFlags
44
setupDetectorFlags(flags, detectors, use_metadata=
True
, toggle_geometry=
True
, keep_beampipe=
True
)
45
# Print reco domain status
46
from
RecJobTransforms.RecoConfigFlags
import
printRecoFlags
47
printRecoFlags(flags)
48
49
# Setup perfmon flags from runargs
50
from
PerfMonComps.PerfMonConfigHelpers
import
setPerfmonFlagsFromRunArgs
51
setPerfmonFlagsFromRunArgs(flags, runArgs)
52
53
# process pre-include/exec
54
processPreInclude(runArgs, flags)
55
processPreExec(runArgs, flags)
56
57
# To respect --athenaopts
58
flags.fillFromArgs()
59
60
# Lock flags
61
flags.lock()
62
63
return
flags
64
65
66
def
fromRunArgs
(runArgs):
67
68
import
time
69
timeStart = time.time()
70
71
flags =
configureFlags
(runArgs)
72
73
from
AthenaConfiguration.MainServicesConfig
import
MainServicesCfg
74
cfg = MainServicesCfg(flags)
75
from
AthenaPoolCnvSvc.PoolReadConfig
import
PoolReadCfg
76
cfg.merge(PoolReadCfg(flags))
77
78
from
RecJobTransforms.RDOtoBS_Steering
import
RDOtoBS_Steering
79
cfg.merge(RDOtoBS_Steering(flags))
80
81
from
ByteStreamCnvSvc.ByteStreamConfig
import
ByteStreamWriteCfg
82
cfg.merge(ByteStreamWriteCfg(flags))
83
84
# Configure IOVDbMetaDataTool to serialize IOV metadata to ByteStream
85
from
AthenaConfiguration.ComponentAccumulator
import
ComponentAccumulator
86
from
AthenaConfiguration.ComponentFactory
import
CompFactory
87
iovca = ComponentAccumulator()
88
iovDbTool = CompFactory.IOVDbMetaDataTool(
"IOVDbMetaDataTool"
)
89
iovDbTool.FoldersToSerializeToBSMetadata = [
"/Digitization/Parameters"
]
90
iovca.addPublicTool(iovDbTool)
91
cfg.merge(iovca)
92
log.info(
"Configured IOVDbMetaDataTool to serialize folders to ByteStream metadata: %s"
,
93
iovDbTool.FoldersToSerializeToBSMetadata)
94
95
# Post-include
96
processPostInclude(runArgs, flags, cfg)
97
98
# Post-exec
99
processPostExec(runArgs, flags, cfg)
100
101
from
AthenaCommon.Constants
import
INFO
102
if
flags.Exec.OutputLevel <= INFO:
103
cfg.printConfig()
104
105
# Run the final accumulator
106
sc = cfg.run()
107
timeFinal = time.time()
108
log.info(
"Run RDOtoBS_skeleton in %d seconds"
, timeFinal - timeStart)
109
110
import
sys
111
sys.exit(sc.isFailure())
Constants
python.RDOtoBS_Skeleton.fromRunArgs
fromRunArgs(runArgs)
Definition
RDOtoBS_Skeleton.py:66
python.RDOtoBS_Skeleton.configureFlags
configureFlags(runArgs)
Definition
RDOtoBS_Skeleton.py:13
Generated on
for ATLAS Offline Software by
1.17.0