source: branches/Mars_MC/msignal/MArrivalTimePix.h@ 17054

Last change on this file since 17054 was 7876, checked in by tbretz, 18 years ago
*** empty log message ***
File size: 2.5 KB
Line 
1#ifndef MARS_MArrivalTimePix
2#define MARS_MArrivalTimePix
3
4#ifndef MARS_MParContainer
5#include "MParContainer.h"
6#endif
7
8class MArrivalTimePix : public MParContainer
9{
10private:
11 Float_t fArrivalTimeHiGain; // mean value of the ArrivalTime
12 Float_t fArrivalTimeHiGainError; // error of the mean value of the ArrivalTime
13 Float_t fArrivalTimeLoGain; // mean value of the ArrivalTime
14 Float_t fArrivalTimeLoGainError; // error of the mean value of the ArrivalTime
15
16 Byte_t fNumHiGainSaturated; // Number of first hi-gain slice which has saturated (could be negative if already the first slice saturates)
17 Byte_t fNumLoGainSaturated; // Number of first lo-gain slices which have saturated
18
19public:
20 MArrivalTimePix(const char* name=NULL, const char* title=NULL);
21
22 void Clear(Option_t *o="");
23 void Print(Option_t *o="") const;
24 void Copy(TObject &obj) const
25 {
26 MArrivalTimePix &pix = static_cast<MArrivalTimePix&>(obj);
27
28 pix.fArrivalTimeHiGain = fArrivalTimeHiGain;
29 pix.fArrivalTimeHiGainError = fArrivalTimeHiGainError;
30 pix.fArrivalTimeLoGain = fArrivalTimeLoGain;
31 pix.fArrivalTimeLoGainError = fArrivalTimeLoGainError;
32
33 pix.fNumHiGainSaturated = fNumHiGainSaturated;
34 pix.fNumLoGainSaturated = fNumLoGainSaturated;
35 }
36
37 // Setter
38 void SetArrivalTime(Float_t sig, Float_t sigerr);
39 void SetArrivalTime(Float_t sighi, Float_t sighierr,Float_t siglo, Float_t sigloerr);
40 void SetGainSaturation(Byte_t higain, Byte_t logain);
41
42 // Getter
43 Float_t GetArrivalTimeHiGain() const { return fArrivalTimeHiGain; }
44 Float_t GetArrivalTimeHiGainError() const { return fArrivalTimeHiGainError; }
45
46 Float_t GetArrivalTimeLoGain() const { return fArrivalTimeLoGain; }
47 Float_t GetArrivalTimeLoGainError() const { return fArrivalTimeLoGainError; }
48
49 Float_t GetArrivalTime() const;
50 Bool_t IsArrivalTimeValid() const;
51
52 Byte_t GetNumHiGainSaturated() const { return fNumHiGainSaturated; }
53 Byte_t GetNumLoGainSaturated() const { return fNumLoGainSaturated; }
54
55 Bool_t IsHiGainSaturated() const { return fNumHiGainSaturated>0; }
56 Bool_t IsLoGainSaturated() const { return fNumLoGainSaturated>0; }
57
58 Bool_t IsLoGainValid() const { return fArrivalTimeLoGainError>=0; }
59 Bool_t IsHiGainValid() const { return fArrivalTimeHiGainError>=0; }
60
61 ClassDef(MArrivalTimePix, 1) // Storage Container for ArrivalTime information of one pixel
62};
63
64#endif
Note: See TracBrowser for help on using the repository browser.