File indexing completed on 2025-08-05 08:17:23
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef PHTRACKCLEANER_H
0011 #define PHTRACKCLEANER_H
0012
0013 #include <fun4all/SubsysReco.h>
0014
0015 #include <map>
0016 #include <string>
0017 #include <vector>
0018
0019 class PHCompositeNode;
0020 class SvtxTrack;
0021 class SvtxTrackMap;
0022 class TrkrCluster;
0023 class TrackSeedContainer;
0024
0025 class PHTrackCleaner : public SubsysReco
0026 {
0027 public:
0028 PHTrackCleaner(const std::string &name = "PHTrackCleaner");
0029
0030 ~PHTrackCleaner() override;
0031
0032 int InitRun(PHCompositeNode *topNode) override;
0033 int process_event(PHCompositeNode *topNode) override;
0034 int End(PHCompositeNode *topNode) override;
0035
0036 void set_pp_mode(const bool flag) { _pp_mode = flag; }
0037 void set_quality_cut(const float cut) { quality_cut = cut; }
0038
0039 private:
0040 int GetNodes(PHCompositeNode *topNode);
0041 void findGhostTracks();
0042
0043 SvtxTrackMap *_track_map{nullptr};
0044 SvtxTrack *_track{nullptr};
0045 TrackSeedContainer *_tpc_seed_map{nullptr};
0046 TrackSeedContainer *_silicon_seed_map{nullptr};
0047
0048 double min_ndf = 25;
0049 float quality_cut = 150.0;
0050 bool _pp_mode = false;
0051 };
0052
0053 #endif