ATLAS Offline Software
MuonPrepDataCnvCfg.py
Go to the documentation of this file.
1 
2 #Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 
4 from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
5 from AthenaConfiguration.ComponentFactory import CompFactory
6 
7 def xRpcToRpcPrepDataCnvAlgCfg(flags,name = "xAODRpcToPrepDataCnvAlg", **kwargs):
8  result = ComponentAccumulator()
9  the_alg = CompFactory.MuonR4.xRpcMeasToRpcTrkPrdCnvAlg(name, **kwargs)
10  result.addEventAlgo(the_alg, primary = True)
11  return result
12 
13 def MuonPrepDataToxAODCnvAlg(flags,name="MuonPrepDataToxAODCnvAlg", **kwargs):
14  result = ComponentAccumulator()
15  the_alg = CompFactory.Muon.PRDxAODConvertorAlg(name=name, **kwargs)
16  result.addEventAlgo(the_alg, primary = True)
17  return result
18 
20  from argparse import ArgumentParser
21  from AthenaCommon.TestDefaults import defaultTestFiles
22 
23  parser = ArgumentParser()
24  parser.add_argument("-t", "--threads", dest="threads", type=int, help="number of threads", default=1)
25  parser.add_argument("-o", "--output", dest="output", default='PrepDataTest.pool.root', help="Text file containing each cabling channel", metavar="FILE")
26  parser.add_argument("--inputFile", "-i", default=defaultTestFiles.ESD_RUN3_MC,
27  help="Input file to run on ", nargs="+")
28  return parser
29 
30 def setupTestOutputCfg(flags,**kwargs):
31 
32  kwargs.setdefault("streamName","MPRDTestStream")
33  kwargs.setdefault("AcceptAlgs",[])
34 
35  result = ComponentAccumulator()
36 
40  container_items = ["xAOD::MdtDriftCircleContainer#", "xAOD::MdtDriftCircleAuxContainer#",
41  "xAOD::RpcStripContainer#", "xAOD::RpcStripAuxContainer#",
42  "xAOD::TgcStripContainer#", "xAOD::TgcStripAuxContainer#",
43  "xAOD::MMClusterContainer#", "xAOD::MMClusterAuxContainer#",
44  "xAOD::sTgcStripContainer#", "xAOD::sTgcStripAuxContaine#",
45  "xAOD::sTgcWireContainer#", "xAOD::sTgcWireAuxContainer#",
46  "xAOD::sTgcPadContainer#", "xAOD::sTgcPadAuxContainer#",
47  ]
48  from OutputStreamAthenaPool.OutputStreamConfig import OutputStreamCfg
49  kwargs.setdefault("ItemList", container_items)
50  result.merge(OutputStreamCfg(flags, **kwargs))
51  return result
52 
53 
54 if __name__ == "__main__":
55  from MuonCondTest.MdtCablingTester import setupServicesCfg
56  from AthenaConfiguration.AllConfigFlags import initConfigFlags
58 
59  flags = initConfigFlags()
60  flags.Concurrency.NumThreads = args.threads
61  flags.Concurrency.NumConcurrentEvents = args.threads # Might change this later, but good enough for the moment.
62  flags.Output.doWriteDAOD = True
63  flags.Input.Files = args.inputFile
64  flags.addFlag("Output.MPRDTestStreamFileName", args.output)
65  flags.addFlag("Output.doWriteMPRDTestStream", True)
66  flags.lock()
67 
68  cfg = setupServicesCfg(flags)
69  from MuonConfig.MuonDataPrepConfig import xAODUncalibMeasPrepCfg
70  cfg.merge(xAODUncalibMeasPrepCfg(flags))
71  cfg.merge(MuonPrepDataToxAODCnvAlg(flags))
72  cfg.merge(setupTestOutputCfg(flags))
73 
74  cfg.printConfig(withDetails=True, summariseProps=True)
75  flags.dump()
76 
77  sc = cfg.run(-1)
78  if not sc.isSuccess():
79  import sys
80  sys.exit("Execution failed")
81 
testGeoModel.setupServicesCfg
def setupServicesCfg(flags)
Definition: MuonPhaseII/MuonDetDescr/MuonGeoModelTestR4/python/testGeoModel.py:61
python.OutputStreamConfig.OutputStreamCfg
def OutputStreamCfg(flags, streamName, ItemList=None, MetadataItemList=None, disableEventTag=False, trigNavThinningSvc=None, takeItemsFromInput=False, extendProvenanceRecord=True, keepProvenanceTagsRegEx=None, AcceptAlgs=None, HelperTools=None)
Definition: OutputStreamConfig.py:13
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
MuonPrepDataCnvCfg.xRpcToRpcPrepDataCnvAlgCfg
def xRpcToRpcPrepDataCnvAlgCfg(flags, name="xAODRpcToPrepDataCnvAlg", **kwargs)
Definition: MuonPrepDataCnvCfg.py:7
MuonPrepDataCnvCfg.MuonPrepDataToxAODCnvAlg
def MuonPrepDataToxAODCnvAlg(flags, name="MuonPrepDataToxAODCnvAlg", **kwargs)
Definition: MuonPrepDataCnvCfg.py:13
MuonPrepDataCnvCfg.SetupArgParser
def SetupArgParser()
Definition: MuonPrepDataCnvCfg.py:19
MuonDataPrepConfig.xAODUncalibMeasPrepCfg
def xAODUncalibMeasPrepCfg(flags)
Configuriation snippet to schedule all algorithms providing the Uncalibrated measurements.
Definition: MuonDataPrepConfig.py:29
python.AllConfigFlags.initConfigFlags
def initConfigFlags()
Definition: AllConfigFlags.py:19
confTool.parse_args
def parse_args()
Definition: confTool.py:36
MuonPrepDataCnvCfg.setupTestOutputCfg
def setupTestOutputCfg(flags, **kwargs)
Definition: MuonPrepDataCnvCfg.py:30