X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=EVGEN%2FAliGenReaderTreeK.h;h=5404698789be944392c5a28977cae95fa1c4c1da;hb=05ab8725f5754fedffa67167f951339c77466588;hp=29f3df06a2e31546c1c3df530ab62979795350c8;hpb=67dffb2f94a8031ab189938531ac38d0aa8f0b85;p=u%2Fmrichter%2FAliRoot.git diff --git a/EVGEN/AliGenReaderTreeK.h b/EVGEN/AliGenReaderTreeK.h index 29f3df06a2e..5404698789b 100644 --- a/EVGEN/AliGenReaderTreeK.h +++ b/EVGEN/AliGenReaderTreeK.h @@ -1,39 +1,62 @@ -#ifndef ALIGENREADERTreeK_H +#ifndef ALIGENREADERTREEK_H #define ALIGENREADERTREEK_H /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ /* $Id$ */ - +// +// Realisation of AliGenReader to be used with AliGenExtFile +// It reads events from a kinematics TreeK. +// Author: andreas.morsch@cern.ch +// #include "AliGenReader.h" + class TFile; +class AliRunLoader; class AliStack; -class AliHeader; - +class TString; +class TObjArray; class AliGenReaderTreeK : public AliGenReader { public: AliGenReaderTreeK(); - - AliGenReaderTreeK(const AliGenReaderTreeK &reader){;} - virtual ~AliGenReaderTreeK(){;} + AliGenReaderTreeK(const AliGenReaderTreeK &reader); + virtual ~AliGenReaderTreeK(); // Initialise virtual void Init(); // Read virtual Int_t NextEvent(); virtual TParticle* NextParticle(); - AliGenReaderTreeK & operator=(const AliGenReader & rhs){return *this;} + virtual void RewindEvent(); + virtual void SetFirstEvent(Int_t evt) {fNcurrent = evt;}; + virtual void SetOnlyPrimaries(Bool_t flag) {fOnlyPrimaries = flag;} + AliGenReaderTreeK & operator=(const AliGenReaderTreeK & rhs); + void SetDirs(TObjArray* dirs){fDirs = dirs;} //sets array directories names + void AddDir(const char* dirname); + AliRunLoader * GetRunLoader() const {return fInRunLoader;} + protected: Int_t fNcurrent; // points to the next entry Int_t fNparticle; // Next particle in list Int_t fNp; // number of particles - TFile *fFile; //! pointer to file + AliRunLoader *fInRunLoader; //!Run Loader of the input event TFile *fBaseFile; //! pointer to base file AliStack *fStack; //! Particle stack - AliHeader *fHeader; //! Pointer to event header + Bool_t fOnlyPrimaries; // Flag indicating wether only primaries are read + TObjArray *fDirs; //arry with directories to read data from + Int_t fCurrentDir; //Number of current directory + static const TString fgkEventFolderName;//!name of folder where event to read is mounted + + TString& GetDirName(Int_t entry); + TParticle* GetParticle(Int_t i); + private: + void Copy(TObject&) const; ClassDef(AliGenReaderTreeK,1) // Read particles from TreeK }; + + + #endif