Minor changes in Calib object
[u/mrichter/AliRoot.git] / VZERO / AliVZEROCalibData.h
1 #ifndef ALIVZEROCALIBDATA_H
2 #define ALIVZEROCALIBDATA_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 ////////////////////////////////////////////////
8 //                                            // 
9 //  class for VZERO calibration               //
10 //                                            //
11 ////////////////////////////////////////////////
12
13 #include "TNamed.h"
14 #include "AliVZERO.h"
15
16 class AliVZEROCalibData: public TNamed {
17
18  public:
19   AliVZEROCalibData();
20   AliVZEROCalibData(const char* name);
21   AliVZEROCalibData(const AliVZEROCalibData &calibda);
22   AliVZEROCalibData& operator= (const AliVZEROCalibData &calibda);
23   virtual ~AliVZEROCalibData();
24   void Reset();
25
26   Float_t  GetPedestal(Int_t channel)   const {return fPedestal[channel];}
27   Float_t* GetPedestal()   const {return (float*)fPedestal;}
28   Float_t  GetSigma(Int_t channel)   const {return fSigma[channel];}
29   Float_t* GetSigma()   const {return (float*)fSigma;}
30   Float_t  GetGain(Int_t channel)       const {return fGain[channel];}
31   Float_t* GetGain()   const {return (float*)fGain;}
32   Float_t  GetADCsigma(Int_t channel)   const {return fADCsigma[channel];}
33   Float_t* GetADCsigma()   const {return (float*)fADCsigma;}
34   
35   Float_t  GetTimeOffset(Int_t channel) const {return fTimeOffset[channel];}
36   Float_t* GetTimeOffset()   const {return (float*)fTimeOffset;}
37   Float_t  GetTimeGain(Int_t channel)   const {return fTimeGain[channel];}
38   Float_t* GetTimeGain()   const {return (float*)fTimeGain;}
39   
40   Float_t  GetMeanHV(Int_t channel)     const {return fMeanHV[channel];}
41   Float_t* GetMeanHV()   const {return (float*)fMeanHV;}
42  
43   Float_t  GetWidthHV(Int_t channel)    const {return fWidthHV[channel];}
44   Float_t* GetWidthHV()   const {return (float*)fWidthHV;}
45  
46   
47   void     SetPedestal(Float_t val, Int_t channel) {fPedestal[channel]=val;}
48   void     SetPedestal(Float_t* Pedestal);
49   void     SetSigma(Float_t val, Int_t channel) {fSigma[channel]=val;}
50   void     SetSigma(Float_t* Sigma);
51   void     SetGain(Float_t val, Int_t channel) {fGain[channel]=val;}
52   void     SetGain(Float_t* Gain);
53   void     SetADCsigma(Float_t val, Int_t channel) {fADCsigma[channel]=val;}
54   void     SetADCsigma(Float_t* ADCsigma);
55   
56   void     SetTimeOffset(Float_t val, Int_t channel) {fTimeOffset[channel]=val;}
57   void     SetTimeOffset(Float_t* TimeOffset);
58   void     SetTimeGain(Float_t val, Int_t channel) {fTimeGain[channel]=val;}
59   void     SetTimeGain(Float_t* TimeGain);
60   
61   void     SetMeanHV(Float_t val, Int_t channel) {fMeanHV[channel]=val;}
62   void     SetMeanHV(Float_t* MeanHVs);
63   
64   void     SetWidthHV(Float_t val, Int_t channel) {fWidthHV[channel]=val;}
65   void     SetWidthHV(Float_t* WidthHVs);
66
67  protected:
68   Float_t  fPedestal[128];     // Mean pedestal values
69   Float_t  fSigma[128];        // Sigmas of pedestal peaks
70   Float_t  fGain[128];         // ADC mean values
71   Float_t  fADCsigma[128];     // ADC sigma values
72   
73   Float_t  fTimeOffset[64];
74   Float_t  fTimeGain[64];
75
76   Float_t  fMeanHV[64];                 // Mean PMT HV
77   Float_t  fWidthHV[64];                // Width of the PMT HV
78
79   ClassDef(AliVZEROCalibData,2)    // VZERO Calibration data
80 };
81
82 #endif