/*$Id$*/
// Revision of includes 07/05/2004
-#include <TObject.h>
-#include "AliMUONTrack.h" //AZ
+/// \ingroup rec
+/// \class AliMUONTrack
+/// \brief Kalman track in MUON arm of ALICE
class TArrayD;
-class TMatrixD;
-class AliMUONEventReconstructor;
class TClonesArray;
class TObjArray;
-class AliMUONSegment;
-class AliMUON;
+#include <TMatrixDfwd.h>
+#include <TObject.h>
+
+class AliMUONEventRecoCombi;
class AliMUONHitForRec;
+class AliMUONSegment;
+class AliMUONTrackReconstructor;
+#include "AliMUONTrack.h"
-//AZ class AliMUONTrackK : public TObject {
class AliMUONTrackK : public AliMUONTrack {
public:
AliMUONTrackK(); // Default constructor
virtual ~AliMUONTrackK(); // Destructor
- //AliMUONTrackK(const AliMUONEventReconstructor *EventReconstructor, const AliMUONHitForRec *hitForRec); // Constructor
- AliMUONTrackK(AliMUONEventReconstructor *EventReconstructor, TClonesArray *hitForRec); // Constructor
+ AliMUONTrackK(AliMUONTrackReconstructor *TrackReconstructor, TClonesArray *hitForRec); // Constructor
AliMUONTrackK(AliMUONSegment *segment); // Constructor from a segment
// Pointer to hits on track
static Int_t fgDebug; // debug level
static Int_t fgNOfPoints; // number of points in event
- static AliMUON *fgMUON; // pointer to MUON module
- static AliMUONEventReconstructor *fgEventReconstructor; // pointer to event reconstructor
+ //static AliMUON *fgMUON; // pointer to MUON module
+ static AliMUONTrackReconstructor *fgTrackReconstructor; // pointer to event reconstructor
static TClonesArray *fgHitForRec; // pointer to hits
+ static AliMUONEventRecoCombi *fgCombi; // pointer to combined cluster/track finder
AliMUONSegment *fStartSegment; // seed segment
Double_t fPosition; // Z-coordinate of track
void WeightPropagation(Double_t zEnd, Bool_t smooth);
void MSThin(Int_t sign);
void MSLine(Double_t dZ, Double_t X0);
- Bool_t FindPoint(Int_t ichamb, Double_t zEnd, Int_t currIndx, Int_t iFB, AliMUONHitForRec *&hitAdd);
+ Bool_t FindPoint(Int_t ichamb, Double_t zEnd, Int_t currIndx, Int_t iFB, AliMUONHitForRec *&hitAdd, Int_t iz);
void TryPoint(TMatrixD &point, const TMatrixD &pointWeight, TMatrixD &trackParTmp, Double_t &dChi2);
void SetGeantParam(Double_t *VGeant3, Int_t iFB);
void GetFromGeantParam(Double_t *VGeant3, Int_t iFB);