EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHTrackSelector.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PHTrackSelector.h
1 // Tell emacs that this is a C++ source
2 // -*- C++ -*-.
3 
10 #ifndef PHTRACKSELECTOR_H
11 #define PHTRACKSELECTOR_H
12 
13 #include <fun4all/SubsysReco.h>
14 
15 #include <string>
16 #include <vector>
17 #include <map>
18 
19 class PHCompositeNode;
20 class SvtxTrack;
21 class SvtxTrackMap;
22 class TrkrCluster;
23 class TpcSeedTrackMap;
25 
27 {
28  public:
29 
30  PHTrackSelector(const std::string &name = "PHTrackSelector");
31 
32  ~PHTrackSelector() override;
33 
34  int InitRun(PHCompositeNode *topNode) override;
35  int process_event(PHCompositeNode *topNode) override;
36  int End(PHCompositeNode *topNode) override;
37 
38  void SetMinTPCClusters(int nhits) {min_tpc_clusters = nhits;}
39  void SetMinINTTHits(int nhits) {min_intt_hits = nhits;}
40  void SetMinMVTXHits(int nhits) {min_mvtx_hits = nhits;}
42  void SetIteration(int iter) {_n_iter = iter;}
43 
44  void SetTrackMapName(const std::string &map_name) { _track_map_name = map_name; }
45 
46  private:
47 
48  int GetNodes(PHCompositeNode* topNode);
49 
50  std::string _track_map_name;
52  SvtxTrack *_track{nullptr};
54 
56 
57  int _n_iter = 1;
58  unsigned int min_tpc_clusters = 35;
59  unsigned int min_mvtx_hits = 2;
60  unsigned int min_intt_hits = 1;
61  float max_chi2_ndf = 30;
62 
63 };
64 
65 #endif // PHTRACKSELECTOR_H