ATLAS Offline Software
StandAloneDiTauBuilder.py
Go to the documentation of this file.
1 # Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 
3 import sys
4 
5 def DiTauOutputCfg(flags):
6 
7  from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
8  from OutputStreamAthenaPool.OutputStreamConfig import addToESD,addToAOD
9  result=ComponentAccumulator()
10 
11  DiTauOutputList = [ "xAOD::DiTauJetContainer#DiTauJets" ]
12  DiTauOutputList += [ "xAOD::DiTauJetAuxContainer#DiTauJetsAux." ]
13 
14  result.merge(addToESD(flags,DiTauOutputList))
15  result.merge(addToAOD(flags,DiTauOutputList))
16  return result
17 
19 
20  from AthenaConfiguration.ComponentAccumulator import ComponentAccumulator
21  result = ComponentAccumulator()
22 
23  from DiTauRec.DiTauBuilderConfig import DiTauBuilderCfg
24  result.merge(DiTauBuilderCfg(flags))
25 
26  if (flags.Output.doWriteESD or flags.Output.doWriteAOD):
27  result.merge(DiTauOutputCfg(flags))
28 
29  return result
30 
31 
32 if __name__=="__main__":
33 
34  from AthenaConfiguration.AllConfigFlags import initConfigFlags
35  flags = initConfigFlags()
36 
37  flags.Input.Files = ["/cvmfs/atlas-nightlies.cern.ch/repo/data/data-art/RecExRecoTest/mc21_13p6TeV/ESDFiles/mc21_13p6TeV.421450.PhPy8EG_A14_ttbar_hdamp258p75_SingleLep_fct.recon.ESD.e8445_e8447_s3822_r13565/ESD.28877240._000046.pool.root.1"]
38 
39  # Use latest MC21 tag to pick up latest muon folders apparently needed
40  flags.IOVDb.GlobalTag = "OFLCOND-MC21-SDR-RUN3-10"
41  flags.Output.ESDFileName = "ESD.pool.root"
42  flags.Output.AODFileName = "AOD.pool.root"
43 
44  nThreads=1
45  flags.Concurrency.NumThreads = nThreads
46  if nThreads>0:
47  flags.Scheduler.ShowDataDeps = True
48  flags.Scheduler.ShowDataFlow = True
49  flags.Scheduler.ShowControlFlow = True
50  flags.Concurrency.NumConcurrentEvents = nThreads
51 
52  flags.lock()
53 
54  from AthenaConfiguration.MainServicesConfig import MainServicesCfg
55  from AthenaPoolCnvSvc.PoolReadConfig import PoolReadCfg
56 
57  cfg=MainServicesCfg(flags)
58  cfg.merge(PoolReadCfg(flags))
59 
60  cfg.merge(DiTauReconstructionCfg(flags))
61 
62  statusCode = None
63  statusCode = cfg.run(1000)
64  assert statusCode is not None, "Issue while running"
65  sys.exit(not statusCode.isSuccess())
66 
67 
StandAloneDiTauBuilder.DiTauReconstructionCfg
def DiTauReconstructionCfg(flags)
Definition: StandAloneDiTauBuilder.py:18
python.JetAnalysisCommon.ComponentAccumulator
ComponentAccumulator
Definition: JetAnalysisCommon.py:302
StandAloneDiTauBuilder.DiTauOutputCfg
def DiTauOutputCfg(flags)
Definition: StandAloneDiTauBuilder.py:5
python.MainServicesConfig.MainServicesCfg
def MainServicesCfg(flags, LoopMgr='AthenaEventLoopMgr')
Definition: MainServicesConfig.py:312
python.OutputStreamConfig.addToESD
def addToESD(flags, itemOrList, **kwargs)
Definition: OutputStreamConfig.py:135
DiTauBuilderConfig.DiTauBuilderCfg
def DiTauBuilderCfg(flags, name="DiTauBuilder", doLowPt=False)
Definition: DiTauBuilderConfig.py:16
python.AllConfigFlags.initConfigFlags
def initConfigFlags()
Definition: AllConfigFlags.py:19
python.OutputStreamConfig.addToAOD
def addToAOD(flags, itemOrList, **kwargs)
Definition: OutputStreamConfig.py:150
python.PoolReadConfig.PoolReadCfg
def PoolReadCfg(flags)
Definition: PoolReadConfig.py:71