2from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
3from AthenaConfiguration.ComponentFactory
import CompFactory
4from AthenaConfiguration.Enums
import Format
5from AtlasGeoModel.GeoModelConfig
import GeoModelCfg
6from IOVDbSvc.IOVDbSvcConfig
import addFolders, addFoldersSplitOnline
7from StripGeoModelXml.ITkStripGeoModelConfig
import ITkStripReadoutGeometryCfg
12 kwargs.setdefault(
"ConfigTool", acc.popPrivateTools())
13 acc.setPrivateTools(CompFactory.SCT_ByteStreamErrorsTool(name, **kwargs))
18 acc = ComponentAccumulator()
21 if flags.ITk.doStripModuleVeto:
24 kwargs.setdefault(
"ConditionsTools", ConditionsTools)
25 kwargs.setdefault(
"SCTDetEleCollKey",
"ITkStripDetectorElementCollection")
26 acc.setPrivateTools(CompFactory.SCT_ConditionsSummaryTool(name, **kwargs))
31 acc = ComponentAccumulator()
32 if not flags.Input.isMC
and flags.Input.Format
is Format.BS :
33 if "ConditionsTools" not in kwargs :
36 kwargs.setdefault(
"SCTDetEleCollKey",
"ITkStripDetectorElementCollection")
37 acc.setPrivateTools(CompFactory.SCT_ConditionsSummaryTool(name, **kwargs))
44 from SCT_ConditionsAlgorithms.ITkStripConditionsAlgorithmsConfig
import ITkStripConfigurationCondAlgCfg
56 acc = ITkStripReadoutGeometryCfg(flags)
68 ConfigCondAlg_kwargs = {}
72 acc.merge(ITkStripConfigurationCondAlgCfg(flags, name=
"ITkStripConfigurationCondAlg", **ConfigCondAlg_kwargs))
74 acc.setPrivateTools(CompFactory.SCT_ConfigurationConditionsTool(name, **kwargs))
79 """Return a ComponentAccumulator configured for ITk Strip DCS Conditions"""
80 from SCT_ConditionsTools.SCT_ConditionsToolsConfig
import SCT_DCSConditionsCfg
81 return SCT_DCSConditionsCfg(flags, name, ReturnHVTemp=
False,
87 acc = ITkStripReadoutGeometryCfg(flags)
88 acc.setPrivateTools(CompFactory.SCT_FlaggedConditionTool(name, **kwargs))
93 """Return a ComponentAccumulator configured for ITkStripModuleVetoTool
96 acc = GeoModelCfg(flags)
99 kwargs.setdefault(
"useDB",
False)
100 kwargs.setdefault(
"BadModuleIdentifiers", [])
103 kwargs.setdefault(
"BadModuleIdentifiers", [
"database"])
105 acc.merge(addFolders(flags,
106 folderStrings=
"/ITk/Manual/BadModules",
108 className=
"AthenaAttributeList",
109 tag=kwargs[
"folderTag"]))
111 acc.addCondAlgo(CompFactory.SCT_ModuleVetoCondAlg())
115 toolArgs[
"JsonPath"] = flags.ITk.JsonPathStripModuleVeto
116 toolArgs[
"BadModuleIdentifiers"] = kwargs[
"BadModuleIdentifiers"]
117 acc.setPrivateTools(CompFactory.SCT_ModuleVetoTool(name=f
"{name}Tool", **toolArgs))
123 cond_kwargs.setdefault(
"Folder",
"/ITkStrip/Derived/Monitoring")
124 cond_kwargs.setdefault(
"dbInstance",
"ITkStrip_OFL")
125 cond_kwargs.setdefault(
"MonitorCondAlgName",
"ITkStripMonitorCondAlg")
127 kwargs.setdefault(
"CondKey",
"ITkStripMonitorCondData")
129 acc = ITkStripReadoutGeometryCfg(flags)
131 if "FolderDb" not in cond_kwargs:
132 cond_kwargs[
"FolderDb"] = cond_kwargs[
"Folder"]
133 acc.merge(addFolders(flags, cond_kwargs[
"FolderDb"], cond_kwargs[
"dbInstance"], className=
"CondAttrListCollection"))
135 acc.addCondAlgo(CompFactory.SCT_MonitorCondAlg(name=cond_kwargs[
"MonitorCondAlgName"],
136 ReadKey=cond_kwargs[
"Folder"],
137 WriteKey=kwargs[
"CondKey"]))
139 acc.setPrivateTools(CompFactory.SCT_MonitorConditionsTool(name, **kwargs))
144 acc = ITkStripReadoutGeometryCfg(flags)
146 cond_kwargs.setdefault(
"NoiseFolder",
"/ITkStrip/DAQ/Calibration/NoiseOccupancyDefects")
147 cond_kwargs.setdefault(
"GainFolder",
"/ITkStrip/DAQ/Calibration/NPtGainDefects")
148 cond_kwargs.setdefault(
"ReadCalibDataCondAlgName",
"ITkStripReadCalibDataCondAlg")
150 acc.merge(addFoldersSplitOnline(flags,
152 onlineFolders=cond_kwargs[
"NoiseFolder"],
153 offlineFolders=cond_kwargs[
"NoiseFolder"],
154 className=
"CondAttrListCollection",
156 acc.merge(addFoldersSplitOnline(flags,
158 onlineFolders=cond_kwargs[
"GainFolder"],
159 offlineFolders=cond_kwargs[
"GainFolder"],
160 className=
"CondAttrListCollection",
163 acc.addCondAlgo(CompFactory.SCT_ReadCalibDataCondAlg(name=cond_kwargs[
"ReadCalibDataCondAlgName"],
164 ReadKeyGain=cond_kwargs[
"GainFolder"],
165 ReadKeyNoise=cond_kwargs[
"NoiseFolder"]))
167 from ITkStripCabling.ITkStripCablingConfig
import ITkStripCablingToolCfg
168 kwargs.setdefault(
"SCT_CablingTool", acc.popToolsAndMerge(ITkStripCablingToolCfg(flags)))
170 acc.setPrivateTools(CompFactory.SCT_ReadCalibDataTool(name, **kwargs))
175 from ITkStripCabling.ITkStripCablingConfig
import ITkStripCablingToolCfg
176 acc = ITkStripCablingToolCfg(flags)
177 kwargs.setdefault(
"SCT_CablingTool", acc.popPrivateTools())
178 acc.setPrivateTools(CompFactory.SCT_ReadoutTool(name, **kwargs))
183 """Return a ComponentAccumulator configured for ITk Strip SiliconConditions"""
184 acc = ComponentAccumulator()
188 from SCT_ConditionsTools.SCT_ConditionsToolsConfig
import SCT_SiliconConditionsCfg
189 acc.setPrivateTools(acc.popToolsAndMerge(SCT_SiliconConditionsCfg(flags, name, useDCS =
False, **kwargs)))
195 acc = GeoModelCfg(flags)
199 folder =
"/TDAQ/Resources/ATLAS/ITkStrip/Robins" if flags.IOVDb.DatabaseInstance ==
"CONDBR2" else "/TDAQ/EnabledResources/ATLAS/ITkStrip/Robins"
200 acc.merge(addFolders(flags, [folder], detDb=
"TDAQ", className=
"CondAttrListCollection"))
203 from ITkStripCabling.ITkStripCablingConfig
import ITkStripCablingToolCfg
204 kwargs.setdefault(
"SCT_CablingTool", acc.popToolsAndMerge(ITkStripCablingToolCfg(flags)))
205 acc.addCondAlgo(CompFactory.SCT_TdaqEnabledCondAlg(**kwargs))
208 acc.setPrivateTools(CompFactory.SCT_TdaqEnabledTool(name))