19 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
20 from AthenaConfiguration.Enums
import Format
23 """defines outputs for ESD and AOD; provides the same information as in ForwardRec/AFP_Rec_OutputItemList_jobOptions.py"""
24 from OutputStreamAthenaPool.OutputStreamConfig
import OutputStreamCfg
29 if flags.Input.Format
is Format.BS:
31 AFP_ItemList.append(
"xAOD::AFPSiHitContainer#AFPSiHitContainer")
32 AFP_ItemList.append(
"xAOD::AFPSiHitAuxContainer#AFPSiHitContainerAux.")
33 AFP_ItemList.append(
"xAOD::AFPSiHitsClusterContainer#AFPSiHitsClusterContainer")
34 AFP_ItemList.append(
"xAOD::AFPSiHitsClusterAuxContainer#AFPSiHitsClusterContainerAux.")
37 for bcIDshift
in range (1, 6):
38 name =
"AFPSiHitContainerBcIDplus" +
str(bcIDshift)
39 AFP_ItemList.append(
"xAOD::AFPSiHitContainer#" + name)
40 AFP_ItemList.append(
"xAOD::AFPSiHitAuxContainer#" + name +
"Aux.")
42 AFP_ItemList.append(
"xAOD::AFPTrackContainer#AFPTrackContainer")
43 AFP_ItemList.append(
"xAOD::AFPTrackAuxContainer#AFPTrackContainerAux.")
44 AFP_ItemList.append(
"xAOD::AFPToFHitContainer#AFPToFHitContainer")
45 AFP_ItemList.append(
"xAOD::AFPToFHitAuxContainer#AFPToFHitContainerAux.")
46 AFP_ItemList.append(
"xAOD::AFPProtonContainer#AFPProtonContainer")
47 AFP_ItemList.append(
"xAOD::AFPProtonAuxContainer#AFPProtonContainerAux.")
48 AFP_ItemList.append(
"xAOD::AFPToFTrackContainer#AFPToFTrackContainer")
49 AFP_ItemList.append(
"xAOD::AFPToFTrackAuxContainer#AFPToFTrackContainerAux.")
50 AFP_ItemList.append(
"xAOD::AFPVertexContainer#AFPVertexContainer")
51 AFP_ItemList.append(
"xAOD::AFPVertexAuxContainer#AFPVertexContainerAux.")
54 if flags.Output.doWriteESD:
56 if flags.Output.doWriteAOD:
62 """defines AFP reconstruction; provides the same setup as used to be in ForwardRec/ForwardRec_jobOptions.py"""
65 if flags.Input.Format
is Format.BS:
66 from AthenaConfiguration.ComponentFactory
import CompFactory
68 acc.addEventAlgo(CompFactory.AFP_RawDataProvider(
"AFP_RawDataProvider"))
69 acc.addEventAlgo(CompFactory.AFP_Raw2Digi(
"AFP_Raw2Digi"))
72 from AFP_SiClusterTools.AFP_SiClusterTools
import AFP_SiClusterTools_Cfg
76 from AFP_LocReco.AFP_LocReco
import AFP_LocReco_SiD_Cfg, AFP_LocReco_TD_Cfg
81 from AFP_GlobReco.AFP_GlobReco
import AFP_GlobReco_Cfg
85 from AFP_VertexReco.AFP_VertexReco
import AFP_VertexReco_Cfg
89 if flags.Output.doWriteESD
or flags.Output.doWriteAOD:
95 if __name__ ==
"__main__":
97 from AthenaConfiguration.AllConfigFlags
import initConfigFlags
99 flags.Scheduler.CheckDependencies =
True
100 flags.Scheduler.ShowDataDeps =
True
101 flags.Scheduler.ShowDataFlow =
True
102 flags.Scheduler.ShowControlFlow =
True
103 flags.Scheduler.EnableVerboseViews =
True
105 flags.Input.Files = [
"/afs/cern.ch/work/p/pbalek/public/data17_13TeV.00338480.physics_Main.daq.RAW/data17_13TeV.00338480.physics_Main.daq.RAW._lb0275._SFO-7._0007.data"]
107 flags.Output.doWriteAOD =
True
108 flags.Output.AODFileName =
"AOD.pool.root"
109 flags.Exec.MaxEvents = 500
110 flags.Concurrency.NumThreads = 4
116 from AthenaConfiguration.MainServicesConfig
import MainServicesCfg
119 from ByteStreamCnvSvc.ByteStreamConfig
import ByteStreamReadCfg
125 acc.foreach_component(
"*AFP*").OutputLevel=DEBUG
127 acc.printConfig(withDetails=
True, summariseProps=
True)
130 if status.isFailure():