#ifndef ALILEGO_H
#define ALILEGO_H
#include "TNamed.h"
class TH2F;
class AliLegoGenerator;
class TClonesArray;
class AliLego : public TNamed {
public:
AliLego();
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 char *title, AliLegoGenerator* generator);
AliLego(const AliLego &lego);
virtual ~AliLego();
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;
Float_t fTotRadl;
Float_t fTotAbso;
Float_t fTotGcm2;
TH2F *fHistRadl;
TH2F *fHistAbso;
TH2F *fHistGcm2;
TH2F *fHistReta;
TH2F *fRZR;
TH2F *fRZA;
TH2F *fRZG;
TClonesArray *fVolumesFwd;
TClonesArray *fVolumesBwd;
Int_t fStepBack;
Int_t fStepsBackward;
Int_t fStepsForward;
Int_t fErrorCondition;
Int_t fDebug;
Bool_t fStopped;
ClassDef(AliLego,1)
};
#endif