]>
Commit | Line | Data |
---|---|---|
f29ba3e1 | 1 | #ifndef ALIMUONTRACKRECONSTRUCTOR_H |
29f1b13a | 2 | #define ALIMUONTRACKRECONSTRUCTOR_H |
692de412 | 3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ | |
a9e2aefa | 5 | |
692de412 | 6 | /* $Id$ */ |
7 | ||
8 | /// \ingroup rec | |
9 | /// \class AliMUONTrackReconstructor | |
2457f726 | 10 | /// \brief Standard class for the MUON track reconstruction |
3831f268 | 11 | |
2457f726 | 12 | #include "AliMUONVTrackReconstructor.h" |
a9e2aefa | 13 | |
96ebe67e | 14 | class AliMUONVCluster; |
15 | class AliMUONVClusterStore; | |
ea94c18b | 16 | class AliMUONTrackParam; |
de2cd600 | 17 | class AliMUONTrack; |
a9e2aefa | 18 | |
7ec3b9cf | 19 | class AliMUONTrackReconstructor : public AliMUONVTrackReconstructor |
20 | { | |
ea94c18b | 21 | |
a9e2aefa | 22 | public: |
ea94c18b | 23 | |
a0dc65b4 | 24 | AliMUONTrackReconstructor(const AliMUONRecoParam* recoParam, AliMUONVClusterServer* clusterServer); // default Constructor |
cc9e7528 | 25 | virtual ~AliMUONTrackReconstructor(); // Destructor |
a9e2aefa | 26 | |
b1fea02e | 27 | virtual Bool_t RefitTrack(AliMUONTrack &track, Bool_t enableImprovement = kTRUE); |
7deb8eb0 | 28 | |
8429a5e4 | 29 | |
2457f726 | 30 | protected: |
7fc86979 | 31 | |
ea94c18b | 32 | // Functions |
89c8d66d | 33 | virtual Bool_t MakeTrackCandidates(AliMUONVClusterStore& clusterStore); |
34 | virtual Bool_t MakeMoreTrackCandidates(AliMUONVClusterStore& clusterStore); | |
35 | virtual Bool_t FollowTracks(AliMUONVClusterStore& clusterStore); | |
36 | virtual Bool_t ComplementTracks(const AliMUONVClusterStore& clusterStore); | |
4ea3f013 | 37 | virtual void ImproveTrack(AliMUONTrack &track); |
38 | virtual Bool_t FinalizeTrack(AliMUONTrack &track); | |
2457f726 | 39 | |
5e671e06 | 40 | |
a9e2aefa | 41 | private: |
2457f726 | 42 | |
71a2d3aa | 43 | /// Not implemented copy constructor |
44 | AliMUONTrackReconstructor (const AliMUONTrackReconstructor& rhs); | |
45 | /// Not implemented copy assignment operator | |
46 | AliMUONTrackReconstructor& operator=(const AliMUONTrackReconstructor& rhs); | |
2457f726 | 47 | |
9bf6860b | 48 | Bool_t FollowTrackInChamber(AliMUONTrack &trackCandidate, AliMUONVClusterStore& clusterStore, Int_t nextChamber); |
1fef78c8 | 49 | Bool_t FollowTrackInStation(AliMUONTrack &trackCandidate, AliMUONVClusterStore& clusterStore, Int_t nextStation); |
ea94c18b | 50 | |
96ebe67e | 51 | Double_t TryTwoClusters(const AliMUONTrackParam &trackParamAtCluster, AliMUONVCluster* cluster2, AliMUONTrackParam &trackParamAtCluster2); |
ea94c18b | 52 | |
96ebe67e | 53 | void UpdateTrack(AliMUONTrack &track, AliMUONTrackParam &trackParamAtCluster); |
54 | void UpdateTrack(AliMUONTrack &track, AliMUONTrackParam &trackParamAtCluster1, AliMUONTrackParam &trackParamAtCluster2); | |
ea94c18b | 55 | |
1fef78c8 | 56 | Bool_t RecoverTrack(AliMUONTrack &track, AliMUONVClusterStore& clusterStore, Int_t nextStation); |
ea94c18b | 57 | |
96ebe67e | 58 | void SetVertexErrXY2ForFit(AliMUONTrack &trackCandidate); |
ea94c18b | 59 | |
96ebe67e | 60 | void Fit(AliMUONTrack &track, Bool_t includeMCS, Bool_t fitWithVertex, Bool_t calcCov); |
83dbc640 | 61 | |
29fc2c86 | 62 | |
29f1b13a | 63 | ClassDef(AliMUONTrackReconstructor, 0) // MUON track reconstructor in ALICE |
7ec3b9cf | 64 | }; |
a9e2aefa | 65 | |
66 | #endif |