PandaRoot
PndTrackEvaluator.h
Go to the documentation of this file.
1 /*
2  * PndTrackEvaluator.h
3  *
4  * Created on: 18.08.2021
5  * Author: tstockmanns
6  */
7 
8 #ifndef TRACKING_PNDTRACKINGTOOLS_PNDTRACKEVALUATOR_H_
9 #define TRACKING_PNDTRACKINGTOOLS_PNDTRACKEVALUATOR_H_
10 
11 #include <map>
12 #include <vector>
13 #include <functional>
14 
15 #include "PndTrackEvaluatorDetI.h"
16 
17 #include "PndTrack.h"
19  public:
21  virtual ~PndTrackEvaluator();
22 
23  // void AddTest(std::function<bool(PndTrack)> function) { fTests.push_back(function); }
24  bool IsValidTrack(PndTrack &track);
25 
26  bool CheckContinuity(PndTrack &track);
27 
28  void AddDetectorEvaluator(int branchId, PndTrackEvaluatorsDetI *eval) { detEvaluators[branchId] = eval; }
29 
30  private:
31  // std::vector<std::function<bool(PndTrack)>> fTests;
32  std::map<int, PndTrackEvaluatorDetI *> detEvaluators;
33  PndSttStrawMap *fStrawMap = nullptr;
34 };
35 
36 #endif /* TRACKING_PNDTRACKINGTOOLS_PNDTRACKEVALUATOR_H_ */
void AddDetectorEvaluator(int branchId, PndTrackEvaluatorsDetI *eval)
bool CheckContinuity(PndTrack &track)
bool IsValidTrack(PndTrack &track)
virtual ~PndTrackEvaluator()