3 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
4 from AthenaConfiguration.ComponentFactory
import CompFactory
6 def CreateITkMisalignAlgCfg(flags, name="CreateITkMisalignAlg",SetITkPixelAlignable=False,SetITkStripAlignable=False,setAlignmentFolderName="/Indet/AlignITk", **kwargs):
10 if flags.Detector.EnableITkPixel:
11 from PixelGeoModelXml.ITkPixelGeoModelConfig
import ITkPixelReadoutGeometryCfg
12 result.merge(
ITkPixelReadoutGeometryCfg(flags,setGeometryAlignable=SetITkPixelAlignable,setAlignmentFolderName=setAlignmentFolderName))
13 kwargs.setdefault(
"PixelDetEleCollKey",
"ITkPixelDetectorElementCollection")
15 kwargs.setdefault(
"PixelDetEleCollKey",
"")
17 if flags.Detector.EnableITkStrip:
18 from StripGeoModelXml.ITkStripGeoModelConfig
import ITkStripReadoutGeometryCfg
19 result.merge(
ITkStripReadoutGeometryCfg(flags,setGeometryAlignable=SetITkStripAlignable,setAlignmentFolderName=setAlignmentFolderName))
20 kwargs.setdefault(
"SCTDetEleCollKey",
"ITkStripDetectorElementCollection")
22 kwargs.setdefault(
"SCTDetEleCollKey",
"")
24 from InDetAlignGenTools.InDetAlignGenToolsConfig
import ITkAlignDBTool
25 dbTool = result.popToolsAndMerge(
ITkAlignDBTool(flags,setAlignmentFolderName=setAlignmentFolderName))
27 kwargs.setdefault(
"IDAlignDBTool",dbTool)
28 kwargs.setdefault(
"TRTDetEleCollKey",
"")
30 histoSvc = CompFactory.THistSvc(Output = [
"IDENTIFIERTREE DATAFILE='ITkIdentifierTree.root' TYPE='ROOT' OPT='RECREATE'"])
31 result.addService( histoSvc )
32 ntupSvc = CompFactory.NTupleSvc(Output = [
"CREATEMISALIGN DATAFILE='CreateMisalignmentITk.root' TYP='ROOT' OPT='NEW'"])
33 result.addService( ntupSvc )
34 result.setAppProperty(
"HistogramPersistency",
"ROOT")
36 result.addEventAlgo(CompFactory.InDetAlignment.CreateMisalignAlg(name,**kwargs))
42 if flags.Detector.EnablePixel:
43 from PixelGeoModel.PixelGeoModelConfig
import PixelReadoutGeometryCfg
46 kwargs.setdefault(
"PixelDetEleCollKey",
"")
48 if flags.Detector.EnableSCT:
49 from SCT_GeoModel.SCT_GeoModelConfig
import SCT_ReadoutGeometryCfg
52 kwargs.setdefault(
"SCTDetEleCollKey",
"")
54 if flags.Detector.EnableTRT:
55 from TRT_GeoModel.TRT_GeoModelConfig
import TRT_ReadoutGeometryCfg
58 kwargs.setdefault(
"TRTDetEleCollKey",
"")
60 from InDetAlignGenTools.InDetAlignGenToolsConfig
import InDetAlignDBTool
61 dbTool = result.popToolsAndMerge(
InDetAlignDBTool(flags,setAlignmentFolderName=setAlignmentFolderName))
63 histoSvc = CompFactory.THistSvc(Output = [
"IDENTIFIERTREE DATAFILE='InDetIdentifierTree.root' TYPE='ROOT' OPT='RECREATE'"])
64 result.addService( histoSvc )
65 ntupSvc = CompFactory.NTupleSvc(Output = [
"CREATEMISALIGN DATAFILE='CreateMisalignmentInDet.root' TYP='ROOT' OPT='NEW'"])
66 result.addService( ntupSvc )
67 result.setAppProperty(
"HistogramPersistency",
"ROOT")
69 kwargs.setdefault(
"IDAlignDBTool",dbTool)
70 result.addEventAlgo(CompFactory.InDetAlignment.CreateMisalignAlg(name,**kwargs))