1 | #ifndef MARS_MHCalibrationPix
|
---|
2 | #define MARS_MHCalibrationPix
|
---|
3 |
|
---|
4 | #ifndef MARS_MHGausEvents
|
---|
5 | #include "MHGausEvents.h"
|
---|
6 | #endif
|
---|
7 |
|
---|
8 | class MHCalibrationPix : public MHGausEvents
|
---|
9 | {
|
---|
10 | private:
|
---|
11 |
|
---|
12 | const static Float_t fgBlackoutLimit; //! Default for fBlackoutLimit (now set to: 5. )
|
---|
13 | const static Float_t fgPickupLimit; //! Default for fPickupLimit (now set to: 5. )
|
---|
14 |
|
---|
15 | protected:
|
---|
16 |
|
---|
17 | Float_t fEventFrequency; // Event frequency in Hertz (to be set)
|
---|
18 |
|
---|
19 | Float_t *CreateEventXaxis(Int_t n); // Create an x-axis for the Event TGraphs
|
---|
20 | Float_t *CreatePSDXaxis (Int_t n); // Create an x-axis for the PSD TGraphs
|
---|
21 |
|
---|
22 | Float_t fBlackoutLimit; // Lower nr sigmas from mean until event is considered blackout
|
---|
23 | Int_t fSaturated; // Number of events classified as saturated
|
---|
24 | Float_t fPickupLimit; // Upper nr sigmas from mean until event is considered pickup
|
---|
25 | Int_t fPixId; // Pixel ID
|
---|
26 |
|
---|
27 | public:
|
---|
28 |
|
---|
29 | MHCalibrationPix(const char* name=NULL, const char* title=NULL);
|
---|
30 | ~MHCalibrationPix() {}
|
---|
31 |
|
---|
32 | void Clear(Option_t *o="");
|
---|
33 |
|
---|
34 | // TObject *Clone(const char* name="") const;
|
---|
35 |
|
---|
36 | void CreateGraphEvents(); // Create the TGraph fGraphEvents of fEvents
|
---|
37 | void CreateGraphPowerSpectrum(); // Create the TGraph fGraphPowerSpectrum out of fPowerSpectrum
|
---|
38 |
|
---|
39 | // Getters
|
---|
40 | const Double_t GetBlackout () const;
|
---|
41 | const Float_t GetEventFrequency () const { return fEventFrequency; }
|
---|
42 | const Double_t GetPickup () const;
|
---|
43 | const Int_t GetPixId () const { return fPixId; }
|
---|
44 | const Float_t GetSaturated () const { return fSaturated; }
|
---|
45 |
|
---|
46 | // Fits
|
---|
47 | Bool_t RepeatFit(const Option_t *option="RQ0"); // Repeat fit within limits defined by fPickupLimit
|
---|
48 | void BypassFit(); // Take mean and RMS from the histogram
|
---|
49 |
|
---|
50 | // Setters
|
---|
51 | void AddSaturated ( const Int_t i ) { fSaturated += i; }
|
---|
52 | void SetBlackoutLimit ( const Float_t lim=fgBlackoutLimit ) { fBlackoutLimit = lim; }
|
---|
53 | void SetEventFrequency ( const Float_t f ) { fEventFrequency = f; }
|
---|
54 | void SetPickupLimit ( const Float_t lim=fgPickupLimit ) { fPickupLimit = lim; }
|
---|
55 | void SetPixId ( const Int_t i ) { fPixId = i; }
|
---|
56 |
|
---|
57 | // Miscelleaneous
|
---|
58 | virtual void ChangeHistId(const Int_t id); // Changes names and titles of the histogram
|
---|
59 | virtual void Renorm(); // Re-normalize the results
|
---|
60 |
|
---|
61 | ClassDef(MHCalibrationPix, 1) // Base class for calibration events
|
---|
62 | };
|
---|
63 |
|
---|
64 | #endif
|
---|