Enabled option for selecting tree name in trneding macro
[u/mrichter/AliRoot.git] / TOF / AliTOFhitT0.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 //  TOF hit for T0 member variables
17 //  fTrack   :
18 //  fX       : X coordinate of the hit in the Master Reference Frame (LAB Frame)
19 //  fY       : Y coordinate of the hit in the Master Reference Frame (LAB Frame)
20 //  fZ       : Z coordinate of the hit in the Master Reference Frame (LAB Frame)
21 //  fSector  : Number of the TOF Sector which belongs the hit 
22 //  fPlate   : Number of the TOF Plate or Module which belongs the hit 
23 //  fStrip   : Number of the TOF Strip which belongs the hit 
24 //  fPadx    : Number of the pad in the strip along the x-axis - in the strip reference frame
25 //             - where hit is produced 
26 //  fPadz    : Number of the pad in the strip along the z-axis - in the strip reference frame
27 //             - where hit is produced
28 //  fPx      : x-director cosine of the Charged Particle Momentum when hit is
29 //             produced - expressed in the Master Reference Frame (LAB Frame) -
30 //  fPy      : y-director cosine of the Charged Particle Momentum when hit is
31 //             produced - expressed in the Master Reference Frame (LAB Frame) -
32 //  fPz      : z-director cosine of the Charged Particle Momentum when hit is
33 //             produced - expressed in the Master Reference Frame (LAB Frame) -
34 //  fPmom    : Modulus of the Charged Particle Momentum when hit is produced
35 //  fTof     : Time of Flight i.e. the time between the charged particle is produced and this
36 //             particle produce the hit on the TOF sensible volume (pad)
37 //  fLen     : track length when striking the TOF detector
38 //  fDx      : Distance of the hit from the pad edge along x-axis
39 //  fDy      : y coordinate of the hit in the pad refernce frame  
40 //  fDz      : Distance of the hit from the pad edge along z-axis
41 //  fIncA    : Incidence Angle between the Normal to the sensible volume where hit
42 //             is produced (pad) and the Momentum Direction of the Charged Particle which
43 //             produces the hit
44 //  fEdep    : Energy released by charged particle on the sensible TOF volume where hit is
45 //             produced
46 // For more detailed informations about the meaning of the TOF-hit member
47 // variable look at 
48 // http://www.bo.infn.it/alice/alice-doc/TOFWEB/variables-hits.html
49 //
50 //*-- Author: F. Pierella
51
52 #include "AliTOFhitT0.h"
53
54 ClassImp(AliTOFhitT0)
55
56 //____________________________________________________________________________
57   AliTOFhitT0::AliTOFhitT0():
58   AliHit(),
59   fSector(-1),
60   fPlate(-1),
61   fStrip(-1),
62   fPadx(-1),
63   fPadz(-1),
64   fPx(0),
65   fPy(0),
66   fPz(0),
67   fPmom(0),
68   fTof(0),
69   fLenTof(0),
70   fDx(0),
71   fDy(0),
72   fDz(0),
73   fIncA(0),
74   fEdep(0)
75 {
76 }
77 //____________________________________________________________________________
78 AliTOFhitT0::AliTOFhitT0(const AliTOFhitT0 & hit):
79   AliHit(hit),
80   fSector(hit.fSector),
81   fPlate(hit.fPlate),
82   fStrip(hit.fStrip),
83   fPadx(hit.fPadx),
84   fPadz(hit.fPadz),
85   fPx(hit.fPx),
86   fPy(hit.fPy),
87   fPz(hit.fPz),
88   fPmom(hit.fPmom),
89   fTof(hit.fTof),
90   fLenTof(hit.fLenTof),
91   fDx(hit.fDx),
92   fDy(hit.fDy),
93   fDz(hit.fDz),
94   fIncA(hit.fIncA),
95   fEdep(hit.fEdep){
96    //
97    // copy ctor for AliTOFhitT0 object
98    //
99   fTrack  = hit.fTrack;  
100
101 }
102  
103 //______________________________________________________________________________
104 AliTOFhitT0& AliTOFhitT0::operator = (const AliTOFhitT0& hit) {
105
106   if (this == &hit)
107     return *this;
108
109   fSector=hit.fSector;
110   fPlate=hit.fPlate;
111   fStrip=hit.fStrip;
112   fPadx=hit.fPadx;
113   fPadz=hit.fPadz;
114   fPx=hit.fPx;
115   fPy=hit.fPy;
116   fPz=hit.fPz;
117   fPmom=hit.fPmom;
118   fTof=hit.fTof;
119   fLenTof=hit.fLenTof;
120   fDx=hit.fDx;
121   fDy=hit.fDy;
122   fDz=hit.fDz;
123   fIncA=hit.fIncA;
124   fEdep=hit.fEdep;
125   fTrack = hit.fTrack;
126   return *this;
127
128 }
129 //______________________________________________________________________________
130 AliTOFhitT0::AliTOFhitT0(Int_t shunt, Int_t track, Int_t * const vol,
131                      Float_t * const hits):
132   AliHit(shunt, track),
133   fSector(-1),
134   fPlate(-1),
135   fStrip(-1),
136   fPadx(-1),
137   fPadz(-1),
138   fPx(0),
139   fPy(0),
140   fPz(0),
141   fPmom(0),
142   fTof(0),
143   fLenTof(0),
144   fDx(0),
145   fDy(0),
146   fDz(0),
147   fIncA(0),
148   fEdep(0)
149 {
150 //
151 // Constructor of hit object
152 //
153   //
154   // Hit Volume
155   // 
156   fSector= vol[0];
157   fPlate = vol[1];
158   fStrip = vol[2];
159   fPadx = vol[3];
160   fPadz = vol[4];
161   //
162   //Position of the hit
163   fX = hits[0];
164   fY = hits[1];
165   fZ = hits[2];
166   //
167   // Momentum components of the particle in the ALICE frame when hit is produced
168   fPx  = hits[3];
169   fPy  = hits[4];
170   fPz  = hits[5];
171   fPmom= hits[6];
172   //
173   // Time Of Flight for the particle that produces hit
174   fTof = hits[7];   //TOF[s]
175   //
176   // Other Data
177   fDx  =   hits[8];     //Distance from the edge along x axis
178   fDy  =   hits[9];     //Y cohordinate of the hit
179   fDz  =   hits[10];    //Distance from the edge along z axis
180   fIncA=   hits[11];    //Incidence angle
181   fEdep=   hits[12];    //Energy loss in TOF pad
182   fLenTof= hits[13];    //Track length in TOF pad
183 }
184