- void SortHitsForRecWithIncreasingChamber();
- TClonesArray *MakeSegmentsInStation(Int_t station);
-
- /// \todo add comment
- virtual void AddHitsForRecFromRawClusters() = 0;
- /// \todo add comment
- virtual void MakeTracks(void) = 0;
- /// \todo add comment
- virtual void MakeTrackCandidates(void) = 0;
- /// \todo add comment
- virtual void FollowTracks(void) = 0;
- /// \todo add comment
- virtual void RemoveDoubleTracks(void) = 0;
- /// \todo add comment
- virtual void FillMUONTrack(void) = 0;
+ /// Make track candidates from clusters in stations(1..) 4 and 5
+ virtual Bool_t MakeTrackCandidates(AliMUONVClusterStore& clusterStore) = 0;
+ /// Make extra track candidates from clusters in stations(1..) 4 and 5
+ virtual Bool_t MakeMoreTrackCandidates(AliMUONVClusterStore& clusterStore) = 0;
+ /// Follow tracks in stations(1..) 3, 2 and 1
+ virtual Bool_t FollowTracks(AliMUONVClusterStore& clusterStore) = 0;
+ /// Complement the reconstructed tracks
+ virtual Bool_t ComplementTracks(const AliMUONVClusterStore& clusterStore) = 0;
+ void ImproveTracks();
+ /// Improve the given reconstructed track
+ virtual void ImproveTrack(AliMUONTrack &track) = 0;
+ void Finalize();
+ /// Finalize the given track
+ virtual Bool_t FinalizeTrack(AliMUONTrack &track) = 0;
+
+ Bool_t IsAcceptable(AliMUONTrackParam &trackParam);
+
+ TClonesArray* MakeSegmentsBetweenChambers(const AliMUONVClusterStore& clusterStore, Int_t ch1, Int_t ch2);
+
+ void RemoveUsedSegments(TClonesArray& segments);
+ void RemoveIdenticalTracks();
+ void RemoveDoubleTracks();
+ void RemoveConnectedTracks(Int_t stMin, Int_t stMax, Bool_t all);
+ void TagConnectedTracks(Int_t stMin, Int_t stMax, Bool_t all);
+
+ void AskForNewClustersInStation(const AliMUONTrackParam &trackParam,
+ AliMUONVClusterStore& clusterStore, Int_t station);
+ void AskForNewClustersInChamber(const AliMUONTrackParam &trackParam,
+ AliMUONVClusterStore& clusterStore, Int_t chamber);
+
+ Double_t TryOneCluster(const AliMUONTrackParam &trackParam, AliMUONVCluster* cluster,
+ AliMUONTrackParam &trackParamAtCluster, Bool_t updatePropagator = kFALSE);
+ Bool_t TryOneClusterFast(const AliMUONTrackParam &trackParam, const AliMUONVCluster* cluster);
+ Double_t TryTwoClustersFast(const AliMUONTrackParam &trackParamAtCluster1, AliMUONVCluster* cluster2,
+ AliMUONTrackParam &trackParamAtCluster2);