3 """ Prepare EGamma output list
6 from AthenaConfiguration.ComponentAccumulator
import ComponentAccumulator
12 outFlags = flags.Egamma.Keys.Output
17 if flags.Egamma.doCentral:
19 f
"xAOD::ElectronContainer#{outFlags.Electrons}",
20 f
"xAOD::ElectronAuxContainer#{outFlags.Electrons}"
21 f
"Aux.{outFlags.ElectronsSuppESD}"]
23 f
"xAOD::PhotonContainer#{outFlags.Photons}",
24 f
"xAOD::PhotonAuxContainer#{outFlags.Photons}"
25 f
"Aux.{outFlags.PhotonsSuppESD}"]
27 f
"xAOD::CaloClusterContainer#{outFlags.CaloClusters}",
28 f
"xAOD::CaloClusterAuxContainer#{outFlags.CaloClusters}"
29 f
"Aux.{outFlags.CaloClustersSuppESD}"]
31 f
"xAOD::CaloClusterContainer#{outFlags.EgammaLargeClusters}",
32 f
"xAOD::CaloClusterAuxContainer#{outFlags.EgammaLargeClusters}"
33 f
"Aux.{outFlags.EgammaLargeClustersSuppESD}"]
35 f
"CaloClusterCellLinkContainer#{outFlags.CaloClusters}"
38 f
"CaloClusterCellLinkContainer#{outFlags.EgammaLargeClusters}"
42 f
"xAOD::ElectronContainer#{outFlags.Electrons}",
43 f
"xAOD::ElectronAuxContainer#{outFlags.Electrons}"
44 f
"Aux.{outFlags.ElectronsSuppAOD}"]
46 f
"xAOD::PhotonContainer#{outFlags.Photons}",
47 f
"xAOD::PhotonAuxContainer#{outFlags.Photons}"
48 f
"Aux.{outFlags.PhotonsSuppAOD}"]
50 f
"xAOD::CaloClusterContainer#{outFlags.CaloClusters}",
51 f
"xAOD::CaloClusterAuxContainer#{outFlags.CaloClusters}"
52 f
"Aux.{outFlags.CaloClustersSuppAOD}"]
54 f
"CaloClusterCellLinkContainer#{outFlags.CaloClusters}_links"]
56 if flags.Egamma.doForward:
58 f
"xAOD::ElectronContainer#{outFlags.ForwardElectrons}",
59 f
"xAOD::ElectronAuxContainer#{outFlags.ForwardElectrons}"
60 f
"Aux.{outFlags.ForwardElectronsSuppESD}"]
62 f
"xAOD::CaloClusterContainer#{outFlags.ForwardClusters}",
63 f
"xAOD::CaloClusterAuxContainer#{outFlags.ForwardClusters}"
64 f
"Aux.{outFlags.ForwardClustersSuppESD}"]
66 f
"xAOD::CaloClusterContainer#{outFlags.EgammaLargeFWDClusters}",
67 f
"xAOD::CaloClusterAuxContainer#{outFlags.EgammaLargeFWDClusters}"
68 f
"Aux.{outFlags.EgammaLargeFWDClustersSuppESD}"]
70 f
"CaloClusterCellLinkContainer#{outFlags.ForwardClusters}"
73 f
"CaloClusterCellLinkContainer#{outFlags.EgammaLargeFWDClusters}"
77 f
"xAOD::ElectronContainer#{outFlags.ForwardElectrons}",
78 f
"xAOD::ElectronAuxContainer#{outFlags.ForwardElectrons}"
79 f
"Aux.{outFlags.ForwardElectronsSuppAOD}"]
81 f
"xAOD::CaloClusterContainer#{outFlags.ForwardClusters}",
82 f
"xAOD::CaloClusterAuxContainer#{outFlags.ForwardClusters}"
83 f
"Aux.{outFlags.ForwardClustersSuppAOD}"]
85 f
"CaloClusterCellLinkContainer#{outFlags.ForwardClusters}"
88 if flags.Egamma.doTracking:
90 f
"xAOD::TrackParticleContainer#{outFlags.GSFTrackParticles}",
91 f
"xAOD::TrackParticleAuxContainer#{outFlags.GSFTrackParticles}"
92 f
"Aux.{outFlags.GSFTrackParticlesSuppESD}"]
94 f
"TrackCollection#{outFlags.GSFTracks}"]
97 f
"xAOD::TrackParticleContainer#{outFlags.GSFTrackParticles}",
98 f
"xAOD::TrackParticleAuxContainer#{outFlags.GSFTrackParticles}"
99 f
"Aux.{outFlags.GSFTrackParticlesSuppAOD}"]
101 if (flags.Tracking.writeExtendedSi_PRDInfo
or
102 flags.Tracking.writeExtendedTRT_PRDInfo):
104 if flags.Detector.GeometryITk:
106 f
"xAOD::TrackStateValidationContainer#{extension}ITkPixel_MSOSs",
107 f
"xAOD::TrackStateValidationAuxContainer#{extension}ITkPixel_MSOSsAux.",
108 f
"xAOD::TrackStateValidationContainer#{extension}ITkStrip_MSOSs",
109 f
"xAOD::TrackStateValidationAuxContainer#{extension}ITkStrip_MSOSsAux."
113 f
"xAOD::TrackStateValidationContainer#{extension}Pixel_MSOSs",
114 f
"xAOD::TrackStateValidationAuxContainer#{extension}Pixel_MSOSsAux.",
115 f
"xAOD::TrackStateValidationContainer#{extension}SCT_MSOSs",
116 f
"xAOD::TrackStateValidationAuxContainer#{extension}SCT_MSOSsAux.",
117 f
"xAOD::TrackStateValidationContainer#{extension}TRT_MSOSs",
118 f
"xAOD::TrackStateValidationAuxContainer#{extension}TRT_MSOSsAux."
121 if flags.Egamma.doConversionBuilding:
123 f
"xAOD::VertexContainer#{outFlags.ConversionVertices}",
124 f
"xAOD::VertexAuxContainer#{outFlags.ConversionVertices}"
125 f
"Aux.{outFlags.ConversionVerticesSuppESD}"]
128 f
"xAOD::VertexContainer#{outFlags.ConversionVertices}",
129 f
"xAOD::VertexAuxContainer#{outFlags.ConversionVertices}"
130 f
"Aux.{outFlags.ConversionVerticesSuppAOD}"]
132 if flags.Egamma.doTruthAssociation:
134 f
"xAOD::TruthParticleContainer#{outFlags.TruthParticles}",
135 f
"xAOD::TruthParticleAuxContainer#{outFlags.TruthParticles}"
136 f
"Aux.{outFlags.TruthParticlesSuppESD}"]
138 toAOD += [f
"xAOD::TruthParticleContainer#{outFlags.TruthParticles}",
139 f
"xAOD::TruthParticleAuxContainer#{outFlags.TruthParticles}"
140 f
"Aux.{outFlags.TruthParticlesSuppAOD}"]
142 if flags.Output.doWriteESD:
143 from OutputStreamAthenaPool.OutputStreamConfig
import addToESD
146 if flags.Output.doWriteAOD:
147 from OutputStreamAthenaPool.OutputStreamConfig
import addToAOD