3 """Configuration for writing parameters as in-file metadata"""
8 Configure IOVDbMetaDataTool to write parameters as in-file metadata.
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
18 ComponentAccumulator with configured IOVDbSvc and IOVDbMetaDataTool
20 from IOVDbSvc.IOVDbSvcConfig
import IOVDbSvcCfg
22 acc =
IOVDbSvcCfg(flags, FoldersToMetaData=[folderName])
25 metaDataTool = acc.getPublicTool(
"IOVDbMetaDataTool")
29 f
"{folderName}:beginRun":
str(beginRun),
30 f
"{folderName}:endRun":
str(endRun)
32 for key, value
in parameters.items():
33 payloadDict[f
"{folderName}:{key}"] = value
36 metaDataTool.Payloads = payloadDict
39 from EventInfoMgt.TagInfoMgrConfig
import TagInfoMgrCfg
41 tagInfoMgr = tagAcc.getService(
"TagInfoMgr")
42 currentPairs = dict(tagInfoMgr.ExtraTagValuePairs)
if tagInfoMgr.ExtraTagValuePairs
else {}
43 currentPairs[folderName] =
"HEAD"
44 tagInfoMgr.ExtraTagValuePairs = currentPairs