source: trunk/MagicSoft/Mars/mhcalib/MHCalibrationChargeBlindCam.h@ 4986

Last change on this file since 4986 was 4986, checked in by gaug, 20 years ago
*** empty log message ***
File size: 2.3 KB
Line 
1#ifndef MARS_MHCalibrationChargeBlindCam
2#define MARS_MHCalibrationChargeBlindCam
3
4#ifndef MARS_MHCalibrationCam
5#include "MHCalibrationCam.h"
6#endif
7
8class MRawEvtData;
9class MCalibrationBlindPix;
10class MHCalibrationChargeBlindPix;
11class MHCalibrationChargeBlindCam : public MHCalibrationCam
12{
13private:
14
15 static const Int_t fgNbins; //! Default for fNBins new style blind pixel (now set to: 128 )
16 static const Axis_t fgFirst; //! Default for fFirst new style blind pixel (now set to: - 0.5 )
17 static const Axis_t fgLast; //! Default for fLast new style blind pixel (now set to: 511.5 )
18
19 static const Axis_t fgSPheCut; //! Default for fSinglePheCut new style blind pixel (now set to: 20)
20
21 static const TString gsHistName; //! Default Histogram names
22 static const TString gsHistTitle; //! Default Histogram titles
23 static const TString gsHistXTitle; //! Default Histogram x-axis titles
24 static const TString gsHistYTitle; //! Default Histogram y-axis titles
25
26 Axis_t fSPheCut; // Signal value upon which event considered as single-phe
27
28 MRawEvtData *fRawEvt; //! Raw event data
29
30public:
31
32 enum FitFunc_t { kEPoisson4, kEPoisson5,
33 kEPoisson6, kEPoisson7,
34 kEPolya, kEMichele }; // Possible fit functions types (see MHCalibrationChargeBlindPix)
35
36 static const FitFunc_t fgFitFunc = kEPoisson4; //! Default for fFitFunc
37
38private:
39
40 FitFunc_t fFitFunc; // The actual fit function type
41
42 Bool_t SetupHists (const MParList *pList );
43 Bool_t ReInitHists ( MParList *pList );
44 Bool_t FillHists (const MParContainer *par, const Stat_t w=1 );
45 Bool_t FinalizeHists();
46
47 void FitBlindPixel( MHCalibrationChargeBlindPix &hist, MCalibrationBlindPix &pix);
48
49 Int_t ReadEnv ( const TEnv &env, TString prefix, Bool_t print);
50
51public:
52
53 MHCalibrationChargeBlindCam(const char *name=NULL, const char *title=NULL);
54
55 // Clone
56 TObject *Clone(const char *name="") const;
57
58 // Draw
59 void Draw(Option_t *opt="");
60 void SetFitFunc( const FitFunc_t func=fgFitFunc) { fFitFunc = func; }
61 void SetSPheCut( const Axis_t a=fgSPheCut ) { fSPheCut = a; }
62
63 ClassDef(MHCalibrationChargeBlindCam, 1) // Histogram class for Blind Pixel Calibration
64};
65
66#endif
67
68
69
70
71
72
73
74
75
Note: See TracBrowser for help on using the repository browser.