Use gMC and not pMC everywhere
[u/mrichter/AliRoot.git] / STEER / AliLego.h
CommitLineData
fe4da5cc 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
13class AliLego : public TNamed {
14
15private:
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
37public:
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