9 cfg = ComponentAccumulator()
11 if "GeometryManagerTool" not in kwargs:
12 from InDetAlignConfig.ITkAlignToolsConfig
import ITkGeometryManagerToolCfg
13 kwargs.setdefault(
"GeometryManagerTool", cfg.addPublicTool(cfg.popToolsAndMerge(
14 ITkGeometryManagerToolCfg(flags))))
16 if "AlignTool" not in kwargs:
17 from InDetAlignConfig.ITkAlignToolsConfig
import ITkGlobalChi2AlignToolCfg
18 kwargs.setdefault(
"AlignTool", cfg.popToolsAndMerge(ITkGlobalChi2AlignToolCfg(flags)))
20 if "AlignDBTool" not in kwargs:
21 from InDetAlignConfig.ITkAlignToolsConfig
import ITkTrkAlignDBToolCfg
22 kwargs.setdefault(
"AlignDBTool", cfg.popToolsAndMerge(ITkTrkAlignDBToolCfg(flags)))
24 if "AlignTrackCreator" not in kwargs:
25 from InDetAlignConfig.ITkAlignToolsConfig
import ITkAlignTrackCreatorCfg
26 kwargs.setdefault(
"AlignTrackCreator", cfg.popToolsAndMerge(
27 ITkAlignTrackCreatorCfg(flags)))
29 kwargs.setdefault(
"AlignTrackPreProcessor",
None)
30 kwargs.setdefault(
"WriteNtuple",
False)
31 kwargs.setdefault(
"SolveOnly",
True)
33 cfg.addEventAlgo(CompFactory.Trk.AlignAlg(name, **kwargs))
43 if flags.ITk.Align.writeConstantsToPool:
47 if flags.ITk.Align.writeSilicon:
48 if flags.ITk.Align.writeDynamicDB:
49 objectList.extend([
"CondAttrListCollection#/Indet/AlignL1/ID",
50 "CondAttrListCollection#/Indet/AlignL2/PIX",
51 "CondAttrListCollection#/Indet/AlignL2/SCT",
52 "AlignableTransformContainer#/Indet/AlignL3"])
53 tagList.extend([
"IndetL1Test",
"IndetL2PIXTest",
"IndetL2SCTTest",
54 flags.ITk.Align.tagSi])
56 objectList.extend([
"AlignableTransformContainer#/Indet/Align"])
57 tagList.extend([flags.ITk.Align.tagSi])
60 from RegistrationServices.OutputConditionsAlgConfig
import OutputConditionsAlgCfg
61 cfg.merge(OutputConditionsAlgCfg(
63 outputFile = f
"{flags.ITk.Align.baseDir}/Solve/{flags.ITk.Align.outputConditionFile}",
64 ObjectList = objectList, IOVTagList = tagList, WriteIOV =
False))
66 cfg.addEventAlgo(CompFactory.Trk.AlignTrackCollSplitter())