source: trunk/MagicSoft/Mars/mcalib/MCalibrationPix.h@ 3642

Last change on this file since 3642 was 3635, checked in by gaug, 21 years ago
*** empty log message ***
File size: 4.7 KB
Line 
1#ifndef MARS_MCalibrationPix
2#define MARS_MCalibrationPix
3
4#ifndef MARS_MParContainer
5#include "MParContainer.h"
6#endif
7
8class MBadPixelsPix;
9class MCalibrationPix : public MParContainer
10{
11protected:
12
13 Int_t fPixId; // the pixel Id
14
15 UInt_t fFlags; // Flag for the set bits
16
17 Float_t fHiGainMean; // The mean reduced charge after the fit
18 Float_t fHiGainMeanVar; // The error of reduced mean charge after the fit
19 Float_t fHiGainSigma; // The sigma of the mean charge after the fit
20 Float_t fHiGainSigmaVar; // The error of the sigma of the mean charge after the fit
21 Float_t fHiGainProb; // The probability of the fit function
22 Float_t fHiGainNumPickup; // The number of pickup events in the high-gain
23
24 Float_t fLoGainMean; // The mean reduced charge after the fit
25 Float_t fLoGainMeanVar; // The error of reduced mean charge after the fit
26 Float_t fLoGainSigma; // The sigma of the mean charge after the fit
27 Float_t fLoGainSigmaVar; // The error of the sigma of the mean charge after the fit
28 Float_t fLoGainProb; // The probability of the fit function
29 Float_t fLoGainNumPickup; // The number of pickup events in the low-gain
30
31 enum { kHiGainSaturation, kExcluded };
32
33public:
34
35 MCalibrationPix(const char *name=NULL, const char *title=NULL);
36 ~MCalibrationPix() {}
37
38 virtual void Clear(Option_t *o="");
39
40 // Setter
41 void SetPixId( const Int_t i ) { fPixId = i; }
42
43 void SetHiGainMean ( const Float_t f ) { fHiGainMean = f; }
44 void SetHiGainMeanErr ( const Float_t f ) { fHiGainMeanVar = f*f; }
45 void SetHiGainProb ( const Float_t f ) { fHiGainProb = f; }
46 void SetHiGainSigma ( const Float_t f ) { fHiGainSigma = f; }
47 void SetHiGainSigmaErr ( const Float_t f ) { fHiGainSigmaVar = f*f; }
48 void SetHiGainNumPickup ( const Float_t f ) { fHiGainNumPickup = f; }
49
50 void SetLoGainMean ( const Float_t f ) { fLoGainMean = f; }
51 void SetLoGainMeanErr ( const Float_t f ) { fLoGainMeanVar = f*f; }
52 void SetLoGainProb ( const Float_t f ) { fLoGainProb = f; }
53 void SetLoGainSigma ( const Float_t f ) { fLoGainSigma = f; }
54 void SetLoGainSigmaErr ( const Float_t f ) { fLoGainSigmaVar = f*f; }
55 void SetLoGainNumPickup ( const Float_t f ) { fLoGainNumPickup = f; }
56
57 void SetMean ( const Float_t f ) { IsHiGainSaturation() ? fLoGainMean = f : fHiGainMean = f ; }
58 void SetMeanErr ( const Float_t f ) { IsHiGainSaturation() ? fLoGainMeanVar = f*f : fHiGainMeanVar = f*f ; }
59 void SetProb ( const Float_t f ) { IsHiGainSaturation() ? fLoGainProb = f : fHiGainProb = f ; }
60 void SetSigma ( const Float_t f ) { IsHiGainSaturation() ? fLoGainSigma = f : fHiGainSigma = f ; }
61 void SetSigmaErr ( const Float_t f ) { IsHiGainSaturation() ? fLoGainSigmaVar = f*f : fHiGainSigmaVar = f*f; }
62 void SetNumPickup ( const Float_t f ) { IsHiGainSaturation() ? fLoGainNumPickup = f : fHiGainNumPickup = f ; }
63
64 void SetHiGainSaturation( const Bool_t b = kTRUE );
65 void SetExcluded ( const Bool_t b = kTRUE );
66
67 // Getters
68 Float_t GetHiGainMean () const { return fHiGainMean ; }
69 Float_t GetHiGainMeanErr () const;
70 Float_t GetHiGainProb () const { return fHiGainProb ; }
71 Float_t GetHiGainSigma () const { return fHiGainSigma ; }
72 Float_t GetHiGainSigmaErr () const;
73 Float_t GetHiGainNumPickup() const { return fHiGainNumPickup; }
74
75 virtual Float_t GetLoGainMean () const { return fLoGainMean ; }
76 virtual Float_t GetLoGainMeanErr () const;
77 virtual Float_t GetLoGainProb () const { return fLoGainProb ; }
78 virtual Float_t GetLoGainSigma () const { return fLoGainSigma ; }
79 virtual Float_t GetLoGainSigmaErr () const;
80 virtual Float_t GetLoGainNumPickup() const { return fLoGainNumPickup; }
81
82 Float_t GetMean () const { return IsHiGainSaturation() ? GetLoGainMean() : GetHiGainMean() ; }
83 Float_t GetMeanErr () const { return IsHiGainSaturation() ? GetLoGainMeanErr() : GetHiGainMeanErr() ; }
84 Float_t GetProb () const { return IsHiGainSaturation() ? GetLoGainProb() : GetHiGainProb() ; }
85 Float_t GetSigma () const { return IsHiGainSaturation() ? GetLoGainSigma() : GetHiGainSigma() ; }
86 Float_t GetSigmaErr () const { return IsHiGainSaturation() ? GetLoGainSigmaErr() : GetHiGainSigmaErr() ; }
87 Float_t GetNumPickup () const { return IsHiGainSaturation() ? GetLoGainNumPickup() : GetHiGainNumPickup(); }
88
89 Int_t GetPixId () const { return fPixId ; }
90
91 Bool_t IsExcluded() const;
92 Bool_t IsHiGainSaturation() const;
93
94 ClassDef(MCalibrationPix, 1) // Container for Calibration of one pixel
95};
96
97#endif
98
Note: See TracBrowser for help on using the repository browser.