source: trunk/MagicSoft/Mars/mpedestal/MPedestalCam.h@ 4005

Last change on this file since 4005 was 3803, checked in by tbretz, 21 years ago
*** empty log message ***
File size: 2.2 KB
Line 
1#ifndef MARS_MPedestalCam
2#define MARS_MPedestalCam
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 MGeomCam;
14class MPedestalPix;
15
16class MPedestalCam : public MParContainer, public MCamEvent
17{
18private:
19
20 TClonesArray *fArray; //-> FIXME: Change TClonesArray away from a pointer?
21 TClonesArray *fAverageAreas; //-> Array of MPedestalPix, one per pixel area
22 TClonesArray *fAverageSectors; //-> Array of MPedestalPix, one per camera sector
23
24 UInt_t fTotalEntries; // Total number of times, the Process was executed (to estimate the error of pedestal)
25
26public:
27
28 MPedestalCam(const char *name=NULL, const char *title=NULL);
29 ~MPedestalCam();
30
31 void Clear(Option_t *o="");
32
33 // Getters
34 MPedestalPix &GetAverageArea ( UInt_t i );
35 const MPedestalPix &GetAverageArea ( UInt_t i ) const;
36 const Int_t GetAverageAreas () const;
37 MPedestalPix &GetAverageSector ( UInt_t i );
38 const MPedestalPix &GetAverageSector ( UInt_t i ) const;
39 const Int_t GetAverageSectors() const;
40 Float_t GetPedestalMin ( const MGeomCam *cam ) const;
41 Float_t GetPedestalMax ( const MGeomCam *cam ) const;
42 Int_t GetSize () const;
43 ULong_t GetTotalEntries () const { return fTotalEntries; }
44
45 MPedestalPix &operator[] ( Int_t i );
46 const MPedestalPix &operator[] ( Int_t i ) const;
47
48 void Init ( const MGeomCam &geom);
49 void InitSize ( const UInt_t i );
50 void InitAverageAreas ( const UInt_t i );
51 void InitAverageSectors ( const UInt_t i );
52
53 void Print(Option_t *o="") const;
54
55 // Setters
56 void SetTotalEntries(const ULong_t n) { fTotalEntries = n; }
57
58 Bool_t GetPixelContent(Double_t &val, Int_t idx, const MGeomCam &cam, Int_t type=0) const;
59 void DrawPixelContent(Int_t idx) const;
60
61 ClassDef(MPedestalCam, 1) // Storage Container for all pedestal information of the camera
62};
63
64#endif
Note: See TracBrowser for help on using the repository browser.