]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EVE/Alieve/EventAlieve.h
Includes required by ROOT head
[u/mrichter/AliRoot.git] / EVE / Alieve / EventAlieve.h
CommitLineData
5a5a1232 1// $Header$
2
3#ifndef ALIEVE_Event_H
4#define ALIEVE_Event_H
5
7ca4655f 6#include <TList.h>
7
6f0b0040 8#include <Reve/EventBase.h>
5a5a1232 9
10class AliRunLoader;
11class AliESD;
3aecaefc 12class AliESDfriend;
5a5a1232 13
14class TFile;
15class TTree;
16
17namespace Alieve {
18
6f0b0040 19class Event : public Reve::EventBase
5a5a1232 20{
21private:
265ecb21 22 Event(const Event&); // Not implemented
23 Event& operator=(const Event&); // Not implemented
5a5a1232 24
25protected:
26 TString fPath;
27 Int_t fEventId;
28
29 AliRunLoader* fRunLoader;
30
31 TFile* fESDFile;
32 TTree* fESDTree;
33 AliESD* fESD;
3aecaefc 34 AliESDfriend* fESDfriend;
2cea771a 35 Bool_t fESDfriendExists;
5a5a1232 36
90fa773e 37 TList fNewEventCommands;
38
5a5a1232 39 static Bool_t fgUseRunLoader;
40 static Bool_t fgUseESDTree;
753fdd1e 41 static Bool_t fgAvoidExcOnOpen;
5a5a1232 42
43public:
753fdd1e 44 static void Initialize(Bool_t use_runloader=kTRUE, Bool_t use_esd=kTRUE,
45 Bool_t avoid_exc_on_open=kTRUE);
5a5a1232 46
47 Event();
48 Event(TString path, Int_t ev=0);
49
50 void Open();
1eaa5849 51 void GotoEvent(Int_t event);
52 void NextEvent() { GotoEvent(fEventId + 1); }
53 void PrevEvent() { GotoEvent(fEventId - 1); }
5a5a1232 54 void Close();
55
90fa773e 56 virtual void AfterNewEventLoaded();
57
58 TList& GetNewEventCommands() { return fNewEventCommands; }
59 void AddNewEventCommand(const Text_t* cmd);
60
5a5a1232 61 Int_t GetEventId() const { return fEventId; }
62 AliRunLoader* GetRunLoader() const { return fRunLoader; }
63 TTree* GetESDTree() const { return fESDTree; }
64 AliESD* GetESD() const { return fESD; }
2cea771a 65 AliESDfriend* GetESDfriend() const { return fESDfriend; }
66 Bool_t GetESDfriendExists() const { return fESDfriendExists; }
67 virtual const Text_t* GetTitle() const { return fPath.Data(); }
5a5a1232 68
69 static AliRunLoader* AssertRunLoader();
70 static AliESD* AssertESD();
3aecaefc 71 static AliESDfriend* AssertESDfriend();
5a5a1232 72
73 ClassDef(Event, 1);
74}; // endclass Event
75
76extern Event* gEvent;
77
78}
79
80#endif