source: trunk/MagicSoft/Mars/mfileio/MReadReports.h@ 3966

Last change on this file since 3966 was 3497, checked in by tbretz, 21 years ago
*** empty log message ***
File size: 1.5 KB
Line 
1#ifndef MARS_MReadReports
2#define MARS_MReadReports
3
4#ifndef MARS_MRead
5#include "MRead.h"
6#endif
7
8#ifndef ROOT_TArrayL
9#include <TArrayL.h>
10#endif
11
12class TChain;
13class MTime;
14class MTaskList;
15
16class MReadReports : public MRead
17{
18private:
19 MTaskList *fTrees; // Hold the trees which are scheduled for reading
20 TList *fChains; // Hold TChains to read the times in advance
21
22 TArrayL fPosEntry; // Store the position in each tree/chain
23 TArrayL fPosTree; // Number of Tree in file.
24
25 MTask *fList; // pointer to the task list to set the stream id
26
27 Bool_t fEnableAutoScheme;
28
29 MTime** GetTime(TChain *c) const;
30 Int_t FindNextTime();
31
32 UInt_t GetEntries() { return 0; }
33
34 Int_t PreProcess(MParList *plist);
35 Int_t Process();
36 Int_t PostProcess();
37
38 //Bool_t Notify();
39
40 enum {
41 //MReadTree::kChainWasChanged = BIT(14)
42 kHasMaster = BIT(15)
43 };
44
45public:
46 MReadReports();
47 ~MReadReports();
48
49 void AddTree(const char *tree, const char *time=NULL, Bool_t master=kFALSE);
50 void AddTree(const char *tree, Bool_t master)
51 {
52 AddTree(tree, NULL, master);
53 }
54 Int_t AddFile(const char *fname, Int_t entries=-1);
55 void AddToBranchList(const char *name);
56
57 void PrintStatistics(const Int_t lvl=0, Bool_t title=kFALSE, Double_t time=0) const;
58
59 void EnableAutoScheme(Bool_t e=kTRUE) { fEnableAutoScheme = e; } // Must be called BEFORE AddTree!
60
61 ClassDef(MReadReports, 0) // Reads events and reports from a root file ordered in time
62};
63
64#endif
Note: See TracBrowser for help on using the repository browser.