source: trunk/MagicSoft/Mars/msignal/MArrivalTimeCalc2.h@ 7842

Last change on this file since 7842 was 3306, checked in by hbartko, 21 years ago
*** empty log message ***
File size: 1.7 KB
Line 
1#ifndef MARS_MArrivalTimeCalc2
2#define MARS_MArrivalTimeCalc2
3
4#ifndef MARS_MTask
5#include "MTask.h"
6#endif
7
8class MRawEvtData;
9class MRawRunHeader;
10
11class MPedestalCam;
12class MArrivalTimeCam;
13
14class MArrivalTimeCalc2 : public MTask
15{
16private:
17 static const Byte_t fgSaturationLimit;
18 static const Byte_t fgFirst;
19 static const Byte_t fgLast;
20 static const Byte_t fgWindowSize;
21
22 MPedestalCam *fPedestals; // Pedestals of all pixels in the camera
23
24 MRawEvtData *fRawEvt; // raw event data (time slices)
25 MRawRunHeader *fRunHeader; // RunHeader information
26
27
28 MArrivalTimeCam *fArrivalTime; // Arrival Time of FADC sample
29
30
31 Byte_t fHiGainFirst; // First hi gain to be used
32 Byte_t fLoGainFirst; // First lo gain to be used
33
34 Byte_t fNumHiGainSamples; // Number of hi gain to be used
35 Byte_t fNumLoGainSamples; // Number of lo gain to be used
36
37 Byte_t fWindowSize; // Number of gains in window
38 Float_t fWindowSizeSqrt; // Sqaure root of number of gains in window
39
40 Byte_t fSaturationLimit;
41
42 void FindSignalTime(Byte_t *ptr, Byte_t size, Float_t &time, Float_t &deltatime, Int_t &sat, Float_t pedes, Float_t pedrms) const;
43
44 Int_t PreProcess(MParList *pList);
45 Int_t Process();
46
47public:
48 MArrivalTimeCalc2(const char *name=NULL, const char *title=NULL);
49
50 void SetRange(Byte_t hifirst=fgFirst, Byte_t hilast=fgLast, Byte_t lofirst=fgFirst, Byte_t lolast=fgLast, Byte_t windowsize=fgWindowSize);
51 void SetSaturationLimit(Byte_t lim) { fSaturationLimit = lim; }
52
53 ClassDef(MArrivalTimeCalc2, 0) // Calculates the arrival time as the mean time of the fWindowSize time slices
54};
55
56#endif
57
58
Note: See TracBrowser for help on using the repository browser.