File indexing completed on 2026-10-16 08:28:59
0001
0002
0003 #ifndef PHSILICONTRACKMATCHING_H
0004 #define PHSILICONTRACKMATCHING_H
0005
0006 #include <fun4all/SubsysReco.h>
0007 #include <trackbase/ActsGeometry.h>
0008
0009 #include <map>
0010 #include <string>
0011
0012 class PHCompositeNode;
0013 class TrackSeedContainer;
0014 class TrackSeed;
0015 class TrkrClusterContainer;
0016
0017 class PHSiliconTrackMatching : public SubsysReco
0018 {
0019 public:
0020 PHSiliconTrackMatching(const std::string &name = "PHSiliconTrackMatching");
0021
0022 ~PHSiliconTrackMatching() override;
0023
0024 void set_cluster_map_name(const std::string &name)
0025 {
0026 _cluster_map_name = name;
0027 }
0028 int InitRun(PHCompositeNode *topNode) override;
0029
0030 int process_event(PHCompositeNode *) override;
0031
0032 int End(PHCompositeNode *) override;
0033
0034 void fieldMap(std::string &fieldmap) { m_fieldMap = fieldmap; }
0035
0036 void set_silicon_track_map_name(const std::string &map_name) { _silicon_track_map_name = map_name; }
0037 void set_track_map_name(const std::string &map_name) { _track_map_name = map_name; }
0038 void SetIteration(int iter) { _n_iteration = iter; }
0039
0040 private:
0041 int GetNodes(PHCompositeNode *topNode);
0042
0043
0044
0045 bool _zero_field = false;
0046
0047 TrackSeedContainer *_svtx_seed_map{nullptr};
0048 TrackSeedContainer *_track_map{nullptr};
0049 TrackSeedContainer *_track_map_silicon{nullptr};
0050 TrackSeed *_tracklet_si{nullptr};
0051 TrkrClusterContainer *_cluster_map{nullptr};
0052 ActsGeometry *_tGeometry{nullptr};
0053 int m_event = 0;
0054
0055 int _n_iteration = 0;
0056 std::string _track_map_name = "TpcTrackSeedContainer";
0057 std::string _silicon_track_map_name = "SiliconTrackSeedContainer";
0058 std::string _cluster_map_name = "TRKR_CLUSTER";
0059 std::string m_fieldMap = "1.4";
0060 };
0061
0062 #endif