source: trunk/MagicSoft/Mars/mjobs/MJCut.h@ 7492

Last change on this file since 7492 was 7413, checked in by tbretz, 19 years ago
*** empty log message ***
File size: 2.4 KB
Line 
1#ifndef MARS_MJCut
2#define MARS_MJCut
3
4#ifndef MARS_MJob
5#include "MJob.h"
6#endif
7
8class MTask;
9class MDataSet;
10class MParList;
11class MHAlpha;
12class MH;
13class MWriteRootFile;
14
15class MJCut : public MJob
16{
17private:
18 Bool_t fStoreSummary;
19 Bool_t fStoreResult;
20 Bool_t fWriteOnly;
21 Bool_t fIsWobble;
22 Bool_t fIsMonteCarlo;
23 Bool_t fFullDisplay;
24 //Bool_t fSubstraction;
25
26 TString fNameSummary;
27 TString fNameResult;
28 TString fNameOutput;
29
30 TString fNameHist;
31 TString fNameHistFS;
32
33 //MTask *fEstimateEnergy;
34 MTask *fCalcHadronness;
35 MTask *fCalcDisp;
36
37 TString GetOutputFile(UInt_t num) const;
38 Bool_t CheckEnvLocal();
39 void SetupWriter(MWriteRootFile *write, const char *name) const;
40 Bool_t WriteTasks(UInt_t num, TObjArray &cont) const;
41 Bool_t WriteResult(const MParList &plist, UInt_t num) const;
42 MHAlpha *CreateNewHist(MParList &plist, const char *name="") const;
43 MH *CreateNewHistFS(MParList &plist, const char *name="") const;
44
45 Bool_t CanStoreSummary() const { return !fPathOut.IsNull() && fStoreSummary; }
46 Bool_t CanStoreResult() const { return !fPathOut.IsNull() && fStoreResult; }
47
48public:
49 MJCut(const char *name=NULL, const char *title=NULL);
50 ~MJCut();
51
52 Bool_t Process(const MDataSet &set);
53
54 void EnableStorageOfSummary(Bool_t b=kTRUE) { fStoreSummary = b; } // See SetNameSummary
55 void EnableStorageOfResult(Bool_t b=kTRUE) { fStoreResult = b; } // See SetNameResult
56 void EnableWriteOnly(Bool_t b=kTRUE) { fWriteOnly = b; }
57 void EnableWobbleMode(Bool_t b=kTRUE) { fIsWobble = b; }
58 void EnableMonteCarloMode(Bool_t b=kTRUE) { fIsMonteCarlo = b; }
59 void EnableFullDisplay(Bool_t b=kTRUE) { fFullDisplay = b; }
60 //void EnableSubstraction(Bool_t b=kTRUE) { fSubstraction = b; }
61
62 void SetNameSummaryFile(const char *name="");
63 void SetNameResultFile(const char *name="");
64 void SetNameOutFile(const char *name="") { fNameOutput=name; }
65
66 void SetNameHist(const char *name) { fNameHist=name; }
67 void SetNameHistFS(const char *name) { fNameHistFS=name; }
68
69 //void SetEnergyEstimator(const MTask *task=0);
70 void SetHadronnessCalculator(const MTask *task=0);
71 void SetDispCalculator(const MTask *task=0);
72
73 ClassDef(MJCut, 0) // Standard program to perform g/h-separation cuts
74};
75
76#endif
Note: See TracBrowser for help on using the repository browser.