Ejemplo n.º 1
0
        from AthenaCommon import CfgGetter
        GeoModelSvc.DetectorTools += [ CfgGetter.getPrivateTool("PixelDetectorTool", checkType=True) ]

        if (DetFlags.detdescr.BCM_on() ) :
            from AthenaCommon.AppMgr import ToolSvc
            from BCM_GeoModel.BCM_GeoModelConf import InDetDD__BCM_Builder
            bcmTool = InDetDD__BCM_Builder()
            ToolSvc += bcmTool
            GeoModelSvc.DetectorTools['PixelDetectorTool'].BCM_Tool = bcmTool

            from BLM_GeoModel.BLM_GeoModelConf import InDetDD__BLM_Builder
            blmTool = InDetDD__BLM_Builder()
            ToolSvc += blmTool
            GeoModelSvc.DetectorTools['PixelDetectorTool'].BLM_Tool = blmTool

        GeoModelSvc.DetectorTools['PixelDetectorTool'].useDynamicAlignFolders = GeometryFlags.useDynamicAlignFolders()

    if ( DetFlags.detdescr.SCT_on() ):

        if GeometryFlags.isSLHC():
            #SLHC specific code
            if "GMX" == GeometryFlags.StripGeoType():
                from SCT_GeoModelXml.SCT_GeoModelXmlConf import SCT_GMX_DetectorTool
                sctSLHCTool = SCT_GMX_DetectorTool()
            else:
                from SCT_SLHC_GeoModel.SCT_SLHC_GeoModelConf import SCT_SLHC_DetectorTool
                sctSLHCTool = SCT_SLHC_DetectorTool()
                sctSLHCTool.ServiceBuilderTool = InDetServMatBuilderToolSLHC
            GeoModelSvc.DetectorTools += [ sctSLHCTool ]
            if not hasattr(svcMgr,'SCTLorentzAngleSvc'):
                from SiLorentzAngleSvc.SiLorentzAngleSvcConf import SiLorentzAngleSvc
                            "/TRT/Cond/StatusHT")
conddb.addFolderSplitOnline("TRT", "/TRT/Onl/Cond/Status", "/TRT/Cond/Status")
conddb.addFolderSplitOnline("TRT", "/TRT/Onl/Cond/StatusPermanent",
                            "/TRT/Cond/StatusPermanent")
# Pixel module distortions
conddb.addFolderSplitOnline("INDET", "/Indet/Onl/PixelDist",
                            "/Indet/PixelDist")
# IBL stave distortions
conddb.addFolderSplitOnline("INDET", "/Indet/Onl/IBLDist", "/Indet/IBLDist")

# Adding protection against new dynamic folder scheme;
# In future we might want to add also to MC DB
# Solution below is not pretty but in response to JIRA ATLASSIM-2746

from AtlasGeoModel.InDetGMJobProperties import GeometryFlags as geoFlags
if geoFlags.useDynamicAlignFolders():
    conddb.addFolderSplitOnline("INDET", "/Indet/Onl/AlignL1/ID",
                                "/Indet/AlignL1/ID")
    conddb.addFolderSplitOnline("INDET", "/Indet/Onl/AlignL2/PIX",
                                "/Indet/AlignL2/PIX")
    conddb.addFolderSplitOnline("INDET", "/Indet/Onl/AlignL2/SCT",
                                "/Indet/AlignL2/SCT")
    conddb.addFolderSplitOnline("INDET", "/Indet/Onl/AlignL3",
                                "/Indet/AlignL3")
    conddb.addFolderSplitOnline("TRT", "/TRT/Onl/AlignL1/TRT",
                                "/TRT/AlignL1/TRT")
    conddb.addFolderSplitOnline("TRT", "/TRT/Onl/AlignL2", "/TRT/AlignL2")
else:
    conddb.addFolderSplitOnline("INDET", "/Indet/Onl/Align", "/Indet/Align")
    conddb.addFolderSplitOnline("TRT", "/TRT/Onl/Align", "/TRT/Align")