File indexing completed on 2025-08-06 08:18:34
0001
0002
0003
0004
0005
0006
0007 #ifndef TRACKRECO_PHTRACKPROPAGATING_H
0008 #define TRACKRECO_PHTRACKPROPAGATING_H
0009
0010
0011 #include <fun4all/SubsysReco.h>
0012
0013
0014 #include <string>
0015
0016
0017 class PHCompositeNode;
0018
0019 class TrkrClusterContainer;
0020 class SvtxVertexMap;
0021 class SvtxTrackMap;
0022
0023
0024
0025
0026
0027 class PHTrackPropagating : public SubsysReco
0028 {
0029 public:
0030 PHTrackPropagating(const std::string &name = "PHTrackPropagating");
0031 ~PHTrackPropagating() override = default;
0032
0033 int InitRun(PHCompositeNode *topNode) override;
0034 int process_event(PHCompositeNode *topNode) override;
0035 int End(PHCompositeNode *topNode) override;
0036 void set_track_map_name(const std::string &map_name) { _track_map_name = map_name; }
0037 void SetUseTruthClusters(bool setit){_use_truth_clusters = setit;}
0038
0039 protected:
0040
0041
0042 virtual int Setup(PHCompositeNode *topNode);
0043
0044
0045
0046 virtual int Process() = 0;
0047
0048
0049 virtual int End() = 0;
0050
0051
0052
0053 TrkrClusterContainer *_cluster_map = nullptr;
0054 SvtxVertexMap *_vertex_map = nullptr;
0055 SvtxTrackMap *_track_map = nullptr;
0056
0057 std::string _track_map_name = "SvtxTrackMap";
0058
0059 bool _use_truth_clusters = false;
0060
0061 private:
0062
0063 int GetNodes(PHCompositeNode *topNode);
0064 };
0065
0066 #endif