source: trunk/MagicSoft/Mars/mhcalib/MHPedestalCam.h@ 9350

Last change on this file since 9350 was 6792, checked in by gaug, 20 years ago
*** empty log message ***
File size: 3.1 KB
Line 
1#ifndef MARS_MHPedestalCam
2#define MARS_MHPedestalCam
3
4#ifndef MARS_MHCalibrationCam
5#include "MHCalibrationCam.h"
6#endif
7
8#ifndef MARS_MArrayD
9#include "MArrayD.h"
10#endif
11
12class MGeomCam;
13class MPedestalCam;
14class MHPedestalCam : public MHCalibrationCam
15{
16
17private:
18
19 static const Int_t fgNbins; //! Default number of bins (now set to: 100 )
20 static const Axis_t fgFirst; //! Default lower histogram limit (now set to: -50. )
21 static const Axis_t fgLast; //! Default upper histogram limit (now set to: 50. )
22
23 static const TString gsHistName; //! Default Histogram names
24 static const TString gsHistTitle; //! Default Histogram titles
25 static const TString gsHistXTitle; //! Default Histogram x-axis titles
26 static const TString gsHistYTitle; //! Default Histogram y-axis titles
27
28 static const TString fgNamePedestalCam; //! "MPedestalCam"
29
30 TString fNamePedestalCamOut; // Name of the 'MPedestalCam' container with results
31
32 ULong_t fNumEvents; // Number of processed events
33
34 Float_t fExtractHiGainSlices; // Number of FADC slices used for high gain signal extraction
35 Float_t fExtractLoGainSlices; // Number of FADC slices used for low gain signal extraction
36
37 MPedestalCam *fPedestalsOut; //! Pedestal Cam with results
38
39 Bool_t fRenorm; // Flag if the results will be re-normalized
40
41 Axis_t fFitStart; // Charge value to start the fitting procedure
42
43 MArrayD fSum; //! sum of values
44 MArrayD fSumSquare; //! sum of squared values
45 MArrayD fAreaSum; //! averaged sum of values per area idx
46 MArrayD fAreaSumSquare; //! averaged sum of squared values per area idx
47 MArrayI fAreaNum; //! number of valid pixel with area idx
48 MArrayI fSectorNum; //! number of valid pixel with sector idx
49 MArrayD fSectorSum; //! averaged sum of values per sector
50 MArrayD fSectorSumSquare; //! averaged sum of squared values per sector
51
52 Bool_t ReInitHists(MParList *pList);
53 Bool_t FillHists(const MParContainer *par, const Stat_t w=1);
54 Bool_t FinalizeHists();
55
56 void InitHiGainArrays( const Int_t npix, const Int_t nareas, const Int_t nsectors );
57
58 void RenormResults();
59 void FitHists();
60
61public:
62
63 MHPedestalCam(const char *name=NULL, const char *title=NULL);
64
65 // Clone
66 TObject *Clone(const char *name="") const;
67
68 Bool_t GetPixelContent(Double_t &val, Int_t idx, const MGeomCam &cam, Int_t type=0) const;
69 void DrawPixelContent(Int_t idx) const;
70
71 void ResetHists();
72
73 void SetFitStart ( const Axis_t a=-0.5 ) { fFitStart = a; }
74 void SetNamePedestalCamOut( const char *name ) { fNamePedestalCamOut = name; }
75 void SetPedestalsOut ( MPedestalCam *cam ) { fPedestalsOut = cam; }
76 void SetRenorm ( const Bool_t b=kTRUE ) { fRenorm = b; }
77
78 ClassDef(MHPedestalCam, 1) // Histogram class for Charge Camera Pedestals
79};
80
81#endif
82
Note: See TracBrowser for help on using the repository browser.