source: branches/MarsISDCBranchBasedOn17887/mtemp/mifae/library/MPSFFitCalc.h@ 17997

Last change on this file since 17997 was 3947, checked in by rico, 21 years ago
*** empty log message ***
File size: 2.2 KB
Line 
1/////////////////////////////////////////////////////////////////////////////
2// //
3// MPSFFitCalc //
4// //
5// //
6/////////////////////////////////////////////////////////////////////////////
7#ifndef MARS_MPSFFitCalc
8#define MARS_MPSFFitCalc
9
10#ifndef MARS_MTask
11#include "MTask.h"
12#endif
13
14#ifndef ROOT_TArrayD
15#include <TArrayD.h>
16#endif
17#ifndef ROOT_TArrayI
18#include <TArrayI.h>
19#endif
20#ifndef ROOT_TArrayS
21#include <TArrayS.h>
22#endif
23
24class TSring;
25class TH1D;
26
27class MGeomCam;
28#ifndef MARS_MCameraDC
29#include "MCameraDC.h"
30#endif
31#ifndef MARS_MPSFFit
32#include "MPSFFit.h"
33#endif
34
35class MPSFFitCalc : public MTask
36{
37
38private:
39
40 MGeomCam *fGeomCam;
41 MCameraDC *fCamera;
42 MPSFFit *fFit;
43
44 MPSFFit fTotalMeanFit;
45 UInt_t fNumTotalMeanFits;
46
47 TH1D *fPedestalDCHist;
48 Float_t fPedestalDC;
49
50 TString *fVname;
51 TArrayD fVinit;
52 TArrayD fStep;
53 TArrayD fLimlo;
54 TArrayD fLimup;
55 TArrayI fFix;
56 TObject *fObjectFit;
57 TString fMethod;
58 Bool_t fNulloutput;
59
60 Float_t fMaxDC;
61 UShort_t fImgCleanMode;
62 UShort_t fNumRings;
63 Float_t fPedLevel;
64 TArrayS fBlindPixels;
65
66 void RingImgClean();
67 void RmsImgClean(Float_t pedestal);
68 void MaskImgClean(TArrayS blindpixels);
69
70 void InitFitVariables();
71
72 Int_t PreProcess(MParList *pList);
73 Int_t Process();
74 Int_t PostProcess();
75
76public:
77
78 enum ImgCleanMode_t{kNone=0,kRing,kRms,kMask,kCombined};
79 static const ImgCleanMode_t kDefault = kRing;
80
81 MPSFFitCalc(ImgCleanMode_t imgmode=kDefault, const char *name=NULL, const char *title=NULL);
82 ~MPSFFitCalc();
83
84 void SetImgCleanMode(ImgCleanMode_t imgmode=kDefault){ fImgCleanMode=imgmode;};
85 void SetNumRings(UShort_t numRings) {fNumRings=numRings;}
86 void SetPedLevel(Float_t pedestal) {fPedLevel=pedestal;}
87 void SetBlindPixels(TArrayS blindpixels) {fBlindPixels=blindpixels;}
88
89
90 ClassDef(MPSFFitCalc, 0) // Task that fits the PSF using the dc readout of the camera.
91};
92
93#endif
Note: See TracBrowser for help on using the repository browser.