]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - STEER/AliLego.h
Splitting of the QA maker into simulation and reconstruction dependent parts (Yves)
[u/mrichter/AliRoot.git] / STEER / AliLego.h
index e2ed9ed02f03afbcb727944a0f212c4cb42547ad..852c6a8e1d2b148329595d81a17b20a16cf726b8 100644 (file)
 //                                                                           //
 ///////////////////////////////////////////////////////////////////////////////
 
-#include <TH2.h>
-
+#include "TNamed.h"
+class TH2F;
 class AliLegoGenerator;
+class TClonesArray;
 
 class AliLego : public TNamed  {
 
@@ -24,25 +25,37 @@ public:
   AliLego(const char *title, Int_t ntheta,Float_t themin,
          Float_t themax, Int_t nphi, Float_t phimin,
          Float_t phimax,Float_t rmin,Float_t rmax,Float_t zmax);
-  AliLego(const AliLego &lego) {lego.Copy(*this);}
+  AliLego(const char *title, AliLegoGenerator* generator);
+  AliLego(const AliLego &lego);
   virtual ~AliLego();
-  virtual void  Copy(AliLego &lego) const;
   virtual void  StepManager();
   virtual void  BeginEvent();
   virtual void  FinishEvent();
   virtual void  FinishRun();
   virtual AliLego &operator=(const AliLego &lego) 
   {lego.Copy(*this);return(*this);}
+
+private:
+  void Copy(TObject &lego) const;
+  void DumpVolumes();
   
 private:
-  AliLegoGenerator *fGener;     //Lego generator
-   Float_t    fTotRadl;         //Total Radiation length
-   Float_t    fTotAbso;         //Total absorption length
-   Float_t    fTotGcm2;         //Total G/CM2 traversed
-   TH2F      *fHistRadl;        //Radiation length map 
-   TH2F      *fHistAbso;        //Interaction length map
-   TH2F      *fHistGcm2;        //g/cm2 length map
-   TH2F      *fHistReta;        //Radiation length map as a function of eta
+   AliLegoGenerator *fGener;     //Lego generator
+   Float_t    fTotRadl;          //!Total Radiation length
+   Float_t    fTotAbso;          //!Total absorption length
+   Float_t    fTotGcm2;          //!Total G/CM2 traversed
+   TH2F      *fHistRadl;         //Radiation length map 
+   TH2F      *fHistAbso;         //Interaction length map
+   TH2F      *fHistGcm2;         //g/cm2 length map
+   TH2F      *fHistReta;         //Radiation length map as a function of eta
+   TClonesArray *fVolumesFwd;    //!Volume sequence forward
+   TClonesArray *fVolumesBwd;    //!Volume sequence backward   
+   Int_t      fStepBack;         //!Flag for backstepping
+   Int_t      fStepsBackward;    //!Counts steps forward
+   Int_t      fStepsForward;     //!Counts steps backward
+   Int_t      fErrorCondition;   //!Error condition flag
+   Int_t      fDebug;            // Debug Flag
+   Bool_t     fStopped;          //!Scoring has been stopped 
    
   ClassDef(AliLego,1) //Utility class to compute and draw Radiation Length Map
 
@@ -50,3 +63,14 @@ private:
 
 
 #endif
+
+
+
+
+
+
+
+
+
+
+