]> git.uio.no Git - u/mrichter/AliRoot.git/blame - VZERO/AliVZEROCalibData.h
Fix for root file geom (I.Hrivnacova)
[u/mrichter/AliRoot.git] / VZERO / AliVZEROCalibData.h
CommitLineData
ee700a83 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"
32c24147 14
15class AliVZERODataDCS;
ee700a83 16
17class AliVZEROCalibData: public TNamed {
18
19 public:
d5deaaa5 20 enum { kNCIUBoards = 8 };
21
ee700a83 22 AliVZEROCalibData();
23 AliVZEROCalibData(const char* name);
24 AliVZEROCalibData(const AliVZEROCalibData &calibda);
25 AliVZEROCalibData& operator= (const AliVZEROCalibData &calibda);
26 virtual ~AliVZEROCalibData();
fae0e0c0 27 void Reset();
d5deaaa5 28 void FillDCSData(AliVZERODataDCS * data);
ee700a83 29
30 Float_t GetPedestal(Int_t channel) const {return fPedestal[channel];}
31 Float_t* GetPedestal() const {return (float*)fPedestal;}
fae0e0c0 32 Float_t GetSigma(Int_t channel) const {return fSigma[channel];}
33 Float_t* GetSigma() const {return (float*)fSigma;}
60a8e5df 34 Float_t GetADCmean(Int_t channel) const {return fADCmean[channel];}
35 Float_t* GetADCmean() const {return (float*)fADCmean;}
3bdfb56f 36 Float_t GetADCsigma(Int_t channel) const {return fADCsigma[channel];}
37 Float_t* GetADCsigma() const {return (float*)fADCsigma;}
60a8e5df 38 Float_t GetMeanHV(Int_t channel) const {return fMeanHV[channel];}
39 Float_t* GetMeanHV() const {return (float*)fMeanHV;}
40 Float_t GetWidthHV(Int_t channel) const {return fWidthHV[channel];}
41 Float_t* GetWidthHV() const {return (float*)fWidthHV;}
7495d2be 42 Bool_t IsChannelDead(Int_t channel) const {return fDeadChannel[channel];}
43 Bool_t* GetDeadMap() const {return (bool*)fDeadChannel;}
60a8e5df 44
45 Float_t GetGain(Int_t channel) const {return fGain[channel];}
46 Float_t* GetGain() const {return (float*)fGain;}
fae0e0c0 47 Float_t GetTimeOffset(Int_t channel) const {return fTimeOffset[channel];}
48 Float_t* GetTimeOffset() const {return (float*)fTimeOffset;}
49 Float_t GetTimeGain(Int_t channel) const {return fTimeGain[channel];}
50 Float_t* GetTimeGain() const {return (float*)fTimeGain;}
d5deaaa5 51
52 Float_t* GetTimeResolution() const {return (Float_t*) fTimeResolution;};
4bc15c46 53 Float_t GetTimeResolution(Int_t board ) const {return ((board>=0 && board<kNCIUBoards)?fTimeResolution[board]:0);};
d5deaaa5 54
55 Float_t* GetWidthResolution() const {return (Float_t*) fWidthResolution;};
4bc15c46 56 Float_t GetWidthResolution(Int_t board ) const {return ((board>=0 && board<kNCIUBoards)?fWidthResolution[board]:0);};
60a8e5df 57
ee700a83 58 void SetPedestal(Float_t val, Int_t channel) {fPedestal[channel]=val;}
32c24147 59 void SetPedestal(const Float_t* Pedestal);
fae0e0c0 60 void SetSigma(Float_t val, Int_t channel) {fSigma[channel]=val;}
32c24147 61 void SetSigma(const Float_t* Sigma);
60a8e5df 62 void SetADCmean(Float_t val, Int_t channel) {fADCmean[channel]=val;}
32c24147 63 void SetADCmean(const Float_t* ADCmean);
3bdfb56f 64 void SetADCsigma(Float_t val, Int_t channel) {fADCsigma[channel]=val;}
32c24147 65 void SetADCsigma(const Float_t* ADCsigma);
60a8e5df 66 void SetMeanHV(Float_t val, Int_t channel) {fMeanHV[channel]=val;}
32c24147 67 void SetMeanHV(const Float_t* MeanHV);
60a8e5df 68 void SetWidthHV(Float_t val, Int_t channel) {fWidthHV[channel]=val;}
32c24147 69 void SetWidthHV(const Float_t* WidthHV);
7495d2be 70 void SetDeadChannel(Bool_t val, Int_t channel) {fDeadChannel[channel]=val;}
32c24147 71 void SetDeadMap(const Bool_t* deadMap);
60a8e5df 72
73 void SetGain(Float_t val, Int_t channel) {fGain[channel]=val;}
32c24147 74 void SetGain(const Float_t* Gain);
fae0e0c0 75 void SetTimeOffset(Float_t val, Int_t channel) {fTimeOffset[channel]=val;}
32c24147 76 void SetTimeOffset(const Float_t* TimeOffset);
fae0e0c0 77 void SetTimeGain(Float_t val, Int_t channel) {fTimeGain[channel]=val;}
32c24147 78 void SetTimeGain(const Float_t* TimeGain);
d5deaaa5 79
5978520a 80 void SetParameter(TString name, Int_t val);
d5deaaa5 81 void SetTimeResolution(UShort_t *resols);
82 void SetTimeResolution(UShort_t resol, Int_t board);
83 void SetWidthResolution(UShort_t *resols);
84 void SetWidthResolution(UShort_t resol, Int_t board);
706506da 85
86 Float_t GetMIPperADC(Int_t channel) const;
87
ee700a83 88 protected:
fae0e0c0 89 Float_t fPedestal[128]; // Mean pedestal values
90 Float_t fSigma[128]; // Sigmas of pedestal peaks
60a8e5df 91 Float_t fADCmean[128]; // ADC mean values
3bdfb56f 92 Float_t fADCsigma[128]; // ADC sigma values
60a8e5df 93 Float_t fMeanHV[64]; // Mean PMT HV needed to compute MIP value
94 Float_t fWidthHV[64]; // Width of the PMT HV
fae0e0c0 95
60a8e5df 96 Float_t fGain[128]; // Gain factor used in digitization only
32c24147 97 Float_t fTimeOffset[64]; // Time offsets of the TDC
98 Float_t fTimeGain[64]; // Gain factors of the TDC
99 Bool_t fDeadChannel[64]; // List of dead channels
d5deaaa5 100 Float_t fTimeResolution[kNCIUBoards]; // Time Resolution of the TDC (ns / channel)
101 Float_t fWidthResolution[kNCIUBoards]; // Time Width Resolution of the TDC (ns / channel)
ee700a83 102
21eb8497 103 ClassDef(AliVZEROCalibData,4) // VZERO Calibration data
ee700a83 104};
105
106#endif