41def ITkStripConfigurationConditionsToolCfg(flags, name="ITkStripConfigurationConditionsTool", **kwargs):
42
43
44 from SCT_ConditionsAlgorithms.ITkStripConditionsAlgorithmsConfig import getITkStripDAQConfigFolder, ITkStripConfigurationCondAlgCfg
45 folder_path = getITkStripDAQConfigFolder(flags)
46
47 cond_kwargs = {}
48 cond_kwargs["ChannelFolder"] = folder_path + ("Chip" if flags.IOVDb.DatabaseInstance == "COMP200" else "ChipSlim")
49 cond_kwargs["ModuleFolder"] = f"{folder_path}Module"
50 cond_kwargs["MurFolder"] = f"{folder_path}MUR"
51 cond_kwargs["dbInstance"] = "ITkStrip"
52 cond_kwargs["SCT_ConfigurationCondAlgName"] = "ITkStripConfigurationCondAlg"
53
54 acc = ITkStripReadoutGeometryCfg(flags)
55
56 if "ChannelFolderDB" not in cond_kwargs:
57 acc.merge(addFoldersSplitOnline(flags,
58 detDb=cond_kwargs["dbInstance"],
59 onlineFolders=cond_kwargs["ChannelFolder"],
60 offlineFolders=cond_kwargs["ChannelFolder"],
61 className="CondAttrListVec",
62 splitMC=True))
63 else:
64 acc.merge(addFolders(flags, [cond_kwargs["ChannelFolderDB"]], detDb=cond_kwargs["dbInstance"], className="CondAttrListVec"))
65 if "ModuleFolderDB" not in cond_kwargs:
66 acc.merge(addFoldersSplitOnline(flags,
67 detDb=cond_kwargs["dbInstance"],
68 onlineFolders=cond_kwargs["ModuleFolder"],
69 offlineFolders=cond_kwargs["ModuleFolder"],
70 className="CondAttrListVec",
71 splitMC=True))
72 else:
73 acc.merge(addFolders(flags, [cond_kwargs["ModuleFolderDB"]], detDb=cond_kwargs["dbInstance"], className="CondAttrListVec"))
74 if "MurFolderDB" not in cond_kwargs:
75 acc.merge(addFoldersSplitOnline(flags,
76 detDb=cond_kwargs["dbInstance"],
77 onlineFolders=cond_kwargs["MurFolder"],
78 offlineFolders=cond_kwargs["MurFolder"],
79 className="CondAttrListVec",
80 splitMC=True))
81 else:
82 acc.merge(addFolders(flags, [cond_kwargs["MurFolderDB"]], detDb=cond_kwargs["dbInstance"], className="CondAttrListVec"))
83
84 ConfigCondAlg_kwargs = {}
85 ConfigCondAlg_kwargs["ReadKeyChannel"] = cond_kwargs["ChannelFolder"]
86 ConfigCondAlg_kwargs["ReadKeyModule"] = cond_kwargs["ModuleFolder"]
87 ConfigCondAlg_kwargs["ReadKeyMur"] = cond_kwargs["MurFolder"]
88 acc.merge(ITkStripConfigurationCondAlgCfg(flags, name="ITkStripConfigurationCondAlg", **ConfigCondAlg_kwargs))
89
90 acc.setPrivateTools(CompFactory.SCT_ConfigurationConditionsTool(name, **kwargs))
91 return acc
92
93