source: trunk/MagicSoft/Mars/msignal/MExtractSignal.h@ 9029

Last change on this file since 9029 was 7804, checked in by tbretz, 18 years ago
*** empty log message ***
File size: 2.0 KB
Line 
1#ifndef MARS_MExtractSignal
2#define MARS_MExtractSignal
3
4/////////////////////////////////////////////////////////////////////////////
5// //
6// MExtractSignal //
7// //
8// Integrates the time slices of the all pixels of a calibration event //
9// and substract the pedestal value //
10// //
11/////////////////////////////////////////////////////////////////////////////
12
13#ifndef MARS_MTask
14#include "MTask.h"
15#endif
16
17class MRawEvtData;
18class MRawRunHeader;
19
20class MPedestalCam;
21class MExtractedSignalCam;
22
23class MExtractSignal : public MTask
24{
25private:
26 static const Byte_t fgSaturationLimit;
27 static const Byte_t fgFirst;
28 static const Byte_t fgLast;
29
30 MPedestalCam *fPedestals; // Pedestals of all pixels in the camera
31 MExtractedSignalCam *fSignals; // Extracted signal of all pixels in the camera
32
33 MRawEvtData *fRawEvt; // raw event data (time slices)
34 MRawRunHeader *fRunHeader; // RunHeader information
35
36 Byte_t fHiGainFirst;
37 Byte_t fLoGainFirst;
38
39 Byte_t fNumHiGainSamples;
40 Byte_t fNumLoGainSamples;
41
42 Float_t fSqrtHiGainSamples;
43 Float_t fSqrtLoGainSamples;
44
45 Byte_t fSaturationLimit;
46
47 void FindSignal(Byte_t *ptr, Int_t size, Int_t &sum, Byte_t &sat) const;
48
49 Int_t PreProcess(MParList *pList);
50 Int_t Process();
51
52 void StreamPrimitive(ostream &out) const;
53
54public:
55 MExtractSignal(const char *name=NULL, const char *title=NULL);
56
57 void SetRange(Byte_t hifirst=fgFirst, Byte_t hilast=fgLast, Byte_t lofirst=fgFirst, Byte_t lolast=fgLast);
58 void SetSaturationLimit(Byte_t lim) { fSaturationLimit = lim; }
59
60 ClassDef(MExtractSignal, 0) // Task to fill the Extracted Signal Containers from raw data
61};
62
63#endif
Note: See TracBrowser for help on using the repository browser.