esd variables modified
[u/mrichter/AliRoot.git] / PMD / AliPMDUtility.h
1 #ifndef ALIPMDUTILITY_H
2 #define ALIPMDUTILITY_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5 //-----------------------------------------------------//
6 //                                                     //
7 //                                                     //
8 //  Date   : August 05 2003                            //
9 //                                                     //
10 //  Utility class for PMD                              //
11 //                                                     //
12 //-----------------------------------------------------//
13 #include "Rtypes.h"
14 class AliPMDUtility
15 {
16  public:
17   AliPMDUtility();
18   AliPMDUtility(Float_t px, Float_t py, Float_t pz);
19   virtual ~AliPMDUtility();
20
21   void HexGeomCellPos(Int_t ism, Int_t xpad, Int_t ypad,
22                 Float_t & xpos, Float_t & ypos);
23   void RectGeomCellPos(Int_t ism, Int_t ium, 
24                        Int_t xpad, Int_t ypad,
25                        Float_t & xpos, Float_t & ypos);
26   void RectGeomCellPos(Int_t ism, Int_t ium, 
27                        Float_t xpad, Float_t ypad,
28                        Float_t & xpos, Float_t & ypos);
29   void SetPxPyPz(Float_t px, Float_t py, Float_t pz);
30   void SetXYZ(Float_t xpos, Float_t ypos, Float_t zpos);
31   void CalculateEta();
32   void CalculatePhi();
33   void CalculateEtaPhi();
34   Float_t GetTheta() const;
35   Float_t GetEta() const;
36   Float_t GetPhi() const;
37   
38  protected:
39   Float_t fPx;     // Momentum along x
40   Float_t fPy;     // Momentum along y
41   Float_t fPz;     // Momentum along z
42   Float_t fTheta;  // Polar angle in radian
43   Float_t fEta;    // Pseudo-rapidity
44   Float_t fPhi;    // Azimuthal angle in radian
45   
46   ClassDef(AliPMDUtility,2) // Utility class for the detector set:PMD
47 };
48
49 #endif