Install macros
[u/mrichter/AliRoot.git] / TPC / Base / AliTPCCalibVdrift.h
1 #ifndef AliTPCCalibVdrift_H
2 #define AliTPCCalibVdrift_H
3 /* Copyright(c) 2006-07, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 ////////////////////////////////////////////////////////////////////////
7 //              Class AliTPCCalibVdrift
8 ////////////////////////////////////////////////////////////////////////
9
10
11 class TObject;
12 class AliTPCSensorTempArray;
13 class TGraph;
14 class AliTPCTempMap;
15 class AliTPCCalibVdrift : public TNamed {
16
17 public:
18   AliTPCCalibVdrift();
19   AliTPCCalibVdrift(AliTPCSensorTempArray *SensTemp, AliDCSSensor *SensPres, TObject *SensGasComp);
20   AliTPCCalibVdrift(const AliTPCCalibVdrift& source);
21   virtual ~AliTPCCalibVdrift();
22   AliTPCCalibVdrift& operator=(const AliTPCCalibVdrift& source);
23   //
24   // Interface for the reconstruction
25   //
26   Double_t GetPTRelative(UInt_t absTimeSec, Int_t side);
27
28   //
29   // Stefan interfaces - for v drift study
30   //
31   Double_t VdriftLinearHyperplaneApprox(Double_t dE, Double_t dT, Double_t dP, Double_t dCco2, Double_t dCn2);
32   
33   Double_t GetVdriftNominal();
34   Double_t GetVdriftChange(Double_t x, Double_t y, Double_t z, UInt_t absTimeSec);
35
36   Double_t GetMeanZVdriftChange(Double_t x, Double_t y, UInt_t absTimeSec);
37
38   TGraph *MakeGraphMeanZVdriftChange(Double_t x, Double_t y, Int_t nPoints);
39   Float_t GetNominalTemperature(){return fNominalTemp;}
40   Float_t GetNominalPressure(){return fNominalPress;}
41
42 protected:
43   //
44   AliTPCSensorTempArray *fSensTemp;   // Temperature sensors 
45   AliDCSSensor          *fSensPres;   // pressure sensor (cavernpress in GRP)
46   AliTPCTempMap         *fTempMap;    // Temperature Map
47   TObject *fSensGasComp;      // placeholder for GasConzentration infos  
48   //
49   // Nominal values
50   //
51   Float_t               fNominalTemp;    // nominal temperature in Kelvin
52   Float_t               fNominalPress;    // nominal pressure    in mbar 
53   ClassDef(AliTPCCalibVdrift,1);
54
55 };
56 #endif