]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TRD/AliTRDtransform.h
added protection
[u/mrichter/AliRoot.git] / TRD / AliTRDtransform.h
1 #ifndef ALITRDTRANSFORM_H
2 #define ALITRDTRANSFORM_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 ////////////////////////////////////////////////////////////////////////////
9 //                                                                        //
10 //  Transforms clusters into space points with calibrated positions       //
11 //  defined in the local tracking system                                  //
12 //                                                                        //
13 ////////////////////////////////////////////////////////////////////////////
14
15 #include "TObject.h"
16 //#include "../TPC/AliTransform.h"
17
18 class TGeoHMatrix;
19
20 class AliTRDgeometry;
21 class AliTRDcluster;
22 class AliTRDCommonParam;
23 class AliTRDcalibDB;
24 class AliTRDCalROC;
25 class AliTRDCalDet;
26 class AliTRDpadPlane;
27
28 //class AliTRDtransform : public AliTransform {
29 class AliTRDtransform : public TObject {
30
31  public:
32
33   AliTRDtransform();
34   AliTRDtransform(Int_t det);
35   AliTRDtransform(const AliTRDtransform &t);
36   virtual ~AliTRDtransform();
37   AliTRDtransform &operator=(const AliTRDtransform &t) { *(new(this) AliTRDtransform(t));
38                                                           return *this; }
39
40   virtual Bool_t   Transform(Double_t *x
41                            , Int_t    *i
42                            , UInt_t    time
43                            , Int_t     coordinateType);
44   virtual void     Recalibrate(AliTRDcluster *c, Bool_t setDet = kTRUE);
45
46           void     SetDetector(Int_t det);
47
48  protected:
49
50   AliTRDgeometry          *fGeo;                 //  TRD geometry
51   Int_t                    fDetector;            //  Detector number
52
53   AliTRDCommonParam       *fParam;               //  TRD common parameters
54
55         AliTRDcalibDB     *fCalibration;         //  TRD calibration interface object
56         AliTRDCalROC      *fCalVdriftROC;        //  Pad wise Vdrift calibration object
57         AliTRDCalROC      *fCalT0ROC;            //  Pad wise T0 calibration object
58   const AliTRDCalDet      *fCalVdriftDet;        //  ROC wise Vdrift calibration object
59   const AliTRDCalDet      *fCalT0Det;            //  ROC wise T0 calibration object
60   Double_t                 fCalVdriftDetValue;   //  ROC wise Vdrift calibration value
61   Double_t                 fCalT0DetValue;       //  ROC wise T0 calibration value
62
63   Double_t                 fSamplingFrequency;   //  ADC sampling frequency
64
65   AliTRDpadPlane          *fPadPlane;            //  The current pad plane object
66   Double_t                 fZShiftIdeal;         //  Needed to define Z-position relative to middle of chamber
67
68   TGeoHMatrix             *fMatrix;              //  Transformation matrix for a given chamber
69
70   ClassDef(AliTRDtransform,1)                    //  Transforms clusters
71
72 };
73
74 #endif