3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
8 ///////////////////////////////////////////////////////////////////////////////
11 // Utility class to compute and draw Radiation Length Map //
14 ///////////////////////////////////////////////////////////////////////////////
18 class AliLegoGenerator;
21 class AliLego : public TNamed {
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);
28 AliLego(const char *title, AliLegoGenerator* generator);
29 AliLego(const AliLego &lego) {lego.Copy(*this);}
31 void Copy(AliLego &lego) const;
32 virtual void StepManager();
33 virtual void BeginEvent();
34 virtual void FinishEvent();
35 virtual void FinishRun();
36 virtual AliLego &operator=(const AliLego &lego)
37 {lego.Copy(*this);return(*this);}
39 AliLegoGenerator *fGener; //Lego generator
40 Float_t fTotRadl; //!Total Radiation length
41 Float_t fTotAbso; //!Total absorption length
42 Float_t fTotGcm2; //!Total G/CM2 traversed
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
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
55 ClassDef(AliLego,1) //Utility class to compute and draw Radiation Length Map