@@ -34,7 +34,7 @@ namespace mft
3434
3535class TrackLTF ;
3636
37- class Tracker
37+ class Tracker : public TrackerConfig
3838{
3939
4040 public:
@@ -60,20 +60,16 @@ class Tracker
6060 std::uint32_t getROFrame () const { return mROFrame ; }
6161
6262 void initialize ();
63- const o2::mft::TrackerConfig* getConfig () { return mTrackerConfig .get (); }
64- void setConfig (const TrackerConfig& conf)
65- {
66- mTrackerConfig = std::make_unique<o2::mft::TrackerConfig>(conf);
67- }
63+ void initConfig (const MFTTrackingParam& trkParam);
6864
6965 private:
7066 void findTracks (ROframe&);
7167 void findTracksLTF (ROframe&);
7268 void findTracksCA (ROframe&);
7369 void computeCellsInRoad (ROframe&);
74- void runForwardInRoad (ROframe& );
70+ void runForwardInRoad ();
7571 void runBackwardInRoad (ROframe&);
76- void updateCellStatusInRoad (Road& );
72+ void updateCellStatusInRoad ();
7773
7874 bool fitTracks (ROframe&);
7975
@@ -100,6 +96,7 @@ class Tracker
10096 std::array<std::array<std::array<std::vector<Int_t>, constants::index_table::MaxRPhiBins>, (constants::mft::LayersNumber - 1 )>, (constants::mft::LayersNumber - 1 )> mBinsS ;
10197 std::array<std::array<std::array<std::vector<Int_t>, constants::index_table::MaxRPhiBins>, (constants::mft::LayersNumber - 1 )>, (constants::mft::LayersNumber - 1 )> mBins ;
10298
99+ // / helper to store points of a track candidate
103100 struct TrackElement {
104101 TrackElement () = default ;
105102 TrackElement (Int_t la, Int_t id)
@@ -111,10 +108,8 @@ class Tracker
111108 Int_t idInLayer;
112109 };
113110
114- std::vector<TrackElement> roadPoints;
115-
116- // / tracking configuration parameters
117- std::unique_ptr<o2::mft::TrackerConfig> mTrackerConfig = nullptr ;
111+ // / current road for CA algorithm
112+ Road mRoad ;
118113};
119114
120115// _________________________________________________________________________________________________
0 commit comments