* See cxx source for full Copyright notice */
/*$Id$*/
+// Revision of includes 07/05/2004
+
///////////////////////////////////////////////////
// Reconstructed track in ALICE dimuon spectrometer
///////////////////////////////////////////////////
+#include <TClonesArray.h>
+
#include "AliMUONTrackParam.h" // object belongs to the class
+#include "AliMUONHitForRec.h" // object belongs to the class
-const Int_t kMaxTrackingChamber=10;
+//const Int_t kMaxTrackingChamber=10;
+ // not used
class TObjArray;
-class TClonesArray;
class TVirtualFitter;
class AliMUONEventReconstructor;
class AliMUONHitForRec;
class AliMUONSegment;
-class AliMUONTrack : public TObject {
+class AliMUONTrack : public TObject
+{
public:
AliMUONTrack(); // Default constructor
virtual ~AliMUONTrack(); // Destructor
void SetTrackParamAtVertex(void); // Set track parameters at vertex from last stations 4 & 5
void SetTrackParamAtVertex(AliMUONTrackParam* TrackParam) {fTrackParamAtVertex = *TrackParam;}
TClonesArray *GetTrackParamAtHit(void) const {return fTrackParamAtHit;}
+ TClonesArray *GetHitForRecAtHit(void) const {return fHitForRecAtHit;}
+ void ResetTrackParamAtHit(void) { fTrackParamAtHit->Delete(); }
+ void ResetHitForRecAtHit(void) { fHitForRecAtHit->Delete(); }
void AddTrackParamAtHit(const AliMUONTrackParam *trackParam)
{new ((*fTrackParamAtHit)[fTrackParamAtHit->GetEntriesFast()]) AliMUONTrackParam(*trackParam);}
+ void AddHitForRecAtHit(const AliMUONHitForRec *hitForRec)
+ {new ((*fHitForRecAtHit)[fHitForRecAtHit->GetEntriesFast()]) AliMUONHitForRec(*hitForRec);}
TObjArray* GetTrackHitsPtr(void) const {return fTrackHitsPtr;}
Int_t GetNTrackHits(void) const {return fNTrackHits;}
+ void SetNTrackHits(Int_t nTrackHits) {fNTrackHits = nTrackHits;}
Int_t GetFitMCS(void) const {return fFitMCS;}
Int_t GetFitNParam(void) const {return fFitNParam;}
Int_t GetFitStart(void) const {return fFitStart;}
void AddSegment(AliMUONSegment* Segment); // Add Segment
void AddHitForRec(AliMUONHitForRec* HitForRec); // Add HitForRec
void SetTrackParamAtHit(Int_t indexHit, AliMUONTrackParam *TrackParam) const;
- Int_t HitsInCommon(AliMUONTrack* Track);
+ Int_t HitsInCommon(AliMUONTrack* Track) const;
void MatchTriggerTrack(TClonesArray* TriggerTrackArray);
+ Bool_t* CompatibleTrack(AliMUONTrack* Track, Double_t Sigma2Cut) const; // return array of compatible chamber
+
+ Int_t GetTrackID() const {return fTrackID;}
+ void SetTrackID(Int_t trackID) {fTrackID = trackID;}
static TVirtualFitter* Fitter(void) {return fgFitter;}
AliMUONEventReconstructor* fEventReconstructor; //! Pointer to EventReconstructor
AliMUONTrackParam fTrackParamAtVertex; // Track parameters at vertex
TClonesArray *fTrackParamAtHit; // Track parameters at hit
+ TClonesArray *fHitForRecAtHit; // Cluster parameters at hit
TObjArray *fTrackHitsPtr; //! Pointer to array of pointers to TrackHit's
Int_t fNTrackHits; // Number of TrackHit's
Int_t fFitMCS; // 0(1) for fit without(with) multiple Coulomb scattering
Bool_t fMatchTrigger; // 1 if track matches with trigger track, 0 if not
Double_t fChi2MatchTrigger; // chi2 of trigger/track matching
+ Int_t fTrackID; // track ID = track number in TrackRefs
+
ClassDef(AliMUONTrack, 2) // Reconstructed track in ALICE dimuon spectrometer
};