Rewritten using VStores (Laurent)
[u/mrichter/AliRoot.git] / MUON / AliMUONTrackReconstructor.h
1 #ifndef ALIMUONTRACKRECONSTRUCTOR_H
2 #define ALIMUONTRACKRECONSTRUCTOR_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 /// \ingroup rec
9 /// \class AliMUONTrackReconstructor
10 /// \brief Standard class for the MUON track reconstruction
11
12 #include "AliMUONVTrackReconstructor.h"
13
14 class AliMUONTrack;
15
16 class AliMUONTrackReconstructor : public AliMUONVTrackReconstructor 
17 {
18  public:
19   AliMUONTrackReconstructor(); // default Constructor
20   virtual ~AliMUONTrackReconstructor(); // Destructor
21
22   virtual void EventDump(void);  // dump reconstructed event
23
24
25  protected:
26
27   virtual void MakeTracks(void);
28   virtual void MakeTrackCandidates(void);
29   virtual void FollowTracks(void);
30   virtual void RemoveDoubleTracks(void);
31   virtual void FillMUONTrack(void);
32   
33
34  private:
35   
36   // Parameters for reconstruction
37   static const Double_t fgkMaxNormChi2; ///< maximum Chi2 per degree of freedom for reconstruction
38   static const Bool_t fgkTrackAllTracks; ///< kTRUE to track all the possible candidates; kFALSE to track only the best ones
39
40   // Functions
41   /// Not implemented copy constructor
42   AliMUONTrackReconstructor (const AliMUONTrackReconstructor& rhs); 
43   /// Not implemented copy assignment operator
44   AliMUONTrackReconstructor& operator=(const AliMUONTrackReconstructor& rhs);
45   
46   void RemoveIdenticalTracks(void);
47   void FollowTrackInStation(AliMUONTrack* trackCandidate, Int_t nextStation);
48   void SetVertexForFit(AliMUONTrack* trackCandidate);
49   void Fit(AliMUONTrack *track, Bool_t includeMCS, Bool_t calcCov);
50
51
52   ClassDef(AliMUONTrackReconstructor, 0) // MUON track reconstructor in ALICE
53 };
54         
55 #endif