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);
31 virtual void StepManager();
32 virtual void BeginEvent();
33 virtual void FinishEvent();
34 virtual void FinishRun();
35 virtual AliLego &operator=(const AliLego &lego)
36 {lego.Copy(*this);return(*this);}
39 void Copy(TObject &lego) const;
43 AliLegoGenerator *fGener; //Lego generator
44 Float_t fTotRadl; //!Total Radiation length
45 Float_t fTotAbso; //!Total absorption length
46 Float_t fTotGcm2; //!Total G/CM2 traversed
47 TH2F *fHistRadl; //Radiation length map
48 TH2F *fHistAbso; //Interaction length map
49 TH2F *fHistGcm2; //g/cm2 length map
50 TH2F *fHistReta; //Radiation length map as a function of eta
51 TClonesArray *fVolumesFwd; //!Volume sequence forward
52 TClonesArray *fVolumesBwd; //!Volume sequence backward
53 Int_t fStepBack; //!Flag for backstepping
54 Int_t fStepsBackward; //!Counts steps forward
55 Int_t fStepsForward; //!Counts steps backward
56 Int_t fErrorCondition; //!Error condition flag
57 Int_t fDebug; // Debug Flag
58 Bool_t fStopped; //!Scoring has been stopped
60 ClassDef(AliLego,1) //Utility class to compute and draw Radiation Length Map