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

Last change on this file since 5138 was 4895, checked in by tbretz, 20 years ago
*** empty log message ***
File size: 1.4 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 Bool_t fEnableAutoScheme;
26
27 MTime** GetTime(TChain *c) const;
28 Int_t FindNextTime();
29
30 UInt_t GetEntries();
31 TString GetFileName() const;
32
33 Int_t PreProcess(MParList *plist);
34 Int_t Process();
35 Int_t PostProcess();
36
37 enum {
38 kHasMaster = BIT(14)
39 };
40
41public:
42 MReadReports();
43 ~MReadReports();
44
45 void AddTree(const char *tree, const char *time=NULL, Bool_t master=kFALSE);
46 void AddTree(const char *tree, Bool_t master)
47 {
48 AddTree(tree, NULL, master);
49 }
50 Int_t AddFile(const char *fname, Int_t entries=-1);
51 void AddToBranchList(const char *name);
52
53 void PrintStatistics(const Int_t lvl=0, Bool_t title=kFALSE, Double_t time=0) const;
54
55 void EnableAutoScheme(Bool_t e=kTRUE) { fEnableAutoScheme = e; } // Must be called BEFORE AddTree!
56
57 ClassDef(MReadReports, 0) // Reads events and reports from a root file ordered in time
58};
59
60#endif
Note: See TracBrowser for help on using the repository browser.