]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/AliTPCcalibDB.h
Added static function to create a tree from the list of specified parameters (Marian...
[u/mrichter/AliRoot.git] / TPC / AliTPCcalibDB.h
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
13 #include "TObject.h"
14 class AliTPCCalPad;
15 class AliTPCSensorTempArray;
16 class AliTPCSensorPressureArray;
17 class AliCDBEntry;
18 class AliTPCParam;
19 //class AliCDBStorage;
20
21 class AliTPCcalibDB : public TObject
22 {
23  public: 
24   static AliTPCcalibDB* Instance();
25   AliTPCcalibDB();
26   virtual ~AliTPCcalibDB();
27   static void Terminate();
28   void   SetRun(Long64_t run);   
29   //
30   AliTPCCalPad* GetPadGainFactor() {return fPadGainFactor;}
31   AliTPCCalPad* GetPadTime0() {return fPadTime0;}
32   AliTPCCalPad* GetPadPRFWidth() {return fPadPRFWidth;}
33   AliTPCCalPad* GetPadNoise() {return fPadNoise;}
34   AliTPCCalPad* GetPedestals() {return fPedestals;}
35   AliTPCSensorTempArray* GetTemperature() {return fTemperature;}
36   AliTPCSensorPressureArray* GetPressure() {return fPressure;}
37   AliTPCParam*  GetParameters(){return fParam;}
38   static void     CreateObjectList(const Char_t *filename, TObjArray *calibObjects);
39   static void MakeTree(const char * fileName, TObjArray * array, const char * mapFileName = 0, AliTPCCalPad* outlierPad = 0, Float_t ltmFraction = 0.9);
40   
41   //
42 protected:
43   void         Update();  //update entries
44   AliCDBEntry* GetCDBEntry(const char* cdbPath);   
45   Long64_t        fRun;         // current run number            
46 //  AliCDBStorage* fLocator;      // Storage locator retrieved from AliCDBManager
47   //
48   // calibration parameters per pad
49   //
50   AliTPCCalPad* fPadGainFactor;
51   AliTPCCalPad* fPadTime0;
52   AliTPCCalPad* fPadPRFWidth;
53   AliTPCCalPad* fPadNoise;
54   AliTPCCalPad* fPedestals;
55   AliTPCSensorTempArray* fTemperature;
56   AliTPCSensorPressureArray *fPressure;
57   //
58   //
59   AliTPCParam * fParam;
60   //
61   static AliTPCcalibDB* fgInstance;
62   static Bool_t       fgTerminated;
63   ClassDef(AliTPCcalibDB, 0)
64  private:
65    AliTPCcalibDB (const AliTPCcalibDB& org);
66    AliTPCcalibDB& operator= (const AliTPCcalibDB& rhs);
67 };
68
69
70 #endif