Line data Source code
1 : #ifndef ALIGENREADERTREEK_H
2 : #define ALIGENREADERTREEK_H
3 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 : /* $Id$ */
7 : //
8 : // Realisation of AliGenReader to be used with AliGenExtFile
9 : // It reads events from a kinematics TreeK.
10 : // Author: andreas.morsch@cern.ch
11 : //
12 : #include "AliGenReader.h"
13 :
14 : class TFile;
15 : class AliRunLoader;
16 : class AliStack;
17 : class TString;
18 : class TObjArray;
19 :
20 : class AliGenReaderTreeK : public AliGenReader
21 : {
22 : public:
23 : AliGenReaderTreeK();
24 : AliGenReaderTreeK(const AliGenReaderTreeK &reader);
25 : virtual ~AliGenReaderTreeK();
26 : // Initialise
27 : virtual void Init();
28 : // Read
29 : virtual Int_t NextEvent();
30 : virtual TParticle* NextParticle();
31 : virtual void RewindEvent();
32 0 : virtual void SetFirstEvent(Int_t evt) {fNcurrent = evt;};
33 0 : virtual void SetOnlyPrimaries(Bool_t flag) {fOnlyPrimaries = flag;}
34 : AliGenReaderTreeK & operator=(const AliGenReaderTreeK & rhs);
35 0 : void SetDirs(TObjArray* dirs){fDirs = dirs;} //sets array directories names
36 : void AddDir(const char* dirname);
37 0 : AliRunLoader * GetRunLoader() const {return fInRunLoader;}
38 :
39 : protected:
40 : Int_t fNcurrent; // points to the next entry
41 : Int_t fNparticle; // Next particle in list
42 : Int_t fNp; // number of particles
43 : AliRunLoader *fInRunLoader; //!Run Loader of the input event
44 : TFile *fBaseFile; //! pointer to base file
45 : AliStack *fStack; //! Particle stack
46 : Bool_t fOnlyPrimaries; // Flag indicating wether only primaries are read
47 : TObjArray *fDirs; //arry with directories to read data from
48 : Int_t fCurrentDir; //Number of current directory
49 : static const TString fgkEventFolderName;//!name of folder where event to read is mounted
50 :
51 : TString& GetDirName(Int_t entry);
52 : TParticle* GetParticle(Int_t i);
53 : private:
54 : void Copy(TObject&) const;
55 6 : ClassDef(AliGenReaderTreeK,1) // Read particles from TreeK
56 : };
57 :
58 :
59 :
60 : #endif
61 :
62 :
63 :
64 :
65 :
66 :
|