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 //-----------------------------------------------------//
8 // Date : August 05 2003 //
10 // Utility class for PMD //
12 //-----------------------------------------------------//
13 // Author - B.K. Nandi
20 AliPMDUtility(Float_t px, Float_t py, Float_t pz);
21 AliPMDUtility(const AliPMDUtility &pmdutil); // copy constructor
22 AliPMDUtility &operator=(const AliPMDUtility &pmdutil); // assignment op
23 virtual ~AliPMDUtility();
26 void RectGeomCellPos(Int_t ism, Int_t xpad, Int_t ypad,
27 Float_t & xpos, Float_t & ypos);
28 void RectGeomCellPos(Int_t ism, Float_t xpad, Float_t ypad,
29 Float_t & xpos, Float_t & ypos);
31 void GenerateBoundaryPoints(Int_t ism, Float_t &x1ism, Float_t &y1ism
32 , Float_t &x2ism, Float_t &y2ism);
36 void ApplyVertexCorrection(Float_t vertex[],
37 Float_t xpos, Float_t ypos, Float_t zpos);
38 void ApplyAlignment();
39 void SetPxPyPz(Float_t px, Float_t py, Float_t pz);
40 void SetXYZ(Float_t xpos, Float_t ypos, Float_t zpos);
41 void SetWriteModule(Int_t wrmod);
44 void CalculateEtaPhi();
45 void CalculateXY(Float_t eta, Float_t phi, Float_t zpos);
46 Float_t GetTheta() const;
47 Float_t GetEta() const;
48 Float_t GetPhi() const;
54 Float_t fPx; // Momentum along x
55 Float_t fPy; // Momentum along y
56 Float_t fPz; // Momentum along z
57 Float_t fTheta; // Polar angle in radian
58 Float_t fEta; // Pseudo-rapidity
59 Float_t fPhi; // Azimuthal angle in radian
60 Int_t fWriteModule; // Module number writing
62 ClassDef(AliPMDUtility,4) // Utility class for the detector set:PMD