]>
Commit | Line | Data |
---|---|---|
66954e3f | 1 | #ifndef ALITPCTRANSFORM_H |
2 | #define ALITPCTRANSFORM_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
66954e3f | 7 | |
7d855b04 | 8 | /// \class AliTPCTransform |
9 | /// \brief Class for tranformation of the coordinate frame | |
10 | /// | |
11 | /// Transformation | |
12 | /// local coordinate frame (sector, padrow, pad, timebine) ==> | |
13 | /// rotated global (tracking) cooridnate frame (sector, lx,ly,lz) | |
c1bdda91 | 14 | |
9430b11a | 15 | class AliTPCRecoParam; |
c1bdda91 | 16 | #include "AliTransform.h" |
17 | ||
18 | class AliTPCTransform:public AliTransform { | |
19 | public: | |
20 | AliTPCTransform(); | |
9430b11a | 21 | AliTPCTransform(const AliTPCTransform& transform); |
7d855b04 | 22 | |
c1bdda91 | 23 | virtual ~AliTPCTransform(); |
24 | virtual void Transform(Double_t *x,Int_t *i,UInt_t time, | |
003b43ed | 25 | Int_t coordinateType); |
26 | void SetPrimVertex(Double_t *vtx); | |
24db6af7 | 27 | void Local2RotatedGlobal(Int_t sec, Double_t *x) const; |
c1bdda91 | 28 | void RotatedGlobal2Global(Int_t sector,Double_t *x) const; |
29 | void Global2RotatedGlobal(Int_t sector,Double_t *x) const; | |
30 | void GetCosAndSin(Int_t sector,Double_t &cos,Double_t &sin) const; | |
a13c22ca | 31 | UInt_t GetCurrentTimeStamp() const { return fCurrentTimeStamp;} |
3af3fbc4 | 32 | const AliTPCRecoParam * GetCurrentRecoParam() const {return fCurrentRecoParam;} |
3ce45991 | 33 | AliTPCRecoParam * GetCurrentRecoParamNonConst() const {return fCurrentRecoParam;} |
3af3fbc4 | 34 | UInt_t GetCurrentRunNumber() const { return fCurrentRun;} |
9430b11a | 35 | // |
36 | // set current values | |
37 | // | |
38 | void SetCurrentRecoParam(AliTPCRecoParam* param){fCurrentRecoParam=param;} | |
39 | void SetCurrentRun(Int_t run){fCurrentRun=run;} | |
40 | void SetCurrentTimeStamp(Int_t timeStamp){fCurrentTimeStamp=timeStamp;} | |
43a74775 | 41 | void ApplyTransformations(Double_t *xyz, Int_t volID); |
c1bdda91 | 42 | private: |
4b21ec08 | 43 | AliTPCTransform& operator=(const AliTPCTransform&); // not implemented |
7d855b04 | 44 | Double_t fCoss[18]; ///< cache the transformation |
45 | Double_t fSins[18]; ///< cache the transformation | |
46 | Double_t fPrimVtx[3];///< position of the primary vertex - needed for TOF correction | |
47 | AliTPCRecoParam * fCurrentRecoParam; //!< current reconstruction parameters | |
48 | Int_t fCurrentRun; //!< current run | |
49 | UInt_t fCurrentTimeStamp; //!< current time stamp | |
50 | /// \cond CLASSIMP | |
c1bdda91 | 51 | ClassDef(AliTPCTransform,1) |
7d855b04 | 52 | /// \endcond |
c1bdda91 | 53 | }; |
54 | ||
55 | #endif |