]>
Commit | Line | Data |
---|---|---|
c5555bc0 | 1 | #ifndef ALIHELIX_H |
2 | #define ALIHELIX_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 | #include "THelix.h" | |
9 | #include "TObjArray.h" | |
62e01f4c | 10 | #include "TPolyMarker3D.h" |
c5555bc0 | 11 | |
12 | #include "Ali3Vector.h" | |
13 | #include "AliTrack.h" | |
14 | #include "AliEvent.h" | |
15 | ||
16 | class AliHelix : public THelix | |
17 | { | |
18 | public: | |
19 | AliHelix(); // Default constructor | |
20 | virtual ~AliHelix(); // Destructor | |
21 | AliHelix(const AliHelix& h); // Copy constructor | |
22 | void SetB(Ali3Vector& b); // Set the magnetic field vector in Tesla | |
23 | Ali3Vector& GetB(); // Provide the magnetic field vector in Tesla | |
24 | void SetTofmax(Float_t tof); // Set maximum time of flight | |
25 | Float_t GetTofmax() const; // Provide the maximum time of flight | |
26 | void Display(AliTrack* t,Double_t* range=0,Int_t iaxis=3,Double_t scale=-1);// Show curve for this track | |
27 | void Display(AliEvent* e,Double_t* range=0,Int_t iaxis=3,Double_t scale=-1);// Show curves for this event | |
aa8231b0 | 28 | void Display(TObjArray* a,Double_t* range=0,Int_t iaxis=3,Double_t scale=-1);// Show curves for this track array |
c5555bc0 | 29 | void Refresh(Int_t mode=0); // Refresh the view before drawing the next one |
30 | AliPosition* Extrapolate(AliTrack* t,Double_t* pars=0,Double_t scale=-1); // Extrapolate this track | |
31 | void MakeCurve(AliTrack* t,Double_t* range=0,Int_t iaxis=3,Double_t scale=-1); // Helix curve for this track | |
62e01f4c | 32 | void SetMarker(Int_t marker=8,Float_t size=0.2,Int_t color=-1); // Set marker for track starting point |
33 | void UseEndPoint(Int_t mode=1); // (De)Select (0/1) usage of track endpoint for drawing and extrapolation | |
c5555bc0 | 34 | |
35 | protected: | |
62e01f4c | 36 | Ali3Vector fB; // The magnetic field vector in Tesla |
37 | Float_t fTofmax; // The maximum time of flight | |
38 | Int_t fRefresh; // Auto-refresh flag for drawings | |
39 | Int_t fMstyle; // The marker style to indicate the track starting point | |
40 | Float_t fMsize; // The size of the marker | |
41 | Int_t fMcol; // The colour of the marker | |
42 | Int_t fEnduse; // Flag to denote tracks endpoint usage | |
43 | TObjArray* fCurves; //! Temp. storage for the curves on the drawing | |
44 | AliPosition* fExt; //! The extrapolation result | |
c5555bc0 | 45 | |
aa8231b0 | 46 | ClassDef(AliHelix,3) // Representation and extrapolation of AliTracks in a magnetic field. |
c5555bc0 | 47 | }; |
48 | #endif |