source: trunk/MagicSoft/Mars/mraw/MRawFileRead.h@ 8970

Last change on this file since 8970 was 7579, checked in by tbretz, 19 years ago
*** empty log message ***
File size: 1.3 KB
Line 
1#ifndef MARS_MRawFileRead
2#define MARS_MRawFileRead
3
4#ifndef MARS_MRawRead
5#include "MRawRead.h"
6#endif
7
8class TList;
9class MZlib;
10class MTaskList;
11
12class MRawFileRead : public MRawRead
13{
14private:
15 TList *fFileNames; // list of file names
16 UInt_t fNumFile; //! number of next file
17 UInt_t fNumEvents; //! input stream (file to read from)
18 UInt_t fNumTotalEvents; //! total number of events in all files
19
20 MZlib *fIn; //! input stream (file to read from)
21
22 MParList *fParList; //! tasklist to call ReInit from
23
24 UInt_t fInterleave;
25
26 Bool_t fForce;
27
28 Int_t OpenNextFile(Bool_t print=kTRUE);
29 Bool_t CalcNumTotalEvents();
30
31 Int_t PreProcess(MParList *pList);
32 Int_t Process();
33 Int_t PostProcess();
34
35public:
36 MRawFileRead(const char *filename=NULL, const char *name=NULL, const char *title=NULL);
37 ~MRawFileRead();
38
39 static Byte_t IsFileValid(const char *name);
40
41 void SetInterleave(UInt_t i) { fInterleave = i; }
42 void SetForce(Bool_t b=kTRUE) { fForce=b; }
43
44 TString GetFullFileName() const;
45
46 Int_t AddFile(const char *fname, Int_t entries=-1);
47 Bool_t Rewind();
48 UInt_t GetEntries() { return fNumTotalEvents/fInterleave; }
49
50 ClassDef(MRawFileRead, 0) // Task to read the raw data binary file
51};
52
53#endif
Note: See TracBrowser for help on using the repository browser.