ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
Database
IOVDbMetaDataTools
python
ParameterWriterConfig.py
Go to the documentation of this file.
1
# Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
2
3
"""Configuration for writing parameters as in-file metadata"""
4
5
6
def
writeParametersToMetaData
(flags, folderName, parameters, beginRun, endRun):
7
"""
8
Configure IOVDbMetaDataTool to write parameters as in-file metadata.
9
10
Args:
11
flags: Configuration flags
12
folderName: Folder path (e.g., '/Simulation/Parameters')
13
parameters: Dictionary of key-value pairs to store as strings
14
beginRun: Begin run number for IOV
15
endRun: End run number for IOV
16
17
Returns:
18
ComponentAccumulator with configured IOVDbSvc and IOVDbMetaDataTool
19
"""
20
from
IOVDbSvc.IOVDbSvcConfig
import
IOVDbSvcCfg
21
22
acc = IOVDbSvcCfg(flags, FoldersToMetaData=(folderName,))
23
24
# Get the IOVDbMetaDataTool and configure its Payloads property
25
metaDataTool = acc.getPublicTool(
"IOVDbMetaDataTool"
)
26
27
# Build the payload dict in "folder:key" -> "value" format
28
payloadDict = {
29
f
"{folderName}:beginRun"
: str(beginRun),
30
f
"{folderName}:endRun"
: str(endRun)
31
}
32
for
key, value
in
parameters.items():
33
payloadDict[f
"{folderName}:{key}"
] = value
34
35
# Set the Payloads property (map of string->string)
36
metaDataTool.Payloads = payloadDict
37
38
# Add TagInfo entry for consistency with sqlite mode
39
from
EventInfoMgt.TagInfoMgrConfig
import
TagInfoMgrCfg
40
tagAcc = TagInfoMgrCfg(flags)
41
tagInfoMgr = tagAcc.getService(
"TagInfoMgr"
)
42
currentPairs = dict(tagInfoMgr.ExtraTagValuePairs)
if
tagInfoMgr.ExtraTagValuePairs
else
{}
43
currentPairs[folderName] =
"HEAD"
44
tagInfoMgr.ExtraTagValuePairs = currentPairs
45
acc.merge(tagAcc)
46
47
return
acc
python.ParameterWriterConfig.writeParametersToMetaData
writeParametersToMetaData(flags, folderName, parameters, beginRun, endRun)
Definition
ParameterWriterConfig.py:6
Generated on
for ATLAS Offline Software by
1.17.0