]>
Commit | Line | Data |
---|---|---|
c5bbaa2c | 1 | #ifndef ALITPCCALIBDB_H |
2 | #define ALITPCCALIBDB_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 providing the calibration parameters by accessing the CDB // | |
9 | // // | |
10 | /////////////////////////////////////////////////////////////////////////////// | |
11 | ||
12 | ||
418bbcaf | 13 | class AliTPCTransform; |
14 | class AliTPCExB; | |
c5bbaa2c | 15 | #include "TObject.h" |
16 | class AliTPCCalPad; | |
54472e4f | 17 | class AliTPCSensorTempArray; |
e7e39fb5 | 18 | class AliDCSSensorArray; |
c5bbaa2c | 19 | class AliCDBEntry; |
8477f500 | 20 | class AliTPCParam; |
d6834f5f | 21 | class AliTPCAltroMapping; |
96305e49 | 22 | class AliTPCClusterParam; |
68751c2c | 23 | //class AliCDBStorage; |
c5bbaa2c | 24 | |
25 | class AliTPCcalibDB : public TObject | |
26 | { | |
27 | public: | |
28 | static AliTPCcalibDB* Instance(); | |
29 | AliTPCcalibDB(); | |
30 | virtual ~AliTPCcalibDB(); | |
31 | static void Terminate(); | |
32 | void SetRun(Long64_t run); | |
33 | // | |
f5344549 | 34 | AliTPCTransform* GetTransform() {return fTransform;} |
481f877b | 35 | AliTPCExB* GetExB() {return fExB;} |
54472e4f | 36 | AliTPCCalPad* GetPadGainFactor() {return fPadGainFactor;} |
9f6e9f81 | 37 | AliTPCCalPad* GetDedxGainFactor() {return fDedxGainFactor;} |
54472e4f | 38 | AliTPCCalPad* GetPadTime0() {return fPadTime0;} |
54472e4f | 39 | AliTPCCalPad* GetPadNoise() {return fPadNoise;} |
40 | AliTPCCalPad* GetPedestals() {return fPedestals;} | |
41 | AliTPCSensorTempArray* GetTemperature() {return fTemperature;} | |
42 | AliTPCParam* GetParameters(){return fParam;} | |
d6834f5f | 43 | AliTPCAltroMapping ** GetMapping(){ return fMapping;} |
96305e49 | 44 | AliTPCClusterParam *GetClusterParam(){ return fClusterParam;} |
d6834f5f | 45 | // |
86df2b3a | 46 | static void CreateObjectList(const Char_t *filename, TObjArray *calibObjects); |
47 | static void MakeTree(const char * fileName, TObjArray * array, const char * mapFileName = 0, AliTPCCalPad* outlierPad = 0, Float_t ltmFraction = 0.9); | |
48 | ||
c5bbaa2c | 49 | // |
50 | protected: | |
51 | void Update(); //update entries | |
52 | AliCDBEntry* GetCDBEntry(const char* cdbPath); | |
481f877b | 53 | Long64_t fRun; // current run number |
f5344549 | 54 | AliTPCTransform *fTransform; // object responsible for spacial corrections |
418bbcaf | 55 | AliTPCExB *fExB; // ExB correction factor |
68751c2c | 56 | // AliCDBStorage* fLocator; // Storage locator retrieved from AliCDBManager |
c5bbaa2c | 57 | // |
58 | // calibration parameters per pad | |
59 | // | |
418bbcaf | 60 | AliTPCCalPad* fPadGainFactor; // Gain calibration entry |
9f6e9f81 | 61 | AliTPCCalPad* fDedxGainFactor; // Gain calibration entry - for dEdx |
418bbcaf | 62 | AliTPCCalPad* fPadTime0; // Time0 calibration entry |
418bbcaf | 63 | AliTPCCalPad* fPadNoise; // Noise calibration entry |
64 | AliTPCCalPad* fPedestals; // Pedestal calibration entry | |
65 | AliTPCSensorTempArray* fTemperature; // Temperature calibration entry | |
d6834f5f | 66 | AliTPCAltroMapping **fMapping; // Altro mapping |
8477f500 | 67 | // |
68 | // | |
418bbcaf | 69 | AliTPCParam * fParam; // TPC parameters |
96305e49 | 70 | AliTPCClusterParam * fClusterParam; // TPC cluster error, shape and Q parameterization |
c5bbaa2c | 71 | // |
418bbcaf | 72 | static AliTPCcalibDB* fgInstance; // singleton control |
73 | static Bool_t fgTerminated; // termination control | |
c5bbaa2c | 74 | ClassDef(AliTPCcalibDB, 0) |
e4dce695 | 75 | private: |
f4a89669 | 76 | AliTPCcalibDB (const AliTPCcalibDB& ); |
77 | AliTPCcalibDB& operator= (const AliTPCcalibDB& ); | |
c5bbaa2c | 78 | }; |
79 | ||
80 | ||
81 | #endif |