class TBrowser;
class TList;
class TTree;
+class TBranch;
class TGeometry;
class TDatabasePDG;
class TRandom;
AliDetector *GetDetector(const char *name) const;
AliMCQA *GetMCQA() const {return fMCQA;}
Int_t GetModuleID(const char *name) const;
+ virtual const char *GetBaseFile() const
+ {return fBaseFileName.Data();}
virtual Int_t GetEvent(Int_t event);
virtual void SetEvent(Int_t event) {fEvent=event;}
virtual void SetConfigFunction(const char * config="Config();");
Float_t &e, Float_t *vpos, Float_t *polar,
Float_t &tof);
Int_t GetNtrack() const {return fNtrack;}
- virtual Int_t GetPrimary(Int_t track) const;
- virtual void Hits2Digits(const char *detector=0);
- virtual void Hits2SDigits(const char *detector=0);
- virtual void SDigits2Digits(const char *detector=0);
+ virtual Int_t GetPrimary(Int_t track);
+ virtual void Hits2Digits(const char *detector=0);
+ virtual void Hits2SDigits(const char *detector=0) {Tree2Tree("S",detector);}
+ virtual void SDigits2Digits(const char *detector=0) {Tree2Tree("D",detector);}
+ virtual void Digits2Reco(const char *detector=0) {Tree2Tree("R",detector);}
+ virtual void Tree2Tree(Option_t *option, const char *detector=0);
virtual void InitMC(const char *setup="Config.C");
virtual void Init(const char *setup="Config.C") {InitMC(setup);}
Bool_t IsFolder() const {return kTRUE;}
virtual AliLego* Lego() const {return fLego;}
virtual void MakeTree(Option_t *option="KH", char *file = 0);
- virtual void MakeBranchInTree(TTree *tree, const char* cname, void* address, Int_t size=32000, char *file=0);
- virtual void MakeBranchInTree(TTree *tree, const char* cname, const char* name, void* address, Int_t size=32000, Int_t splitlevel=1, char *file=0);
+ virtual TBranch* MakeBranchInTree(TTree *tree, const char* cname, void* address, Int_t size=32000, char *file=0);
+ virtual TBranch* MakeBranchInTree(TTree *tree, const char* cname, const char* name, void* address, Int_t size=32000, Int_t splitlevel=1, char *file=0);
TObjArray *Particles() {return fParticleMap;};
TParticle *Particle(Int_t i);
virtual void ResetPoints();
virtual void SetTransPar(char *filename="$(ALICE_ROOT)/data/galice.cuts");
virtual void SetBaseFile(char *filename="galice.root");
- virtual void OpenBaseFile(const char *option);
virtual void ReadTransPar();
virtual void ResetStack() {fCurrent=-1;fHgwmk=fNtrack=fLoadPoint=0;fParticles->Clear();}
virtual void RunMC(Int_t nevent=1, const char *setup="Config.C");
Int_t nc2=60,Float_t c2min=0,Float_t c2max=360,Float_t rmin=0,
Float_t rmax=430,Float_t zmax=10000, AliLegoGenerator* gener=NULL);
virtual Bool_t IsLegoRun() const {return (fLego!=0);}
+ virtual void RunReco(const char *detector=0);
virtual void SetCurrentTrack(Int_t track);
virtual void SetDebug(const Int_t level=1) {fDebug = level;}
virtual void SetDisplay(AliDisplay *display) {fDisplay = display;}
TString fBaseFileName; // Name of the base root file
TParticle *fParticleBuffer; //! Pointer to current particle for writing
TObjArray *fParticleMap; //! Map of particles in the supporting TClonesArray
- TArrayI fParticleFileMap; // Map of particles in the file
+ TArrayI& fParticleFileMap; //! Map of particles in the file
private:
- AliRun(const AliRun &) {}
- AliRun& operator = (const AliRun &) {return *this;}
+ AliRun(const AliRun &right)
+ : fParticleFileMap(right.fParticleFileMap) {}
+ AliRun& operator = (const AliRun &right)
+ { fParticleFileMap= right.fParticleFileMap; return *this; }
ClassDef(AliRun,4) //Supervisor class for all Alice detectors
};