| 1 | #ifndef MARS_MPadSchweizer
|
|---|
| 2 | #define MARS_MPadSchweizer
|
|---|
| 3 |
|
|---|
| 4 | #ifndef MARS_MTask
|
|---|
| 5 | #include "MTask.h"
|
|---|
| 6 | #endif
|
|---|
| 7 |
|
|---|
| 8 | #ifndef MARS_MH
|
|---|
| 9 | #include "MH.h"
|
|---|
| 10 | #endif
|
|---|
| 11 |
|
|---|
| 12 | #include "TRandom3.h"
|
|---|
| 13 | #include "TH1.h"
|
|---|
| 14 | #include "TH2.h"
|
|---|
| 15 | #include "TH3.h"
|
|---|
| 16 | #include "TProfile.h"
|
|---|
| 17 |
|
|---|
| 18 |
|
|---|
| 19 | class MGeomCam;
|
|---|
| 20 | class MCerPhotEvt;
|
|---|
| 21 | class MPedestalCam;
|
|---|
| 22 | class MMcEvt;
|
|---|
| 23 | class MPedestalCam;
|
|---|
| 24 | class MSigmabar;
|
|---|
| 25 | class MParList;
|
|---|
| 26 |
|
|---|
| 27 | class MPadSchweizer : public MTask
|
|---|
| 28 | {
|
|---|
| 29 | private:
|
|---|
| 30 | MGeomCam *fCam;
|
|---|
| 31 | MCerPhotEvt *fEvt;
|
|---|
| 32 | MSigmabar *fSigmabar;
|
|---|
| 33 | MMcEvt *fMcEvt;
|
|---|
| 34 | MPedestalCam *fPed;
|
|---|
| 35 |
|
|---|
| 36 | TRandom3 *fRnd;
|
|---|
| 37 |
|
|---|
| 38 | Int_t fPadFlag;
|
|---|
| 39 | Int_t fRunType;
|
|---|
| 40 | Int_t fGroup;
|
|---|
| 41 |
|
|---|
| 42 | // plots used for the padding
|
|---|
| 43 | TH2D *fHSigmaTheta; // 2D-histogram (sigmabar vs. Theta)
|
|---|
| 44 | TH3D *fHSigmaPixTheta; // 3D-histogram (Theta, pixel, sigma)
|
|---|
| 45 | TH3D *fHDiffPixTheta; // 3D-histogram (Theta, pixel, sigma^2-sigmabar^2)
|
|---|
| 46 |
|
|---|
| 47 | // plots for checking the padding
|
|---|
| 48 | TH2D *fHSigmaPedestal; // 2D-histogram : pedestal sigma after
|
|---|
| 49 | // versus before padding
|
|---|
| 50 | TH2D *fHPhotons; // 2D-histogram : no.of photons after
|
|---|
| 51 | // versus before padding
|
|---|
| 52 | TH2D *fHSigbarTheta; // 2D-histogram : sigmabar vs. Theta
|
|---|
| 53 | // (after padding)
|
|---|
| 54 | TH1D *fHNSB; // 1D-histogram : additional NSB
|
|---|
| 55 |
|
|---|
| 56 | TH3D *fHSigPixTh; // 3D : Theta, pixel, pedestal sigma
|
|---|
| 57 | // (after padding)
|
|---|
| 58 | TH3D *fHDiffPixTh; // 3D : Theta, pixel, sigma^2-sigmabar^2
|
|---|
| 59 | // (after padding)
|
|---|
| 60 |
|
|---|
| 61 |
|
|---|
| 62 | public:
|
|---|
| 63 | MPadSchweizer(const char *name, const char *title,
|
|---|
| 64 | TH2D *fHist2, TH3D *fHist3, TH3D *fHist3Diff);
|
|---|
| 65 | ~MPadSchweizer();
|
|---|
| 66 |
|
|---|
| 67 | Bool_t PreProcess(MParList *pList);
|
|---|
| 68 | Bool_t Process();
|
|---|
| 69 | Bool_t PostProcess();
|
|---|
| 70 |
|
|---|
| 71 | void SetPadFlag(Int_t padflag);
|
|---|
| 72 | void SetRunType(Int_t runtype) { fRunType = runtype; }
|
|---|
| 73 | void SetGroup(Int_t group) { fGroup = group; }
|
|---|
| 74 |
|
|---|
| 75 | ClassDef(MPadSchweizer, 1) // task for the padding (Schweizer)
|
|---|
| 76 | };
|
|---|
| 77 |
|
|---|
| 78 | #endif
|
|---|
| 79 |
|
|---|
| 80 |
|
|---|
| 81 |
|
|---|
| 82 |
|
|---|
| 83 |
|
|---|
| 84 |
|
|---|
| 85 |
|
|---|
| 86 |
|
|---|
| 87 |
|
|---|