From 8d93328f18c82d4fe5f63077c26631e8b7feadc2 Mon Sep 17 00:00:00 2001
From: Rizwaan Mohammed <Rizwaan Mohammed rizwaan.adeeb.mohammed@cern.ch>
Date: Fri, 24 Jun 2022 16:30:00 +0200
Subject: [PATCH 1/3] Adding vertex monitoring to exisitng velo mon task

---
 MooreOnlineConf/options/velo.py | 36 ++++++++++++++++++++++++++++++---
 1 file changed, 33 insertions(+), 3 deletions(-)

diff --git a/MooreOnlineConf/options/velo.py b/MooreOnlineConf/options/velo.py
index 302c02563..66cee67d8 100644
--- a/MooreOnlineConf/options/velo.py
+++ b/MooreOnlineConf/options/velo.py
@@ -10,22 +10,52 @@
 #############################################################################
 from PyConf.application import default_raw_event
 from Moore import options, run_reconstruction
-from PyConf.Algorithms import VPClusterMonitors, VPClusFull
+from PyConf.Algorithms import VPClusterMonitors, VPClusFull, VPTrackMonitor, TrackEventFitter
+from PyConf.Algorithms import TrackPV2HalfAlignMonitor as TrackPV2HalfMonitor
 from Moore.config import Reconstruction
 from RecoConf.standalone import reco_prefilters
+from RecoConf.hlt1_tracking import make_VPClus_location_and_offsets, all_velo_track_types, get_track_master_fitter, default_ft_decoding_version
+from RecoConf.hlt2_tracking import make_hlt2_tracks
+from PyConf.application import make_odin
+
+default_ft_decoding_version.global_bind(value=6)
 
 
 def velo_mon():
     raw = default_raw_event(["VP"])
 
     clusters = VPClusFull(RawEventLocation=raw).ClusterLocation
-    monitor = VPClusterMonitors(ClusterLocation=clusters)
+    cluster_monitor = VPClusterMonitors(ClusterLocation=clusters)
 
     algs = []
     if options.input_type.lower() == 'online':
         from MooreOnlineConf.utils import update_and_reset
         algs.append(update_and_reset())
-    algs.append(monitor)
+    algs.append(cluster_monitor)
+
+    all_tracks = TrackEventFitter(
+        TracksInContainer=all_velo_track_types()["v1"],
+        Fitter=get_track_master_fitter()).TracksOutContainer
+
+    best_tracks = make_hlt2_tracks()["Best"]["v1"]
+
+    velo_clusters = make_VPClus_location_and_offsets()
+
+    track_monitor_all = VPTrackMonitor(
+        name="VPTrackMonitorAll",
+        TrackContainer=all_tracks,
+        ClusterContainer=velo_clusters["Location"])
+
+    track_monitor_best = VPTrackMonitor(
+        name="VPTrackMonitorBest",
+        TrackContainer=best_tracks,
+        ClusterContainer=velo_clusters["Location"])
+
+    vertex_monitor = TrackPV2HalfMonitor(TrackContainer=all_velo_track_types()["v1"], ODINLocation=make_odin())
+
+    algs.append(track_monitor_all)
+    algs.append(track_monitor_best)
+    algs.append(vertex_monitor)
 
     return Reconstruction('velo_mon', algs, reco_prefilters(gec=False))
 
-- 
GitLab


From 595ed1dae126fe228f04f51e488ea7666975d1da Mon Sep 17 00:00:00 2001
From: Rizwaan Mohammed <Rizwaan Mohammed rizwaan.adeeb.mohammed@cern.ch>
Date: Fri, 24 Jun 2022 16:35:49 +0200
Subject: [PATCH 2/3] Changed formatting

---
 MooreOnlineConf/options/velo.py | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/MooreOnlineConf/options/velo.py b/MooreOnlineConf/options/velo.py
index 66cee67d8..659f8dfc6 100644
--- a/MooreOnlineConf/options/velo.py
+++ b/MooreOnlineConf/options/velo.py
@@ -51,7 +51,9 @@ def velo_mon():
         TrackContainer=best_tracks,
         ClusterContainer=velo_clusters["Location"])
 
-    vertex_monitor = TrackPV2HalfMonitor(TrackContainer=all_velo_track_types()["v1"], ODINLocation=make_odin())
+    vertex_monitor = TrackPV2HalfMonitor(
+        TrackContainer=all_velo_track_types()["v1"], 
+        ODINLocation=make_odin())
 
     algs.append(track_monitor_all)
     algs.append(track_monitor_best)
-- 
GitLab


From afa45d755c0bab54c291df8c623804d7dbe38490 Mon Sep 17 00:00:00 2001
From: Gitlab CI <noreply@cern.ch>
Date: Fri, 24 Jun 2022 14:37:00 +0000
Subject: [PATCH 3/3] Fixed formatting

patch generated by https://gitlab.cern.ch/lhcb/MooreOnline/-/jobs/22795936
---
 MooreOnlineConf/options/velo.py | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/MooreOnlineConf/options/velo.py b/MooreOnlineConf/options/velo.py
index 659f8dfc6..68b072239 100644
--- a/MooreOnlineConf/options/velo.py
+++ b/MooreOnlineConf/options/velo.py
@@ -52,8 +52,7 @@ def velo_mon():
         ClusterContainer=velo_clusters["Location"])
 
     vertex_monitor = TrackPV2HalfMonitor(
-        TrackContainer=all_velo_track_types()["v1"], 
-        ODINLocation=make_odin())
+        TrackContainer=all_velo_track_types()["v1"], ODINLocation=make_odin())
 
     algs.append(track_monitor_all)
     algs.append(track_monitor_best)
-- 
GitLab