aee8290b |
1 | #ifndef ALILEGO_H |
2 | #define ALILEGO_H |
3da30618 |
3 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
4 | * See cxx source for full Copyright notice */ |
5 | |
6 | /* $Id$ */ |
7 | |
fe4da5cc |
8 | /////////////////////////////////////////////////////////////////////////////// |
9 | // // |
10 | // // |
11 | // Utility class to compute and draw Radiation Length Map // |
12 | // // |
13 | // // |
14 | /////////////////////////////////////////////////////////////////////////////// |
15 | |
94de3818 |
16 | #include "TNamed.h" |
17 | class TH2F; |
b13db077 |
18 | class AliLegoGenerator; |
7eb618fa |
19 | class TClonesArray; |
b13db077 |
20 | |
fe4da5cc |
21 | class AliLego : public TNamed { |
22 | |
fe4da5cc |
23 | public: |
24 | AliLego(); |
b13db077 |
25 | AliLego(const char *title, Int_t ntheta,Float_t themin, |
26 | Float_t themax, Int_t nphi, Float_t phimin, |
27 | Float_t phimax,Float_t rmin,Float_t rmax,Float_t zmax); |
0b27b8c7 |
28 | AliLego(const char *title, AliLegoGenerator* generator); |
8918e700 |
29 | AliLego(const AliLego &lego) {lego.Copy(*this);} |
fe4da5cc |
30 | virtual ~AliLego(); |
ef42d733 |
31 | void Copy(AliLego &lego) const; |
fe4da5cc |
32 | virtual void StepManager(); |
dffd31ef |
33 | virtual void BeginEvent(); |
34 | virtual void FinishEvent(); |
35 | virtual void FinishRun(); |
8918e700 |
36 | virtual AliLego &operator=(const AliLego &lego) |
37 | {lego.Copy(*this);return(*this);} |
8918e700 |
38 | private: |
0b27b8c7 |
39 | AliLegoGenerator *fGener; //Lego generator |
7eb618fa |
40 | Float_t fTotRadl; //!Total Radiation length |
41 | Float_t fTotAbso; //!Total absorption length |
42 | Float_t fTotGcm2; //!Total G/CM2 traversed |
0b27b8c7 |
43 | TH2F *fHistRadl; //Radiation length map |
44 | TH2F *fHistAbso; //Interaction length map |
45 | TH2F *fHistGcm2; //g/cm2 length map |
46 | TH2F *fHistReta; //Radiation length map as a function of eta |
7eb618fa |
47 | TClonesArray *fVolumesFwd; //!Volume sequence forward |
48 | TClonesArray *fVolumesBwd; //!Volume sequence backward |
49 | Int_t fStepBack; //!Flag for backstepping |
50 | Int_t fStepsBackward; //!Counts steps forward |
51 | Int_t fStepsForward; //!Counts steps backward |
52 | Int_t fErrorCondition; //!Error condition flag |
53 | Int_t fDebug; // Debug Flag |
8918e700 |
54 | |
fe4da5cc |
55 | ClassDef(AliLego,1) //Utility class to compute and draw Radiation Length Map |
56 | |
57 | }; |
58 | |
b13db077 |
59 | |
fe4da5cc |
60 | #endif |
7eb618fa |
61 | |
62 | |
63 | |
64 | |
65 | |
66 | |
67 | |
68 | |
69 | |
70 | |
71 | |