]>
Commit | Line | Data |
---|---|---|
8e308087 | 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 | ||
803d1ab0 | 16 | /* $Id$ */ |
8e308087 | 17 | |
8a2624cc | 18 | // ************************************************************** |
3ff116f2 | 19 | // |
8a2624cc | 20 | // Hits classes for ZDC |
3ff116f2 | 21 | // |
8a2624cc | 22 | // ************************************************************** |
8e308087 | 23 | |
24 | #include "AliZDCHit.h" | |
25 | ||
26 | ClassImp(AliZDCHit) | |
27 | ||
28 | //_____________________________________________________________________________ | |
cc2abffd | 29 | AliZDCHit::AliZDCHit() : |
30 | // AliHit(shunt, track), | |
6c79713a | 31 | fPrimKinEn(0.), |
cc2abffd | 32 | fXImpact(0.), |
33 | fYImpact(0.), | |
34 | fSFlag(0), | |
35 | fLightPMQ(0.), | |
36 | fLightPMC(0.), | |
47709f57 | 37 | fEnergy(0.), |
f7f9e40c | 38 | fPDGCode(0), |
ae3870e6 | 39 | fMotherPDGCode(0), |
949a5a55 | 40 | fTrackTOF(0.), |
41 | fTrackEta(0.) | |
cc2abffd | 42 | |
43 | { | |
44 | // | |
45 | // Default constructor | |
46 | // | |
6c79713a | 47 | for(Int_t i=0; i<2; i++) fVolume[i] = 0; |
cc2abffd | 48 | } |
49 | ||
50 | //_____________________________________________________________________________ | |
51 | AliZDCHit::AliZDCHit(Int_t shunt, Int_t track, Int_t *vol, Float_t *hits) : | |
52 | AliHit(shunt, track), | |
53 | fPrimKinEn(hits[3]), | |
54 | fXImpact(hits[4]), | |
55 | fYImpact(hits[5]), | |
56 | fSFlag(hits[6]), | |
57 | fLightPMQ(hits[7]), | |
58 | fLightPMC(hits[8]), | |
47709f57 | 59 | fEnergy(hits[9]), |
f7f9e40c | 60 | fPDGCode((Int_t) hits[10]), |
ae3870e6 | 61 | fMotherPDGCode((Int_t) hits[11]), |
949a5a55 | 62 | fTrackTOF(hits[12]), |
63 | fTrackEta(hits[13]) | |
cc2abffd | 64 | |
8e308087 | 65 | { |
66 | // | |
cc2abffd | 67 | // Standard constructor |
8e308087 | 68 | // |
69 | Int_t i; | |
cc2abffd | 70 | for(i=0; i<2; i++) fVolume[i] = vol[i]; |
5a881c97 | 71 | fX = hits[0]; |
72 | fY = hits[1]; | |
73 | fZ = hits[2]; | |
cc2abffd | 74 | } |
8e308087 | 75 | |
cc2abffd | 76 | //_____________________________________________________________________________ |
77 | AliZDCHit::AliZDCHit(const AliZDCHit &oldhit) : | |
a718c993 | 78 | AliHit(0,oldhit.GetTrack()), |
79 | fPrimKinEn(oldhit.GetPrimKinEn()), | |
80 | fXImpact(oldhit.GetXImpact()), | |
81 | fYImpact(oldhit.GetYImpact()), | |
82 | fSFlag(oldhit.GetSFlag()), | |
83 | fLightPMQ(oldhit.GetLightPMQ()), | |
84 | fLightPMC(oldhit.GetLightPMC()), | |
47709f57 | 85 | fEnergy(oldhit.GetEnergy()), |
f7f9e40c | 86 | fPDGCode(oldhit.GetPDGCode()), |
ae3870e6 | 87 | fMotherPDGCode(oldhit.GetMotherPDGCode()), |
949a5a55 | 88 | fTrackTOF(oldhit.GetTrackTOF()), |
89 | fTrackEta(oldhit.GetTrackEta()) | |
cc2abffd | 90 | { |
91 | // Copy constructor | |
92 | fX = oldhit.X(); | |
93 | fY = oldhit.Y(); | |
94 | fZ = oldhit.Z(); | |
95 | for(Int_t i=0; i<2; i++) fVolume[i] = oldhit.GetVolume(i); | |
8e308087 | 96 | } |
be004c43 | 97 | |
98 | //_____________________________________________________________________________ | |
99 | AliZDCHit &AliZDCHit::operator= (const AliZDCHit &hit) | |
100 | { | |
101 | //assignemnt operator | |
102 | if(&hit == this) return *this; | |
103 | ||
104 | fPrimKinEn = hit.GetPrimKinEn(); | |
105 | fXImpact = hit.GetXImpact(); | |
106 | fYImpact = hit.GetYImpact(); | |
107 | fSFlag = hit.GetSFlag(); | |
108 | fLightPMQ = hit.GetLightPMQ(); | |
109 | fLightPMC = hit.GetLightPMC(); | |
110 | fEnergy = hit.GetEnergy(); | |
111 | fPDGCode = hit.GetPDGCode(); | |
112 | fMotherPDGCode = hit.GetMotherPDGCode(); | |
113 | fTrackTOF = hit.GetTrackTOF(); | |
949a5a55 | 114 | fTrackEta = hit.GetTrackEta(); |
be004c43 | 115 | |
116 | fX = hit.X(); | |
117 | fY = hit.Y(); | |
118 | fZ = hit.Z(); | |
119 | for(Int_t i=0; i<2; i++) fVolume[i] = hit.GetVolume(i); | |
120 | ||
121 | return *this; | |
122 | } | |
8a2624cc | 123 | |
cc2abffd | 124 | |
8a2624cc | 125 | //_____________________________________________________________________________ |
126 | void AliZDCHit::Print(Option_t *) const | |
127 | { | |
128 | // Print method | |
949a5a55 | 129 | printf("\t AliZDCHit: track %d eta %f PDGcode %d TOF %1.1f ns E_prim = %1.2f GeV \n" |
e4d73825 | 130 | "\t DETECTOR (%d, %d) (X, Y)_impact (%f, %f) cm\n" |
131 | "\t PMQLight %1.0f, PMCLight %1.0f, E_dep %1.2f\n ", | |
949a5a55 | 132 | fTrack,fTrackEta,fPDGCode,fTrackTOF,fPrimKinEn, |
f7f9e40c | 133 | fVolume[0],fVolume[1],fXImpact,fYImpact, |
134 | fLightPMQ,fLightPMC,fEnergy); | |
8a2624cc | 135 | } |