// that read next event in queue.
//
// The others are:
-// Bool_t ReadsRec() const; specifies if reader is able to read simulated particles
-// Bool_t ReadsSim() const; specifies if reader is able to read reconstructed tracks
+// Bool_t ReadsSim() const; specifies if reader is able to read simulated particles
+// Bool_t ReadsRec() const; specifies if reader is able to read reconstructed tracks
// void Rewind(); rewind reading to the beginning
//
// This class provides full functionality for reading from many sources
#include <TNamed.h>
#include <TObjArray.h>
+class TGliteXmlEventlist;
+
class AliAODRun;
class AliAOD;
class AliAODParticleCut;
virtual AliAOD* GetEventRec(Int_t n);//returns event number n
virtual AliAOD* GetEventSim(Int_t n);
+ virtual Int_t Read(const char * name) {return TObject::Read(name);}
virtual Int_t Read(AliAODRun* particles, AliAODRun *tracks);//Reads all available evenets and stores them in 'particles' and 'tracks'
virtual Int_t GetNumberOfRecEvents();//Returns number of available events -> usually conncected with reading all events
//may be time consuming
virtual Int_t GetNumberOfSimEvents();//
-
+
+ void SetEventList(TGliteXmlEventlist* evl){fEventList = evl;}
+
void SetDirs(TObjArray* dirs){fDirs = dirs;} //sets array directories names
void SetEventBuffering(Bool_t flag){fBufferEvents = flag;}//switches on/off buffering - read data are kept in local buffer
void SetBlend(Bool_t flag = kTRUE){fBlend=flag;} //set blending - randomizing particle order
protected:
+ TGliteXmlEventlist* fEventList;//Event list delivered by GLite/AliEn
+
TObjArray* fCuts;//array with particle cuts
TObjArray* fDirs;//arry with directories to read data from
TH1I* fTrackCounter; //histogram with number of tracks read
virtual Int_t ReadNext() = 0; //this methods reads next event and put result in fTracksEvent and/or fParticlesEvent
- Bool_t Pass(AliVAODParticle* p);//Checks if a given particle agains cuts
- Bool_t Pass(Int_t pid);//Checks if a given pid passes cuts
+ Bool_t Rejected(AliVAODParticle* p);//Checks if a given particle agains cuts
+ Bool_t Rejected(Int_t pid);//Checks if a given pid passes cuts
void Blend();//Mixes current events in a symmetric way so after mixing thy are consistent
- TString& GetDirName(Int_t entry);
+ TString GetDirName(Int_t entry);
private: