19def SCT_LorentzAngleCondAlgCfg(flags, name="SCTSiLorentzAngleCondAlg", **kwargs):
20
21
22
23 acc = AtlasFieldCacheCondAlgCfg(flags)
24
25
26 acc.merge(SCT_ReadoutGeometryCfg(flags))
27
28 forceUseGeoModel = kwargs.get("forceUseGeoModel",not (flags.InDet.useSctDCS or flags.Common.isOnline))
29 algkwargs = {}
30 algkwargs["UseMagFieldCache"] = kwargs.get("UseMagFieldCache", True)
31 algkwargs["UseMagFieldDcs"] = kwargs.get("UseMagFieldDcs", not flags.Common.isOnline)
32 algkwargs["UseGeoModel"] = forceUseGeoModel
33 algkwargs["useSctDefaults"] = kwargs.get("useSctDefaults", False)
34 if not algkwargs["useSctDefaults"]:
35 if kwargs.get("SiConditionsTool"):
36 algkwargs["SiConditionsTool"] = kwargs.get("SiConditionsTool")
37 else:
38 sikwargs = {}
39 if kwargs.get("DCSConditionsTool"):
40 sikwargs["DCSConditionsTool"] = kwargs.get("DCSConditionsTool")
41 sikwargs["ForceUseGeoModel"] = forceUseGeoModel
42 algkwargs["SiConditionsTool"] = acc.popToolsAndMerge(SCT_SiliconConditionsCfg(flags, **sikwargs))
43 acc.addCondAlgo(CompFactory.SCTSiLorentzAngleCondAlg(name, **algkwargs))
44 return acc