32 """Main overlay content"""
34 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
35 acc = ComponentAccumulator()
38 if hasattr(configFlags,
'_Overlay_pileupDigitizationMetadata'):
39 if configFlags.IOVDb.WriteParametersAsMetaData:
41 from IOVDbMetaDataTools.ParameterWriterConfig
import writeParametersToMetaData
42 from DigitizationConfig.DigitizationParametersConfig
import folderName
43 from AthenaCommon.Logging
import logging
44 logOverlay = logging.getLogger(
'OverlayMetadataConfig')
45 logOverlay.info(
'Writing overlay digitization parameters directly to in-file metadata (bypassing DigitParams.db)')
47 pileupDict = configFlags._Overlay_pileupDigitizationMetadata
48 runNumber = configFlags.Input.RunNumbers[0]
49 runNumberEnd = configFlags.Input.RunNumbers[-1]
50 if runNumberEnd == runNumber:
55 for key
in pileupDict:
56 value = str(pileupDict[key])
58 logOverlay.info(
'DigitizationMetaData: setting "%s" to be %s', key, value)
60 acc.merge(writeParametersToMetaData(configFlags, folderName, params, runNumber, runNumberEnd))
64 from IOVDbMetaDataTools.MetaDataToCondAlgConfig
import MetaDataToCondAlgCfg
65 acc.merge(MetaDataToCondAlgCfg(configFlags, folderName))
68 from OverlayConfiguration.OverlayMetadata
import writeOverlayDigitizationMetadata
69 writeOverlayDigitizationMetadata(configFlags, configFlags._Overlay_pileupDigitizationMetadata)
74 if not configFlags.IOVDb.WriteParametersAsMetaData
and hasattr(configFlags,
'_Overlay_pileupDigitizationMetadata'):
75 acc.merge(writeDigitizationParameters(configFlags))
77 acc.merge(IOVDbMetaDataToolWithRunNumberOverrideCfg(configFlags))
80 if not configFlags.Sim.DoFullChain:
81 acc.merge(EventInfoOverlayCfg(configFlags))
84 if not configFlags.Sim.DoFullChain
and (getEnabledDetectors(configFlags)
or configFlags.Digitization.EnableTruth):
85 acc.merge(CopyMcEventCollectionCfg(configFlags))
86 if configFlags.Digitization.EnableTruth:
87 acc.merge(CopyJetTruthInfoCfg(configFlags))
88 acc.merge(CopyPileupParticleTruthInfoCfg(configFlags))
89 acc.merge(CopyCaloCalibrationHitContainersCfg(configFlags))
90 if not configFlags.Sim.DoFullChain:
91 acc.merge(CopyTrackRecordCollectionsCfg(configFlags))
94 if configFlags.Digitization.InputBeamSigmaZ > 0:
95 from BeamEffects.BeamEffectsAlgConfig
import BeamSpotReweightingAlgCfg
96 acc.merge(BeamSpotReweightingAlgCfg(configFlags))
99 if configFlags.Detector.EnableBCM:
100 from InDetOverlay.BCMOverlayConfig
import BCMOverlayCfg
101 acc.merge(BCMOverlayCfg(configFlags))
102 if configFlags.Detector.EnablePixel:
103 from InDetOverlay.PixelOverlayConfig
import PixelOverlayCfg
104 acc.merge(PixelOverlayCfg(configFlags))
105 if configFlags.Detector.EnableSCT:
106 from InDetOverlay.SCTOverlayConfig
import SCTOverlayCfg
107 acc.merge(SCTOverlayCfg(configFlags))
108 if configFlags.Detector.EnableTRT:
109 from InDetOverlay.TRTOverlayConfig
import TRTOverlayCfg
110 acc.merge(TRTOverlayCfg(configFlags))
113 if configFlags.Detector.EnableITkPixel:
114 from InDetOverlay.ITkPixelOverlayConfig
import ITkPixelOverlayCfg
115 acc.merge(ITkPixelOverlayCfg(configFlags))
116 if configFlags.Detector.EnableITkStrip:
117 from InDetOverlay.ITkStripOverlayConfig
import ITkStripOverlayCfg
118 acc.merge(ITkStripOverlayCfg(configFlags))
119 if configFlags.Detector.EnablePLR:
120 from InDetOverlay.PLR_OverlayConfig
import PLR_OverlayCfg
121 acc.merge(PLR_OverlayCfg(configFlags))
124 if configFlags.Detector.EnableHGTD:
125 from HGTD_Overlay.HGTD_OverlayConfig
import HGTD_OverlayCfg
126 acc.merge(HGTD_OverlayCfg(configFlags))
129 if configFlags.Detector.EnableLAr:
130 from LArDigitization.LArDigitizationConfig
import LArOverlayCfg, LArSuperCellOverlayCfg
131 acc.merge(LArOverlayCfg(configFlags))
132 if configFlags.Detector.EnableL1Calo:
133 if configFlags.Overlay.DataOverlay:
136 from TrigT1CaloSim.TTL1OverlayConfig
import LArTTL1OverlayCfg
137 acc.merge(LArTTL1OverlayCfg(configFlags))
138 if configFlags.GeoModel.Run >= LHCPeriod.Run3:
139 acc.merge(LArSuperCellOverlayCfg(configFlags))
141 if configFlags.Detector.EnableTile:
142 from TileSimAlgs.TileDigitizationConfig
import TileDigitizationCfg, TileOverlayTriggerDigitizationCfg
143 acc.merge(TileDigitizationCfg(configFlags))
144 if configFlags.Detector.EnableL1Calo:
145 if configFlags.Overlay.DataOverlay:
148 from TrigT1CaloSim.TTL1OverlayConfig
import TileTTL1OverlayCfg
149 acc.merge(TileTTL1OverlayCfg(configFlags))
150 acc.merge(TileOverlayTriggerDigitizationCfg(configFlags))
153 from MuonConfig.MuonOverlayConfig
import MuonOverlayCfg
154 acc.merge(MuonOverlayCfg(configFlags))
157 if configFlags.Overlay.doTrackOverlay:
159 from TrkEventCnvTools.TrkEventCnvToolsConfig
import TrkEventCnvSuperToolCfg
160 acc.merge(TrkEventCnvSuperToolCfg(configFlags))
161 if configFlags.Detector.GeometryITk:
162 from OverlayCopyAlgs.OverlayCopyAlgsConfig
import CopyITkTrackCollectionsCfg, CopyITkPixelClusterContainerCfg, CopyITkStripClusterContainerCfg
163 acc.merge(CopyITkTrackCollectionsCfg(configFlags))
164 acc.merge(CopyITkPixelClusterContainerCfg(configFlags))
165 acc.merge(CopyITkStripClusterContainerCfg(configFlags))
167 from OverlayCopyAlgs.OverlayCopyAlgsConfig
import CopyTrackCollectionsCfg,CopyPixelClusterContainerCfg, CopySCT_ClusterContainerCfg
168 acc.merge(CopyTrackCollectionsCfg(configFlags))
169 acc.merge(CopyPixelClusterContainerCfg(configFlags))
170 acc.merge(CopySCT_ClusterContainerCfg(configFlags))
172 if configFlags.Overlay.DataOverlay:
174 acc.merge(CopyBackgroundVertexCfg(configFlags))
176 if configFlags.Overlay.DataOverlayConditions:
177 executeFromFragment(configFlags.Overlay.DataOverlayConditions, configFlags, acc)
180 from xAODMetaDataCnv.InfileMetaDataConfig
import SetupMetaDataForStreamCfg
181 if configFlags.Output.doWriteRDO:
182 acc.merge(SetupMetaDataForStreamCfg(configFlags,
"RDO"))
183 if configFlags.Output.doWriteRDO_SGNL:
184 acc.merge(SetupMetaDataForStreamCfg(configFlags,
"RDO_SGNL"))
186 if not configFlags.Input.isMC
and configFlags.Input.DataYear > 0:
187 acc.merge(TagInfoMgrCfg(configFlags, tagValuePairs={
188 "data_year": str(configFlags.Input.DataYear)