]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONTrackReconstructor.h
TPCNoiseMapComponent included into build (Kelly)
[u/mrichter/AliRoot.git] / MUON / AliMUONTrackReconstructor.h
index fb9f282f088913175fdcdef36fc7fd733725b9e0..0048ecefd0856fccb9e10169195b53c7a477a1ae 100644 (file)
@@ -11,7 +11,8 @@
 
 #include "AliMUONVTrackReconstructor.h"
 
-class AliMUONHitForRec;
+class AliMUONVCluster;
+class AliMUONVClusterStore;
 class AliMUONTrackParam;
 class AliMUONTrack;
 
@@ -20,18 +21,21 @@ class AliMUONTrackReconstructor : public AliMUONVTrackReconstructor
  
  public:
   
-  AliMUONTrackReconstructor(); // default Constructor
+  AliMUONTrackReconstructor(AliMUONVClusterServer& clusterServer); // default Constructor
   virtual ~AliMUONTrackReconstructor(); // Destructor
 
+  virtual Bool_t RefitTrack(AliMUONTrack &track);
+
 
  protected:
 
   // Functions
-  virtual void MakeTrackCandidates();
-  virtual void FollowTracks();
-  virtual void ComplementTracks();
-  virtual void ImproveTracks();
-  virtual void Finalize();
+  virtual void MakeTrackCandidates(AliMUONVClusterStore& clusterStore);
+  virtual void MakeMoreTrackCandidates(AliMUONVClusterStore& clusterStore);
+  virtual void FollowTracks(AliMUONVClusterStore& clusterStore);
+  virtual void ComplementTracks(const AliMUONVClusterStore& clusterStore);
+  virtual void ImproveTrack(AliMUONTrack &track);
+  virtual void FinalizeTrack(AliMUONTrack &track);
   
 
  private:
@@ -41,18 +45,19 @@ class AliMUONTrackReconstructor : public AliMUONVTrackReconstructor
   /// Not implemented copy assignment operator
   AliMUONTrackReconstructor& operator=(const AliMUONTrackReconstructor& rhs);
   
-  Bool_t FollowTrackInStation(AliMUONTrack &trackCandidate, Int_t nextStation);
+  Bool_t FollowTrackInChamber(AliMUONTrack &trackCandidate, AliMUONVClusterStore& clusterStore, Int_t nextChamber);
+  Bool_t FollowTrackInStation(AliMUONTrack &trackCandidate, AliMUONVClusterStore& clusterStore, Int_t nextStation);
   
-  Double_t TryTwoHitForRec(const AliMUONTrackParam &trackParamAtHit1, AliMUONHitForRec* hitForRec2, AliMUONTrackParam &trackParamAtHit2);
+  Double_t TryTwoClusters(const AliMUONTrackParam &trackParamAtCluster, AliMUONVCluster* cluster2, AliMUONTrackParam &trackParamAtCluster2);
 
-  void UpdateTrack(AliMUONTrack &track, AliMUONTrackParam &trackParamAtHit);
-  void UpdateTrack(AliMUONTrack &track, AliMUONTrackParam &trackParamAtHit1, AliMUONTrackParam &trackParamAtHit2);
+  void UpdateTrack(AliMUONTrack &track, AliMUONTrackParam &trackParamAtCluster);
+  void UpdateTrack(AliMUONTrack &track, AliMUONTrackParam &trackParamAtCluster1, AliMUONTrackParam &trackParamAtCluster2);
   
-  Bool_t RecoverTrack(AliMUONTrack &track, Int_t nextStation);
+  Bool_t RecoverTrack(AliMUONTrack &track, AliMUONVClusterStore& clusterStore, Int_t nextStation);
   
-  void SetVertexForFit(AliMUONTrack &trackCandidate);
+  void SetVertexErrXY2ForFit(AliMUONTrack &trackCandidate);
   
-  void Fit(AliMUONTrack &track, Bool_t includeMCS, Bool_t calcCov);
+  void Fit(AliMUONTrack &track, Bool_t includeMCS, Bool_t fitWithVertex, Bool_t calcCov);
 
 
   ClassDef(AliMUONTrackReconstructor, 0) // MUON track reconstructor in ALICE