]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TPC/TPCbase/AliTPCInverseCorrection.h
CMake: Retrieve Git information
[u/mrichter/AliRoot.git] / TPC / TPCbase / 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 /// \class AliTPCInverseCorrection
8 /// \brief AliTPCInverseCorrection class
9 ///
10 /// This is a wrapper that inverts an AliTPCCorrection. This is done by
11 /// swapping the CalculateCorrection and CalculateInverseCorrection functions.
12 /// The wrapped correction is supplied as a pointer and the class relies
13 /// on the fact, that this pointer keeps pointing to the right object.
14 /// However, the ownership is not changed, i.e. the wrapped correction
15 /// will not be deleted when this correction is destructed.
16 ///
17 /// \author Magnus Mager, Stefan Rossegger, Jim Thomas
18 /// \date 27/04/2010
19
20 #include "AliTPCCorrection.h"
21
22
23 class AliTPCInverseCorrection : public AliTPCCorrection {
24 public:
25   AliTPCInverseCorrection();
26   AliTPCInverseCorrection(AliTPCCorrection *correction);
27   virtual ~AliTPCInverseCorrection();
28
29   void SetCorrection(const AliTPCCorrection *correction) {fCorrection=(AliTPCCorrection*) correction;}
30   const AliTPCCorrection* GetCorrection() const {return fCorrection;}
31   virtual void GetCorrection(const Float_t x[],const Short_t roc,Float_t dx[]);
32   virtual void GetDistortion(const Float_t x[],const Short_t roc,Float_t dx[]);
33
34   // initialization and update functions
35   virtual void Init();
36   virtual void Update(const TTimeStamp &timeStamp);
37
38   virtual void SetOmegaTauT1T2(Float_t omegaTau,Float_t t1,Float_t t2);
39
40   // convenience functions
41   virtual void Print(Option_t* option="") const;
42
43 private:
44   AliTPCCorrection *fCorrection; ///< The correction to be inverted.
45
46   AliTPCInverseCorrection & operator = (const AliTPCInverseCorrection &);  // dummy assignment operator
47   AliTPCInverseCorrection(const AliTPCInverseCorrection&); //dummy copy contructor
48
49   /// \cond CLASSIMP
50   ClassDef(AliTPCInverseCorrection,1);
51   /// \endcond
52 };
53
54 #endif