From 504c6b99cc218007e2cccfd4f5694f7b75bf0662 Mon Sep 17 00:00:00 2001
From: Maarten Van Veghel <maarten.vanveghel@cern.ch>
Date: Thu, 20 Jul 2023 15:54:03 +0200
Subject: [PATCH] adapt to new RecSummaryMaker

---
 .../python/RecoConf/hlt2_global_reco.py       | 41 ++++++++++++++-----
 1 file changed, 31 insertions(+), 10 deletions(-)

diff --git a/Hlt/RecoConf/python/RecoConf/hlt2_global_reco.py b/Hlt/RecoConf/python/RecoConf/hlt2_global_reco.py
index f6711315b31..8d0db17a825 100644
--- a/Hlt/RecoConf/python/RecoConf/hlt2_global_reco.py
+++ b/Hlt/RecoConf/python/RecoConf/hlt2_global_reco.py
@@ -13,9 +13,9 @@
 The 'global' reconstruction is that which produces the final output of the
 'full' HLT2 reconstruction: charged and neutral ProtoParticle containers.
 """
-from .hlt1_tracking import make_reco_pvs, make_FTRawBankDecoder_clusters
+from .hlt1_tracking import make_reco_pvs, make_FTRawBankDecoder_clusters, make_VeloClusterTrackingSIMD_hits
 from .hlt2_tracking import make_hlt2_tracks, make_hlt2_tracks_without_UT, convert_tracks_to_v3_from_v1, get_persisted_tracks_per_type
-from .rich_reconstruction import make_rich_pids, default_rich_reco_options
+from .rich_reconstruction import make_rich_pids, default_rich_reco_options, make_rich_pixels
 from .calorimeter_reconstruction import make_calo
 from .muon_reconstruction import make_all_muon_pids, make_conv_muon_pids
 
@@ -128,6 +128,7 @@ def make_reconstruction(light_reco=True,
 
     if not skipCalo:
         output.update({
+            "AllCaloHandles": calo_pids,
             "CaloElectrons": calo_pids["v1_electrons"],
             "CaloPhotons": calo_pids["v1_photons"],
             "CaloMergedPi0s": calo_pids["v1_mergedPi0s"],
@@ -242,15 +243,35 @@ def make_fastest_reconstruction(skipUT=False):
     return make_light_reconstruction(skipUT=skipUT, fastReco=True)
 
 
-@configurable
-def make_rec_summary(reco_output):
-    summary = RecSummaryMaker(
-        # TODO temporarily set to just Long, new MR adapting RecSummary needed to fix this
-        Tracks=reco_output["LongTracks"],
-        PVs=reco_output["PVs_v1"],
+def make_rec_summary(reco):
+    calo = reco['AllCaloHandles']
+
+    # FIXME for now quick fix to not handle up-/down-stream tracks as not to trigger them in the scheduler
+    # needs proper handling with optional existance
+    tracks_up = TracksEmptyProducer(
+        name="TracksEmptyProducer_Upstream_ForRecSummary_{hash}",
+        allow_duplicate_instances_with_distinct_names=True).Output
+    tracks_down = TracksEmptyProducer(
+        name="TracksEmptyProducer_Downstream_ForRecSummary_{hash}",
+        allow_duplicate_instances_with_distinct_names=True).Output
+
+    return RecSummaryMaker(
+        LongTracks=reco["LongTracks"],
+        UpstreamTracks=tracks_up,
+        DownstreamTracks=tracks_down,
+        VeloTracks=reco["VeloTracks"],
+        Ttracks=reco["Ttracks"],
+        PVs=reco["PVs_v1"],
         SciFiClusters=make_FTRawBankDecoder_clusters(),
-        outputs={"Output": persistable_location('RecSummary')})
-    return summary.Output
+        VeloClusters=make_VeloClusterTrackingSIMD_hits(),
+        eCalClusters=calo['ecalClusters'],
+        EDigits=calo['digitsEcal'],
+        HDigits=calo['digitsHcal'],
+        RichPixels=make_rich_pixels(
+            default_rich_reco_options())['RichSIMDPixels'],
+        outputs={
+            "Output": persistable_location('RecSummary')
+        }).Output
 
 
 @configurable
-- 
GitLab