File indexing completed on 2025-08-06 08:18:01
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010 #ifndef TPCCLUSTERCLEANER_H
0011 #define TPCCLUSTERCLEANER_H
0012
0013 #include <fun4all/SubsysReco.h>
0014
0015 #include <string>
0016 #include <vector>
0017
0018 class PHCompositeNode;
0019 class TrkrCluster;
0020 class TrkrClusterContainer;
0021
0022 class TpcClusterCleaner : public SubsysReco
0023 {
0024 public:
0025 TpcClusterCleaner(const std::string &name = "TpcClusterCleaner");
0026
0027 ~TpcClusterCleaner() override;
0028
0029 int InitRun(PHCompositeNode *topNode) override;
0030 int process_event(PHCompositeNode *topNode) override;
0031 int End(PHCompositeNode *topNode) override;
0032
0033 void set_rphi_error_low_cut(double cut) { _rphi_error_low_cut = cut; }
0034 void set_rphi_error_high_cut(double cut) { _rphi_error_high_cut = cut; }
0035
0036 void set_new_rphi_error(double err) { _new_rphi_error = err; }
0037 void set_new_z_error(double err) { _new_z_error = err; }
0038
0039 private:
0040 void rotate_error(double erphi, double ez, double phi, double error[][3]);
0041
0042 int GetNodes(PHCompositeNode *topNode);
0043 TrkrClusterContainer *_cluster_map = nullptr;
0044
0045 double _rphi_error_low_cut = 0.01;
0046 double _rphi_error_high_cut = 0.1;
0047
0048 double _new_rphi_error = 0.05;
0049 double _new_z_error = 0.1;
0050 };
0051
0052 #endif