source: trunk/MagicSoft/Mars/mcalib/MCalibrationQECam.h@ 4862

Last change on this file since 4862 was 4858, checked in by gaug, 21 years ago
*** empty log message ***
File size: 2.7 KB
Line 
1#ifndef MARS_MCalibrationQECam
2#define MARS_MCalibrationQECam
3
4#ifndef MARS_MCalibrationCam
5#include "MCalibrationCam.h"
6#endif
7
8#ifndef ROOT_TArrayC
9#include "TArrayC.h"
10#endif
11
12class MCalibrationQECam : public MCalibrationCam
13{
14private:
15
16 static const Float_t gkPlexiglassQE ; //! Quantum Efficiency Plexiglass (now set to: 0.96)
17 static const Float_t gkPlexiglassQEErr; //! Uncertainty QE Plexiglass (now set to: 0.01)
18
19 TArrayC fFlags; // Contains validity bits
20
21 enum { kBlindPixelMethodValid, kFFactorMethodValid,
22 kPINDiodeMethodValid, kCombinedMethodValid }; // Possible validity bits
23
24protected:
25
26 TArrayF fCorningBlues; //! Corning blues of the pixels (if available)
27 TArrayF fCorningReds; //! Corning reds of the pixels (if available)
28
29public:
30
31 MCalibrationQECam(const char *name=NULL, const char *title=NULL);
32 ~MCalibrationQECam() {}
33
34 void Clear( Option_t *o="" );
35 void Copy ( TObject& object ) const;
36
37 // Others
38 void DrawPixelContent( Int_t num ) const;
39 Bool_t GetPixelContent ( Double_t &val, Int_t idx, const MGeomCam &cam, Int_t type=0 ) const;
40
41 Float_t GetPlexiglassQE () const { return gkPlexiglassQE; }
42 Float_t GetPlexiglassQERelVar () const;
43
44 const TArrayF &GetCorningBlues () const { return fCorningBlues; }
45 const TArrayF &GetCorningReds () const { return fCorningReds; }
46
47 Bool_t IsBlindPixelMethodValid () const;
48 Bool_t IsFFactorMethodValid () const;
49 Bool_t IsCombinedMethodValid () const;
50 Bool_t IsPINDiodeMethodValid () const;
51
52 Bool_t IsBlindPixelMethodValid ( MCalibrationCam::PulserColor_t col ) const;
53 Bool_t IsFFactorMethodValid ( MCalibrationCam::PulserColor_t col ) const;
54 Bool_t IsCombinedMethodValid ( MCalibrationCam::PulserColor_t col ) const;
55 Bool_t IsPINDiodeMethodValid ( MCalibrationCam::PulserColor_t col ) const;
56
57 // Prints
58 void Print(Option_t *o="") const;
59
60 // Setters (without color only for MC!)
61 void SetBlindPixelMethodValid ( const Bool_t b=kTRUE );
62 void SetBlindPixelMethodValid ( const Bool_t b, MCalibrationCam::PulserColor_t col);
63 void SetCombinedMethodValid ( const Bool_t b=kTRUE );
64 void SetCombinedMethodValid ( const Bool_t b, MCalibrationCam::PulserColor_t col);
65 void SetFFactorMethodValid ( const Bool_t b=kTRUE );
66 void SetFFactorMethodValid ( const Bool_t b, MCalibrationCam::PulserColor_t col);
67 void SetPINDiodeMethodValid ( const Bool_t b=kTRUE );
68 void SetPINDiodeMethodValid ( const Bool_t b, MCalibrationCam::PulserColor_t col);
69
70 ClassDef(MCalibrationQECam, 1) // Container Quantum Efficieny Calibration Results Camera
71};
72
73#endif
74
75
76
77
78
Note: See TracBrowser for help on using the repository browser.