7 if extensions_list
is None:
10 from OutputStreamAthenaPool.OutputStreamConfig
import addToESD, addToAOD
15 excludedAuxData = (
'-clusterAssociation.-TTVA_AMVFVertices_forReco.-AssoClustersUFO'
16 '.-TTVA_AMVFWeights_forReco')
18 excludedAuxData +=
'.-'.
join([
''] + FTAG_AUXDATA)
21 excludedAuxData +=
'.-TTVA_AMVFVertices.-TTVA_AMVFWeights'
24 from DerivationFrameworkInDet.IDTIDE
import IDTIDE_AOD_EXCLUDED_AUXDATA
25 excludedAuxData +=
'.-'.
join([
''] + IDTIDE_AOD_EXCLUDED_AUXDATA)
26 from DerivationFrameworkInDet.IDTRKVALID
import IDTRKVALID_AOD_EXCLUDED_AUXDATA
27 excludedAuxData +=
'.-'.
join([
''] + IDTRKVALID_AOD_EXCLUDED_AUXDATA)
29 if not flags.Tracking.writeExtendedSi_PRDInfo:
30 excludedAuxData +=
'.-msosLink'
34 "InDet::SCT_ClusterContainer#ITkStripClusters",
35 "InDet::PixelClusterContainer#ITkPixelClusters",
36 "InDet::PixelGangedClusterAmbiguities#ITkPixelClusterAmbiguitiesMap",
38 if flags.Tracking.doPixelClusterSplitting:
40 "InDet::PixelGangedClusterAmbiguities#ITkSplitClusterAmbiguityMap"]
42 from InDetConfig.ITkTrackRecoConfig
import ITkClusterSplitProbabilityContainerName
43 toESD += [
"Trk::ClusterSplitProbabilityContainer#" +
47 if flags.Tracking.doTruth:
49 "TrackTruthCollection#CombinedITkTracksTrackTruthCollection",
50 "DetailedTrackTruthCollection#CombinedITkTracksDetailedTrackTruth"]
52 if flags.Tracking.doStoreTrackSeeds:
53 listOfExtensionsRequesting = [
54 e
for e
in extensions_list
55 if (e ==
'' or flags.Tracking[f
"ITk{e}Pass"].storeTrackSeeds) ]
57 for extension
in listOfExtensionsRequesting:
58 toESD += [
"TrackCollection#SiSPSeedSegments"+extension]
60 toESD += [
"TrackCollection#CombinedITkTracks"]
64 "xAOD::TrackParticleContainer#InDetTrackParticles",
65 f
"xAOD::TrackParticleAuxContainer#InDetTrackParticlesAux.{excludedAuxData}"
70 if flags.Acts.EDM.PersistifyTrackParticles:
72 "xAOD::TrackParticleContainer#ActsInDetTrackParticles",
73 f
"xAOD::TrackParticleAuxContainer#ActsInDetTrackParticlesAux.{excludedAuxData}"]
75 if flags.Tracking.writeExtendedSi_PRDInfo:
77 "xAOD::TrackMeasurementValidationContainer#ITkPixelClusters",
78 "xAOD::TrackMeasurementValidationAuxContainer#ITkPixelClustersAux.",
79 "xAOD::TrackMeasurementValidationContainer#ITkStripClusters",
80 "xAOD::TrackMeasurementValidationAuxContainer#ITkStripClustersAux.",
81 "xAOD::TrackStateValidationContainer#ITkPixelMSOSs",
82 "xAOD::TrackStateValidationAuxContainer#ITkPixelMSOSsAux.",
83 "xAOD::TrackStateValidationContainer#ITkStripMSOSs",
84 "xAOD::TrackStateValidationAuxContainer#ITkStripMSOSsAux."
87 if flags.Tracking.doStoreSiSPSeededTracks:
89 "xAOD::TrackStateValidationContainer#SiSP_ITkPixel_MSOSs",
90 "xAOD::TrackStateValidationAuxContainer#SiSP_ITkPixel_MSOSsAux.",
91 "xAOD::TrackStateValidationContainer#SiSP_ITkStrip_MSOSs",
92 "xAOD::TrackStateValidationAuxContainer#SiSP_ITkStrip_MSOSsAux."
95 if (flags.Tracking.doLargeD0
and
96 flags.Tracking.storeSeparateLargeD0Container):
98 "xAOD::TrackParticleContainer#InDetLargeD0TrackParticles",
99 f
"xAOD::TrackParticleAuxContainer#InDetLargeD0TrackParticlesAux.{excludedAuxData}"
102 if flags.Tracking.doStoreSiSPSeededTracks:
104 listOfExtensionsRequesting = [
105 e
for e
in extensions_list
106 if (e ==
'' or flags.Tracking[f
"ITk{e}Pass"].storeSiSPSeededTracks) ]
108 for extension
in listOfExtensionsRequesting:
110 f
"xAOD::TrackParticleContainer#SiSPSeededTracks{extension}TrackParticles",
111 f
"xAOD::TrackParticleAuxContainer#SiSPSeededTracks{extension}TrackParticlesAux.{excludedAuxData}"]
113 if flags.Tracking.doStoreTrackSeeds:
115 listOfExtensionsRequesting = [
116 e
for e
in extensions_list
117 if (e ==
'' or flags.Tracking[f
"ITk{e}Pass"].storeTrackSeeds) ]
118 for extension
in listOfExtensionsRequesting:
120 f
"xAOD::TrackParticleContainer#SiSPSeedSegments{extension}TrackParticles",
121 f
"xAOD::TrackParticleAuxContainer#SiSPSeedSegments{extension}TrackParticlesAux."
125 result.merge(
addToESD(flags, toAOD+toESD))
126 result.merge(
addToAOD(flags, toAOD))