diff --git a/MooreOnlineConf/options/velo.py b/MooreOnlineConf/options/velo.py index 302c02563a739926f8269b7a12ba46f1f2bef964..68b0722397b5e243fcf9d5def2efb8e5d74df41a 100644 --- a/MooreOnlineConf/options/velo.py +++ b/MooreOnlineConf/options/velo.py @@ -10,22 +10,53 @@ ############################################################################# 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))