Line data Source code
1 : #ifndef ALIT0RECOPARAM_H
2 : #define ALIT0RECOPARAM_H
3 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 : ///////////////////////////////////////////////////////////////////////////////
7 : // //
8 : // Class with T0 reconstruction parameters //
9 : // //
10 : ///////////////////////////////////////////////////////////////////////////////
11 :
12 :
13 : #include "AliDetectorRecoParam.h"
14 :
15 : class AliT0RecoParam : public AliDetectorRecoParam
16 : {
17 : public:
18 : AliT0RecoParam();
19 : AliT0RecoParam(const AliT0RecoParam &p); //copy constructor
20 : AliT0RecoParam& operator=(const AliT0RecoParam &p);
21 : virtual ~AliT0RecoParam();
22 :
23 : static AliT0RecoParam *GetLowFluxParam(); // make reco parameters for low flux env
24 : static AliT0RecoParam *GetHighFluxParam(); // make reco parameters for high flux env
25 : static AliT0RecoParam *GetLaserTestParam(); // special setting for laser SetLaserTestParam
26 : //for monitoring
27 : // static AliT0RecoParam *GetHistRange(); // limit of monitoring histograms
28 :
29 : //old staff
30 0 : Float_t GetRefAmp() const {return fRefAmp;}
31 0 : void SetRefAmp(Float_t amp) { fRefAmp = amp;}
32 : //now number of bad channel
33 0 : Int_t GetRefPoint() const {return fRefPoint;}
34 0 : void SetRefPoint(Int_t ref) {fRefPoint = ref;}
35 :
36 : //now low and high limit for multi-bunch recontruction
37 448 : Float_t GetLow(Int_t numhist) const {return fLow[numhist];}
38 : // Float_t GetLow() {return *fLow;}
39 0 : void SetLow(Int_t numhist, Float_t low) {fLow[numhist] = low;}
40 :
41 0 : Float_t GetHigh(Int_t numhist) const {return fHigh[numhist];}
42 : // Float_t GetHigh() {return *fHigh;}
43 0 : void SetHigh(Int_t numhist, Float_t high) {fHigh[numhist] = high;}
44 0 : Float_t GetLatencyL1() const {return fLatencyL1;}
45 0 : void SetLatencyL1(Float_t lat) {fLatencyL1 = lat;}
46 0 : Float_t GetLatencyL1A() const {return fLatencyL1A;}
47 0 : void SetLatencyL1A(Float_t lat) {fLatencyL1A = lat;}
48 0 : Float_t GetLatencyL1C() const {return fLatencyL1C;}
49 0 : void SetLatencyL1C(Float_t lat) {fLatencyL1C = lat;}
50 0 : Float_t GetLatencyHPTDC() const {return fLatencyHPTDC;}
51 0 : void SetLatencyHPTDC(Float_t lat) {fLatencyHPTDC = lat;}
52 0 : Float_t GetVertexShift() const {return fVertexShift;}
53 0 : void SetVertexShift(Float_t sh) {fVertexShift = sh;}
54 8 : Int_t GetCorridor() const {return Int_t (fLow[300]); }
55 0 : void SetCorridor(Int_t cor) { fLow[300] = Float_t(cor);}
56 :
57 : //new staff
58 384 : Int_t GetBadChannels(Int_t i) const {return fBadChannels[i];}
59 0 : void SetBadChannels(Int_t i, Int_t value) {fBadChannels[i] = value;}
60 16 : Float_t GetAmpLowThreshold() const {return fLow[200];}
61 16 : Float_t GetAmpHighThreshold() const {return fHigh[200];}
62 :
63 : void SetSatelliteThresholds(Float_t low, Float_t high)
64 0 : {fSatelliteThresholds[0]=low; fSatelliteThresholds[1]=high;}
65 32 : Float_t GetLowSatelliteThreshold() const {return fSatelliteThresholds[0];}
66 32 : Float_t GetHighSatelliteThreshold() const {return fSatelliteThresholds[1];}
67 0 : void SetEq (Int_t eq) {fEqualised = eq; };
68 8 : Int_t GetEq () const { return fEqualised;}
69 :
70 : void PrintParameters() const;
71 :
72 : protected:
73 : Float_t fRefAmp; // for slewing correcton
74 : Int_t fRefPoint; // #channel for RefPoint
75 : Float_t fLow[500]; //low limit of monitoring histograms
76 : Float_t fHigh[500]; //high limit of monitoring histograms
77 : Float_t fLatencyL1; //Latency L1
78 : Float_t fLatencyL1A; //Latency L1 for OrA
79 : Float_t fLatencyL1C; //Latency L1 for orC
80 : Float_t fLatencyHPTDC; //Latency HPTDC
81 : Float_t fVertexShift; // for slewing correcton
82 : Int_t fBadChannels[24]; // bad channels map
83 : Float_t fSatelliteThresholds[2]; // what we call satellite
84 : Int_t fEqualised; // do we write pure CFD or equalized
85 :
86 36 : ClassDef(AliT0RecoParam, 6);
87 :
88 : };
89 : #endif
|