source: tags/Mars-V2.1.1/mjobs/MJMerpp.h

Last change on this file was 9020, checked in by tbretz, 16 years ago
*** empty log message ***
File size: 1.9 KB
Line 
1#ifndef MARS_MJMerpp
2#define MARS_MJMerpp
3
4#ifndef MARS_MJob
5#include "MJob.h"
6#endif
7
8class MReportFileReadCC;
9class MWriteRootFile;
10class MFilter;
11class MRawFileRead;
12
13class MJMerpp : public MJob
14{
15 // Merpp general
16 Byte_t fCompression;
17 Bool_t fUpdate;
18
19 // Setup Raw
20 Bool_t fInterleave;
21 Bool_t fForceProcessing;
22
23 // Setup Reports
24 Short_t fTelescope;
25
26 UInt_t fHeaderRun;
27 UInt_t fHeaderFile;
28
29 UInt_t fReportRun;
30 Int_t fReportFile;
31
32 TString fOnly;
33
34 // Setup reports, currents
35 MTime fTimeStart;
36 MTime fTimeStop;
37
38 Bool_t fAutoStartTime;
39 Bool_t fAutoStopTime;
40
41private:
42 void AddTree(MReportFileReadCC &read, const TString &rep, const TString &only) const;
43
44 MFilter *SetupCurrents(MReportFileReadCC &read, MWriteRootFile &write) const;
45 MFilter *SetupReports(MReportFileReadCC &read, MWriteRootFile &write) const;
46
47 void SetupRaw(MRawFileRead &read, MWriteRootFile &write) const;
48
49 Bool_t GetTimeFromFile();
50 Bool_t CheckFilePermissions();
51
52public:
53 MJMerpp(const char *name=0, const char *title=0);
54
55 void SetCompression(Byte_t comp) { fCompression=comp; }
56 void SetUpdate(Bool_t upd) { fUpdate=upd; }
57 void SetInterleave(Bool_t il) { fInterleave=il; }
58 void SetForceProcessing(Bool_t fp) { fForceProcessing=fp; }
59 void SetOnly(const char *tree) { fOnly=tree; }
60 void SetConstrainHeader(Short_t tel, Int_t run, Int_t file)
61 { fTelescope=tel; fHeaderRun=run; fHeaderFile=file; }
62 void SetConstrainRunRep(UInt_t run, Int_t file)
63 { fReportRun=run; fReportFile=file; }
64 void SetTime(const MTime &start, const MTime &stop)
65 { fTimeStart=start; fTimeStop=stop; }
66 void SetAutoTime(Bool_t start, Bool_t stop)
67 { fAutoStartTime=start; fAutoStopTime=stop; }
68
69 Int_t Process();
70 Int_t ProcessSeq(TString fname);
71
72 ClassDef(MJMerpp, 0) // Merging and preprocessing
73};
74
75#endif
Note: See TracBrowser for help on using the repository browser.