]>
Commit | Line | Data |
---|---|---|
e6f0d8f7 | 1 | // $Header$ |
2 | ||
3 | #ifndef REVE_Event_H | |
4 | #define REVE_Event_H | |
5 | ||
6 | #include <Reve/EventBase.h> | |
7 | ||
8 | #include <TDirectory.h> | |
9 | #include <map> | |
10 | ||
11 | #include <TTree.h> | |
12 | #include <TFolder.h> | |
13 | class TBrowser; | |
14 | ||
15 | namespace Reve { | |
16 | ||
17 | class VSD; | |
18 | ||
19 | class EvTree : public TTree | |
20 | { | |
21 | public: | |
22 | TFolder fFolder; | |
23 | ||
265ecb21 | 24 | EvTree() : TTree(), fFolder() {} |
e6f0d8f7 | 25 | EvTree(const char* name, const char* title, Int_t splitlevel = 99) : |
26 | TTree(name, title, splitlevel), fFolder("Folder", "Additional event data") {} | |
27 | virtual ~EvTree() {} | |
28 | ||
29 | virtual void Browse(TBrowser* b); | |
30 | ||
31 | ClassDef(EvTree, 1); | |
32 | }; | |
33 | ||
34 | class VSDEvent : public EventBase | |
35 | { | |
265ecb21 | 36 | VSDEvent(const VSDEvent&); // Not implemented |
37 | VSDEvent& operator=(const VSDEvent&); // Not implemented | |
38 | ||
e6f0d8f7 | 39 | protected: |
40 | Int_t fRun; | |
41 | Int_t fEvent; | |
42 | TString fUrl; | |
43 | ||
44 | std::map<TString, TString> fTags; | |
45 | ||
46 | TDirectory* fDirectory; //! | |
47 | ||
48 | VSD* fCreator; //! | |
49 | VSD* fSelector; //! | |
50 | ||
51 | public: | |
52 | VSDEvent(); | |
53 | VSDEvent(Int_t run, Int_t evt, const TString& url="."); | |
54 | VSDEvent(const TString& url); | |
55 | // Static ctors | |
56 | static VSDEvent* OpenDirectory(const TString& dir_name); | |
57 | static VSDEvent* OpenDirectory(TDirectory* dir); | |
58 | ||
59 | TDirectory* GetDirectory() { return fDirectory; } | |
60 | void SetDirectory(TDirectory* dir); | |
61 | TDirectory* MakeDirectory(const Text_t* name, const Text_t* title=""); | |
62 | ||
63 | TObject* Get(const Text_t* obj_name) { return fDirectory->Get(obj_name); } | |
64 | ||
65 | virtual void Print(Option_t* opt="") const; | |
66 | ||
67 | static const TString sVSDHeaderName; | |
68 | ||
69 | ClassDef(VSDEvent, 1); | |
70 | }; // endclass VSDEvent | |
71 | ||
72 | } | |
73 | ||
74 | #endif |