source: trunk/MagicSoft/Mars/mcalib/MCalibrationCam.h@ 3678

Last change on this file since 3678 was 3678, checked in by gaug, 20 years ago
*** empty log message ***
File size: 2.6 KB
Line 
1#ifndef MARS_MCalibrationCam
2#define MARS_MCalibrationCam
3
4#ifndef MARS_MParContainer
5#include "MParContainer.h"
6#endif
7#ifndef MARS_MCamEvent
8#include "MCamEvent.h"
9#endif
10
11class TClonesArray;
12
13class MCalibrationPix;
14class MBadPixelsPix;
15class MBadPixelsCam;
16class MGeomCam;
17
18class MCalibrationCam : public MParContainer, public MCamEvent
19{
20
21public:
22
23 enum PulserColor_t { kCT1=0, kGREEN=1, kBLUE=2, kUV=3 }; // Possible Pulser colours
24 static const Int_t gkNumPulserColors; // Number of Pulser colours (now set to: 4)
25
26protected:
27
28 PulserColor_t fPulserColor; // Colour of the pulsed LEDs
29
30 TClonesArray *fPixels; //-> Array of MCalibrationPix, one per pixel
31 TClonesArray *fAverageAreas; //-> Array of MCalibrationPix, one per pixel area
32 TClonesArray *fAverageSectors; //-> Array of MCalibrationPix, one per camera sector
33 TClonesArray *fAverageBadAreas; //-> Array of MBadPixelsPix, one per pixel area
34 TClonesArray *fAverageBadSectors; //-> Array of MBadPixelsPix, one per camera sector
35
36public:
37
38 MCalibrationCam(const char *name=NULL, const char *title=NULL);
39 ~MCalibrationCam();
40
41 virtual void Clear ( Option_t *o="" );
42
43 void Init ( const MGeomCam &geom );
44 void InitSize ( const UInt_t i );
45 void InitAverageAreas ( const UInt_t i );
46 void InitAverageSectors ( const UInt_t i );
47
48 void SetPulserColor ( const PulserColor_t col=kCT1) { fPulserColor = col; }
49
50 // Getters
51 Int_t GetSize() const;
52 Int_t GetAverageAreas() const;
53 Int_t GetAverageSectors() const;
54
55 MCalibrationPix &GetAverageArea ( UInt_t i );
56 const MCalibrationPix &GetAverageArea ( UInt_t i ) const;
57 MBadPixelsPix &GetAverageBadArea ( UInt_t i );
58 const MBadPixelsPix &GetAverageBadArea ( UInt_t i ) const;
59 MBadPixelsPix &GetAverageBadSector ( UInt_t i );
60 const MBadPixelsPix &GetAverageBadSector ( UInt_t i ) const;
61 MCalibrationPix &GetAverageSector ( UInt_t i );
62 const MCalibrationPix &GetAverageSector ( UInt_t i ) const;
63 MCalibrationPix &operator[] ( UInt_t i );
64 const MCalibrationPix &operator[] ( UInt_t i ) const;
65
66 const PulserColor_t GetPulserColor() const { return fPulserColor; }
67
68 virtual Bool_t GetPixelContent(Double_t &val, Int_t idx, const MGeomCam &cam, Int_t type=0) const;
69 virtual void DrawPixelContent(Int_t num) const;
70
71 ClassDef(MCalibrationCam, 1) // Base class Container for Calibration Results Camera
72};
73
74#endif
Note: See TracBrowser for help on using the repository browser.