]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/AliTPCInverseCorrection.h
M AliTPCcalibCalib.cxx - start refit form TPC out instead of track...
[u/mrichter/AliRoot.git] / TPC / AliTPCInverseCorrection.h
1 #ifndef ALI_TPC_INVERSE_CORRECTION_H
2 #define ALI_TPC_INVERSE_CORRECTION_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 // AliTPCInverseCorrection class                                              //
10 //                                                                            //
11 // This is a wrapper that inverts an AliTPCCorrection. This is done by        //
12 // swapping the CalculateCorrection and CalculateInverseCorrection functions. //
13 // The wrapped correction is supplied as a pointer and the class relies       //
14 // on the fact, that this pointer keeps pointing to the right object.         //
15 // However, the ownership is not changed, i.e. the wrapped correction         //
16 // will not be deleted when this correction is destructed.                    //
17 //                                                                            //
18 // date: 27/04/2010                                                           //
19 // Authors: Magnus Mager, Stefan Rossegger, Jim Thomas                       //
20 ////////////////////////////////////////////////////////////////////////////////
21
22 #include "AliTPCCorrection.h"
23
24
25 class AliTPCInverseCorrection : public AliTPCCorrection {
26 public:
27   AliTPCInverseCorrection();
28   AliTPCInverseCorrection(AliTPCCorrection *correction);
29   virtual ~AliTPCInverseCorrection();
30
31   void SetCorrection(AliTPCCorrection *correction) {fCorrection=correction;}
32   AliTPCCorrection* GetCorrection() const {return fCorrection;}
33   virtual void GetCorrection(const Float_t x[],const Short_t roc,Float_t dx[]);
34   virtual void GetDistortion(const Float_t x[],const Short_t roc,Float_t dx[]);
35
36   // initialization and update functions
37   virtual void Init();
38   virtual void Update(const TTimeStamp &timeStamp);
39
40
41 private:
42   AliTPCCorrection *fCorrection; // The correction to be inverted.
43
44   AliTPCInverseCorrection & operator = (const AliTPCInverseCorrection);
45   AliTPCInverseCorrection(const AliTPCInverseCorrection&); //dummy copy contructor
46
47   ClassDef(AliTPCInverseCorrection,1);
48 };
49
50 #endif