1 #ifndef ALIEVE_MUONTrack_H
2 #define ALIEVE_MUONTrack_H
4 #include <Reve/Track.h>
7 class AliMUONTriggerTrack;
10 class AliTrackReference;
23 class MUONTrack: public Reve::Track
26 MUONTrack(const MUONTrack&); // Not implemented
27 MUONTrack& operator=(const MUONTrack&); // Not implemented
31 MUONTrack(Reve::RecTrack* t, Reve::TrackRnrStyle* rs);
34 virtual void MakeTrack(Bool_t /*recurse*/=kFALSE) {}
36 void MakeMUONTrack(AliMUONTrack *mtrack);
37 void MakeMUONTriggerTrack(AliMUONTriggerTrack *mtrack);
38 void MakeESDTrack(AliESDMuonTrack *mtrack);
39 void MakeMCTrack(TParticle *part);
40 void MakeRefTrack(AliMUONTrack *mtrack);
41 void GetField(Double_t *position, Double_t *field);
42 void Propagate(Float_t *xr, Float_t *yr, Float_t *zr, Int_t i1, Int_t i2);
43 void OneStepRungekutta(Double_t charge, Double_t step,
44 Double_t* vect, Double_t* vout);
45 Int_t ColorIndex(Float_t val);
47 Bool_t IsMUONTrack() { return fIsMUONTrack; };
48 Bool_t IsMUONTriggerTrack() { return fIsMUONTrack; };
49 Bool_t IsESDTrack() { return fIsESDTrack; };
50 Bool_t IsMCTrack() { return fIsMCTrack; };
51 Bool_t IsRefTrack() { return fIsRefTrack; };
53 void PrintMCTrackInfo();
54 void PrintMUONTrackInfo();
55 void PrintMUONTriggerTrackInfo();
56 void PrintESDTrackInfo();
58 void MUONTrackInfo(); // *MENU*
59 void MUONTriggerInfo(); // *MENU*
63 AliMUONTrack *fTrack; // pointer to the MUON track
64 TParticle *fPart; // pointer to the MC particle
65 Int_t fCount; // track points counter
66 Bool_t fIsMUONTrack; // track from MUON.Tracks.root
67 Bool_t fIsMUONTriggerTrack; // trigger track from MUON.Tracks.root
68 Bool_t fIsESDTrack; // track from AliESDs.root
69 Bool_t fIsMCTrack; // track from Kinematics.root
70 Bool_t fIsRefTrack; // track from TrackRefs.root
72 static AliMagF *fFieldMap; // pointer to the magnetic field map
74 ClassDef(MUONTrack, 1); // Produce Reve:Track from AliMUONTrack