]> git.uio.no Git - u/mrichter/AliRoot.git/blob - STEER/AliLego.h
New GetPolarisation
[u/mrichter/AliRoot.git] / STEER / AliLego.h
1 #ifndef ALILego_H
2 #define ALILego_H
3 ///////////////////////////////////////////////////////////////////////////////
4 //                                                                           //
5 //                                                                           //
6 //    Utility class to compute and draw Radiation Length Map                 //
7 //                                                                           //
8 //                                                                           //
9 ///////////////////////////////////////////////////////////////////////////////
10
11 #include <TH2.h>
12
13 class AliLego : public TNamed  {
14
15 private:
16    Float_t    fThetaMin;        //Minimum generation theta
17    Float_t    fThetaMax;        //Maximum generation theta
18    Float_t    fPhiMin;          //Minimum generation phi
19    Float_t    fPhiMax;          //Maximum generation phi
20    Float_t    fRadMin;          //Generation radius
21    Float_t    fRadMax;          //Maximum tracking radius
22    Float_t    fZMax;            //Maximum tracking Z
23    Int_t      fNtheta;          //Number of bins in Theta
24    Int_t      fNphi;            //Number of bins in Phi
25    Int_t      fThetaBin;        //Current theta bin
26    Int_t      fPhiBin;          //Current phi bin
27    Float_t    fCurTheta;        //Current theta of track
28    Float_t    fCurPhi;          //Current phi of track
29    Float_t    fTotRadl;         //Total Radiation length
30    Float_t    fTotAbso;         //Total absorption length
31    Float_t    fTotGcm2;         //Total G/CM2 traversed
32    TH2F      *fHistRadl;        //Radiation length map 
33    TH2F      *fHistAbso;        //Interaction length map
34    TH2F      *fHistGcm2;        //g/cm2 length map
35    TH2F      *fHistReta;        //Radiation length map as a function of eta
36    
37 public:
38   AliLego();
39   AliLego(const char *name, const char *title);
40   virtual ~AliLego();
41   virtual void  GenerateKinematics();
42   virtual void  Init(Int_t ntheta,Float_t themin,Float_t themax, Int_t nphi, Float_t phimin,
43                      Float_t phimax,Float_t rmin,Float_t rmax,Float_t zmax);
44   Float_t       PropagateCylinder(Float_t *x, Float_t *v, Float_t r, Float_t z);
45   virtual void  Run();
46   virtual void  StepManager();
47   
48   ClassDef(AliLego,1) //Utility class to compute and draw Radiation Length Map
49
50 };
51
52 #endif
53