73 from AthenaCommon.Logging
import logging
74 log = logging.getLogger(
"GeneratorsInfo")
75 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
77 generatorsData = flags.Input.GeneratorsInfo
78 log.info(f
"Generators data: {generatorsData}")
80 missingVersion =
False
81 for k, v
in generatorsData.items():
82 if v
is None and k
not in ignoredGenerators:
85 if not missingVersion:
88 log.info(
"At least one MC generator is missing version information. Attempting to fix...")
90 from PyUtils.AMITagHelperConfig
import inputAMITags
93 if tags
and tags[0].startswith(
"e"):
98 if flags.Input.MCChannelNumber
and flags.Input.MCChannelNumber
in releaseDataSampleOverridesDict:
99 log.warning(f
"Overriding e-tag for sample {flags.Input.MCChannelNumber} to {releaseDataSampleOverridesDict[flags.Input.MCChannelNumber]}.")
100 tag = releaseDataSampleOverridesDict[flags.Input.MCChannelNumber]
103 if tag
not in releaseDataDict:
104 log.warning(f
"Could not find release data for tag {tag}.")
107 releaseData = releaseDataDict[tag]
108 for k, v
in generatorsData.items():
109 if v
is None and k
not in ignoredGenerators
and k
in releaseData:
110 log.info(f
"Setting version for {k} to {releaseData[k]}.")
111 generatorsData[k] = releaseData[k]
115 from EventInfoMgt.TagInfoMgrConfig
import TagInfoMgrCfg