Clean up compilation warnings
[u/mrichter/AliRoot.git] / CRT / AliCRThit.cxx
1 /**************************************************************************
2  * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3  *                                                                        *
4  * Author: The ALICE Off-line Project.                                    *
5  * Contributors are mentioned in the code where appropriate.              *
6  *                                                                        *    
7  * Permission to use, copy, modify and distribute this software and its   *
8  * documentation strictly for non-commercial purposes is hereby granted   *
9  * without fee, provided that the above copyright notice appears in all   *
10  * copies and that both the copyright notice and this permission notice   *
11  * appear in the supporting documentation. The authors make no claims     *
12  * about the suitability of this software for any purpose. It is          *
13  * provided "as is" without express or implied warranty.                  * 
14  **************************************************************************/
15
16 /* $Id$ */
17
18 #include <TMath.h>
19
20 #include "AliConst.h"
21 #include "AliCRThit.h"
22
23 ClassImp(AliCRThit)
24
25 //____________________________________________________________________________
26 AliCRThit::AliCRThit()
27   : AliHit(),
28     fId(0),
29     fPx(0),
30     fPy(0),
31     fPz(0),
32     fEloss(0),
33     fMedium(0)
34 {
35   //
36   // default ctor for AliCRThit object
37   //
38 }
39
40 //_____________________________________________________________________________
41 AliCRThit::AliCRThit(Int_t shunt, Int_t track, Int_t *vol, Float_t *hits)
42   : AliHit(shunt, track),
43     fId(hits[0]),
44     fPx(hits[4]),
45     fPy(hits[5]),
46     fPz(hits[6]),
47     fEloss(hits[7]),
48     fMedium(vol[0])
49 {
50   //
51   // Constructor of hit object
52   //
53   fX = hits[1];
54   fY = hits[2];
55   fZ = hits[3];
56 }
57
58 //____________________________________________________________________________
59 AliCRThit::AliCRThit(const AliCRThit & hit)
60   : AliHit(hit),
61     fId(hit.fId),
62     fPx(hit.fPx),
63     fPy(hit.fPy),
64     fPz(hit.fPz),
65     fEloss(hit.fEloss),
66     fMedium(hit.fMedium)
67 {
68   //
69   // copy ctor
70   //
71   fX      = hit.fX;
72   fY      = hit.fY;
73   fZ      = hit.fZ;
74 }
75
76 //_____________________________________________________________________________
77 AliCRThit::~AliCRThit()
78 {
79   //
80   // Default destructor.
81   //
82 }
83
84 //_____________________________________________________________________________
85 AliCRThit& AliCRThit::operator=(const AliCRThit & hit)
86 {
87   //
88   // aisngment operator.
89   //
90   fId     = hit.fId;
91   fX      = hit.fX;
92   fY      = hit.fY;
93   fZ      = hit.fZ;
94   fPx     = hit.fPx;
95   fPy     = hit.fPy;
96   fPz     = hit.fPz;
97   fEloss  = hit.fEloss;
98   fMedium = hit.fMedium;
99   return *this;
100 }
101
102 //_____________________________________________________________________________
103 Float_t AliCRThit::Energy() const
104 {
105   //
106   //
107   //
108   return TMath::Sqrt(fPx*fPx + fPy*fPy + fPz*fPz);
109 }
110
111 //_____________________________________________________________________________
112 Float_t AliCRThit::PolarAngle() const
113 {
114   //
115   //
116   //
117   return kRaddeg*TMath::ACos(-fPy/this->Energy());
118 }
119
120 //_____________________________________________________________________________
121 Float_t AliCRThit::AzimuthAngle() const
122 {
123   //
124   //
125   //
126   return kRaddeg*TMath::ATan2(-fPx, -fPz);
127 }
128
129 //_____________________________________________________________________________
130 Bool_t AliCRThit::operator==(const AliCRThit& hit)
131 {
132   //
133   //
134   //
135   Float_t energy = TMath::Sqrt(fPx*fPx + fPy*fPy + fPz*fPz);
136   Float_t energy2=TMath::Sqrt(hit.fPx*hit.fPx+hit.fPy*hit.fPy+hit.fPz*hit.fPz);
137   return (energy == energy2);
138   //return (fTrack == hit.fTrack);
139 }
140
141 //_____________________________________________________________________________
142 Bool_t AliCRThit::operator<(const AliCRThit& hit)
143 {
144   //
145   //
146   //
147   Float_t energy = TMath::Sqrt(fPx*fPx + fPy*fPy + fPz*fPz);
148   Float_t energy2=TMath::Sqrt(hit.fPx*hit.fPx+hit.fPy*hit.fPy+hit.fPz*hit.fPz);
149   return (energy < energy2);
150 }