]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - PHOS/AliPHOSCalibData.h
coverity fix (Prabhat Pujahari <p.pujahari@gmail.com>)
[u/mrichter/AliRoot.git] / PHOS / AliPHOSCalibData.h
... / ...
CommitLineData
1#ifndef ALIPHOSCALIBDATA_H
2#define ALIPHOSCALIBDATA_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id$ */
8
9////////////////////////////////////////////////
10// class for PHOS calibration //
11////////////////////////////////////////////////
12
13#include "TNamed.h"
14#include "TString.h"
15
16class AliPHOSEmcCalibData;
17class AliPHOSCpvCalibData;
18class AliPHOSEmcBadChannelsMap;
19class AliCDBMetaData;
20
21class AliPHOSCalibData: public TNamed {
22
23 public:
24 AliPHOSCalibData();
25 AliPHOSCalibData(Int_t runNumber);
26 AliPHOSCalibData(AliPHOSCalibData & phosCDB);
27 virtual ~AliPHOSCalibData();
28
29 AliPHOSCalibData & operator = (const AliPHOSCalibData & rhs);
30
31 void Reset();
32 virtual void Print(Option_t *option = "") const;
33
34 AliPHOSEmcCalibData *GetCalibDataEmc() const {return fCalibDataEmc;}
35 AliPHOSCpvCalibData *GetCalibDataCpv() const {return fCalibDataCpv;}
36
37 void CreateNew();
38 void RandomEmc(Float_t ccMin=0.5 , Float_t ccMax=1.5);
39 void RandomCpv(Float_t ccMin=0.0009, Float_t ccMax=0.0015);
40
41 //----First EMC parameters---------
42 Float_t GetADCchannelEmc(Int_t module, Int_t column, Int_t row) const;
43 void SetADCchannelEmc(Int_t module, Int_t column, Int_t row, Float_t value);
44
45 Float_t GetADCpedestalEmc(Int_t module, Int_t column, Int_t row) const;
46 void SetADCpedestalEmc(Int_t module, Int_t column, Int_t row, Float_t value);
47
48 Float_t GetHighLowRatioEmc(Int_t module, Int_t column, Int_t row) const ;
49 void SetHighLowRatioEmc(Int_t module, Int_t column, Int_t row, Float_t value) ;
50
51 Float_t GetTimeShiftEmc(Int_t module, Int_t column, Int_t row) const;
52 void SetTimeShiftEmc(Int_t module, Int_t column, Int_t row, Float_t value) ;
53
54 Float_t GetLGTimeShiftEmc(Int_t module, Int_t column, Int_t row) const;
55 void SetLGTimeShiftEmc(Int_t module, Int_t column, Int_t row, Float_t value) ;
56
57 Int_t GetAltroOffsetEmc(Int_t module, Int_t column, Int_t row) const;
58 void SetAltroOffsetEmc(Int_t module, Int_t column, Int_t row, Int_t value) ;
59
60 Float_t GetSampleTimeStep() const ;
61 void SetSampleTimeStep(Float_t step) ;
62
63 //----Now CPV parameters-----------
64 Float_t GetADCchannelCpv(Int_t module, Int_t column, Int_t row) const;
65 void SetADCchannelCpv(Int_t module, Int_t column, Int_t row, Float_t value);
66
67 Float_t GetADCpedestalCpv(Int_t module, Int_t column, Int_t row) const;
68 void SetADCpedestalCpv(Int_t module, Int_t column, Int_t row, Float_t value);
69
70 //----Bad channels map-------------
71 Int_t GetNumOfEmcBadChannels() const;
72 Bool_t IsBadChannelEmc(Int_t module, Int_t col, Int_t row) const;
73 void EmcBadChannelIds(Int_t *badIds=0);
74
75 void SetEmcDataPath(const char* emcPath) {fEmcDataPath=emcPath;}
76 void SetCpvDataPath(const char* cpvPath) {fCpvDataPath=cpvPath;}
77
78 Bool_t WriteEmc(Int_t firstRun, Int_t lastRun, AliCDBMetaData *md);
79 Bool_t WriteCpv(Int_t firstRun, Int_t lastRun, AliCDBMetaData *md);
80 Bool_t WriteEmcBadChannelsMap(Int_t firstRun, Int_t lastRun, AliCDBMetaData *md);
81
82 //----Decalibration factors for simulation-------------
83 Float_t GetADCchannelEmcDecalib(Int_t module, Int_t column, Int_t row) const;
84 void SetADCchannelEmcDecalib(Int_t module, Int_t column, Int_t row, Float_t value);
85
86 private:
87
88 AliPHOSEmcCalibData* fCalibDataEmc; // EMC calibration data
89 AliPHOSCpvCalibData* fCalibDataCpv; // CPV calibration data
90 AliPHOSEmcBadChannelsMap* fEmcBadChannelsMap; // EMC bad channels map
91
92 TString fEmcDataPath; // path to EMC calibration data
93 TString fCpvDataPath; // path to CPV calibration data
94 TString fEmcBadChannelsMapPath; // path to bad channels map
95
96 ClassDef(AliPHOSCalibData,6) // PHOS Calibration data
97};
98
99#endif