PandaRoot
PndFtsReconMerge.h
Go to the documentation of this file.
1 //
2 // Created by Bartosz Sobol on 30.03.2021.
3 //
4 
5 #pragma once
6 
7 #include "tool/PndFtsMath.h"
8 #include "tool/PndFtsTrack.h"
9 #include "tool/PndFtsContext.h"
10 #include <optional>
11 
12 namespace PndFtsTrackFinder {
13 
15  public:
16  PndFtsReconMerge() = delete;
17 
18  explicit PndFtsReconMerge(const PndFtsContext &context);
19 
20  PndFtsReconMerge(const PndFtsContext &&context) = delete;
21 
22  [[nodiscard]] FullTrackVector Exec(const LineTrackVector &ft12Tracks, const CircleTrackVector &ft34Tracks, const LineTrackVector &ft56Tracks) const;
23 
24  private:
25  [[nodiscard]] std::optional<std::size_t> ExecItem(const LineTrack &ft56Track, const FullTrackVector &ft1234Tracks, TrackRange eventTracks) const;
26 
27  const PndFtsContext &fContext;
28 };
29 
30 } // namespace PndFtsTrackFinder
std::vector< CircleTrack > CircleTrackVector
Definition: PndFtsTrack.h:83
std::vector< LineTrack > LineTrackVector
Definition: PndFtsTrack.h:49
std::vector< PndFtsFullTrack > FullTrackVector
Definition: PndFtsTrack.h:132
FullTrackVector Exec(const LineTrackVector &ft12Tracks, const CircleTrackVector &ft34Tracks, const LineTrackVector &ft56Tracks) const