Skip to content
Snippets Groups Projects
Commit d8416eb0 authored by Walter Lampl's avatar Walter Lampl
Browse files

Merge branch 'master-moduleVeto' into 'master'

Add SCT_ModuleVetoConfig.py and SCT_ModuleVetoTestAlgConfig.py (ATLASRECTS-5799)

See merge request atlas/athena!38849
parents a4d6573c 242a59f7
No related branches found
No related tags found
No related merge requests found
......@@ -96,6 +96,9 @@ atlas_add_test( TestLinkMaskingNewConf
atlas_add_test( TestMajorityNewConf
SCRIPT python -m SCT_ConditionsAlgorithms.SCT_MajorityConditionsTestAlgConfig
PROPERTIES TIMEOUT 600 )
atlas_add_test( TestModuleVetoNewConf
SCRIPT python -m SCT_ConditionsAlgorithms.SCT_ModuleVetoTestAlgConfig
PROPERTIES TIMEOUT 600 )
atlas_add_test( TestMonReadNewConf
SCRIPT python -m SCT_ConditionsAlgorithms.SCT_MonitorConditionsTestAlgConfig
PROPERTIES TIMEOUT 600 )
......
"""Define method to configure and test SCT_ModuleVetoTestAlg
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
"""
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
from AthenaConfiguration.ComponentFactory import CompFactory
def SCT_StripVetoTestAlgCfg(flags, name="SCT_ModuleVetoTestAlg", **kwargs):
"""Return a configured SCT_ModuleVetoTestAlg"""
acc = ComponentAccumulator()
from SCT_ConditionsTools.SCT_ModuleVetoConfig import SCT_ModuleVetoCfg
acc.addEventAlgo(CompFactory.SCT_ModuleVetoTestAlg(name=name,
ModuleVetoTool=acc.popToolsAndMerge(SCT_ModuleVetoCfg(flags, **kwargs))))
return acc
if __name__=="__main__":
from AthenaCommon.Logging import log
from AthenaCommon.Constants import INFO
log.setLevel(INFO)
from AthenaCommon.Configurable import Configurable
Configurable.configurableRun3Behavior=1
from AthenaConfiguration.AllConfigFlags import ConfigFlags
ConfigFlags.Input.isMC = True
ConfigFlags.Input.ProjectName = "mc16_13TeV"
ConfigFlags.Input.RunNumber = 300000 # MC16c 2017 run number
ConfigFlags.addFlag("Input.InitialTimeStamp", 1500000000) # MC16c 2017 time stamp
ConfigFlags.IOVDb.GlobalTag = "OFLCOND-MC16-SDR-18"
ConfigFlags.GeoModel.AtlasVersion = "ATLAS-R2-2015-03-01-00"
ConfigFlags.Detector.GeometrySCT = True
ConfigFlags.lock()
from AthenaConfiguration.MainServicesConfig import MainServicesCfg
cfg = MainServicesCfg(ConfigFlags)
from McEventSelector.McEventSelectorConfig import McEventSelectorCfg
cfg.merge(McEventSelectorCfg(ConfigFlags))
kwargs = {}
### Use COOL database for SCT_ModuleVetoTool
kwargs["useDB"] = True # False
if kwargs["useDB"]:
kwargs["folderTag"] = "SCTManualBadModules-000-00"
kwargs["BadModuleIdentifiers"] = ["database"]
else:
kwargs["BadModuleIdentifiers"] = ["1", "2"]
cfg.merge(SCT_StripVetoTestAlgCfg(ConfigFlags, **kwargs))
cfg.run(maxEvents=20)
......@@ -76,7 +76,7 @@ IOVDbSvc = Service("IOVDbSvc")
from IOVDbSvc.CondDB import conddb
IOVDbSvc.GlobalTag="OFLCOND-MC16-SDR-18"
### Use COOL database for SCT_ModuleVetoSvc
### Use COOL database for SCT_ModuleVetoTool
useDB = True # False
from SCT_ConditionsTools.SCT_ModuleVetoToolSetup import SCT_ModuleVetoToolSetup
......
"""Define methods to configure SCT_ModuleVetoTool
Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
"""
from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
from AthenaConfiguration.ComponentFactory import CompFactory
from AtlasGeoModel.GeoModelConfig import GeoModelCfg
from IOVDbSvc.IOVDbSvcConfig import addFolders
def SCT_ModuleVetoCfg(flags, name="InDetSCT_ModuleVeto", **kwargs):
"""Return a ComponentAccumulator configured for SCT_ModuleVetoTool
"""
acc = ComponentAccumulator()
# For SCT_ID used in SCT_ModuleVetoTool
acc.merge(GeoModelCfg(flags))
if kwargs["useDB"]:
# Condition folder
acc.merge(addFolders(configFlags=flags,
folderstrings="/SCT/Manual/BadModules",
detDb="SCT_OFL",
className="AthenaAttributeList",
tag=kwargs["folderTag"]))
# Condition algorithm
acc.addCondAlgo(CompFactory.SCT_ModuleVetoCondAlg())
# Condition tool
toolArgs = {}
toolArgs["BadModuleIdentifiers"] = kwargs["BadModuleIdentifiers"]
acc.setPrivateTools(CompFactory.SCT_ModuleVetoTool(name=name+"Tool", **toolArgs))
return acc
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment