source: branches/MarsMoreSimulationTruth/manalysisct1/MCT1PadONOFF.h@ 19503

Last change on this file since 19503 was 4457, checked in by tbretz, 20 years ago
*** empty log message ***
File size: 3.1 KB
Line 
1#ifndef MARS_MCT1PadONOFF
2#define MARS_MCT1PadONOFF
3
4#ifndef MARS_MTask
5#include "MTask.h"
6#endif
7
8#ifndef MARS_MH
9#include "MH.h"
10#endif
11
12class TH1D;
13class TH2D;
14class TH3D;
15
16class MGeomCam;
17class MCerPhotEvt;
18class MPedPhotCam;
19class MMcEvt;
20class MSigmabar;
21class MParList;
22class MBlindPixels;
23class MRead;
24class MFilterList;
25
26
27class MCT1PadONOFF : public MTask
28{
29private:
30 MGeomCam *fCam;
31 MCerPhotEvt *fEvt;
32 MSigmabar *fSigmabar;
33 MMcEvt *fMcEvt;
34 MPedPhotCam *fPed;
35 MBlindPixels *fBlinds;
36
37 TString fType; // type of data to be padded
38 TFile *fInfile; // input file containing padding histograms
39
40 Int_t fPadFlag;
41 Int_t fIter;
42
43 Int_t fErrors[9];
44 Int_t fWarnings[2];
45
46
47 // plots used for the padding
48 TH2D *fHBlindPixIdTheta; // 2D-histogram (blind pixel Id vs. Theta)
49 TH2D *fHBlindPixNTheta; // 2D-histogram (no.of blind pixels vs. Theta)
50
51 TH2D *fHSigmaTheta; // 2D-histogram (sigmabar vs. Theta)
52 TH2D *fHSigmaThetaON; // 2D-histogram (sigmabar vs. Theta)
53 TH2D *fHSigmaThetaOFF; // 2D-histogram (sigmabar vs. Theta)
54
55 TH3D *fHSigmaPixTheta; // 3D-histogram (Theta, pixel, sigma)
56 TH3D *fHSigmaPixThetaON; // 3D-histogram (Theta, pixel, sigma)
57 TH3D *fHSigmaPixThetaOFF; // 3D-histogram (Theta, pixel, sigma)
58
59 TH3D *fHDiffPixTheta; // 3D-histogram (Theta, pixel, sigma^2-sigmabar^2)
60 TH3D *fHDiffPixThetaON; // 3D-histogram (Theta, pixel, sigma^2-sigmabar^2)
61 TH3D *fHDiffPixThetaOFF; // 3D-histogram (Theta, pixel, sigma^2-sigmabar^2)
62
63 TH3D *fHgON; // matrix (Theta, sigbarold, sigbarnew) for ON data
64 TH3D *fHgOFF; // matrix (Theta, sigbarold, sigbarnew) for OFF data
65
66 // plots for checking the padding
67 TH2D *fHSigmaPedestal; // 2D-histogram : pedestal sigma after
68 // versus before padding
69 TH2D *fHPhotons; // 2D-histogram : no.of photons after
70 // versus before padding
71 TH1D *fHNSB; // 1D-histogram : additional NSB
72
73
74public:
75 MCT1PadONOFF(const char *name=NULL, const char *title=NULL);
76 ~MCT1PadONOFF();
77
78 Bool_t MergeHistograms(TH2D *sigthon, TH2D *sigthoff,
79 TH3D *sigpixthon, TH3D *sigpixthoff,
80 TH3D *diffpixthon, TH3D *diffpixthoff,
81 TH2D *blindidthon, TH2D *blindidthoff,
82 TH2D *blindnthon, TH2D *blindnthoff);
83
84 Bool_t ReadTargetDist(const char *filein);
85 Bool_t WriteTargetDist(const char *fileout);
86
87 void SetDataType(const char *type); // type of data to be padded
88
89 Int_t PreProcess(MParList *pList);
90 Int_t Process();
91 Int_t PostProcess();
92
93 void SetPadFlag(Int_t padflag);
94
95 ClassDef(MCT1PadONOFF, 0) // task for the ON-OFF padding
96};
97
98#endif
99
100
101
102
103
104
Note: See TracBrowser for help on using the repository browser.