]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ZDC/AliZDCHit.cxx
Fixing mem. leak (thanks to Ruben)
[u/mrichter/AliRoot.git] / ZDC / AliZDCHit.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 // **************************************************************
19 //
20 //              Hits classes for ZDC                  
21 //
22 // **************************************************************
23
24 #include "AliZDCHit.h"
25
26 ClassImp(AliZDCHit)
27   
28 //_____________________________________________________________________________
29 AliZDCHit::AliZDCHit() :
30 //  AliHit(shunt, track),
31   fPrimKinEn(0.),
32   fXImpact(0.),
33   fYImpact(0.),
34   fSFlag(0),
35   fLightPMQ(0.),
36   fLightPMC(0.),
37   fEnergy(0.), 
38   fPDGCode(0),
39   fMotherPDGCode(0),
40   fTrackTOF(0.)
41
42 {
43   //
44   // Default constructor
45   //
46   for(Int_t i=0; i<2; i++) fVolume[i] = 0;
47 }
48
49 //_____________________________________________________________________________
50 AliZDCHit::AliZDCHit(Int_t shunt, Int_t track, Int_t *vol, Float_t *hits) :
51   AliHit(shunt, track),
52   fPrimKinEn(hits[3]),
53   fXImpact(hits[4]),
54   fYImpact(hits[5]),
55   fSFlag(hits[6]),
56   fLightPMQ(hits[7]),
57   fLightPMC(hits[8]),
58   fEnergy(hits[9]), 
59   fPDGCode((Int_t) hits[10]),
60   fMotherPDGCode((Int_t) hits[11]),
61   fTrackTOF(hits[12])
62
63 {
64   //
65   // Standard constructor
66   //
67   Int_t i;
68   for(i=0; i<2; i++) fVolume[i] = vol[i];
69   fX            = hits[0];
70   fY            = hits[1];
71   fZ            = hits[2];
72 }
73   
74 //_____________________________________________________________________________
75 AliZDCHit::AliZDCHit(const AliZDCHit &oldhit) :
76   AliHit(0,oldhit.GetTrack()),
77   fPrimKinEn(oldhit.GetPrimKinEn()),
78   fXImpact(oldhit.GetXImpact()),  
79   fYImpact(oldhit.GetYImpact()),  
80   fSFlag(oldhit.GetSFlag()),
81   fLightPMQ(oldhit.GetLightPMQ()), 
82   fLightPMC(oldhit.GetLightPMC()),
83   fEnergy(oldhit.GetEnergy()),
84   fPDGCode(oldhit.GetPDGCode()),
85   fMotherPDGCode(oldhit.GetMotherPDGCode()),
86   fTrackTOF(oldhit.GetTrackTOF())
87 {
88   // Copy constructor
89   fX = oldhit.X();
90   fY = oldhit.Y();
91   fZ = oldhit.Z();
92   for(Int_t i=0; i<2; i++) fVolume[i] = oldhit.GetVolume(i);
93 }
94   
95   
96 //_____________________________________________________________________________
97 void AliZDCHit::Print(Option_t *) const 
98 {
99    // Print method
100    printf("\t AliZDCHit: track %d PDGcode %d TOF %1.1f ns E_prim = %1.2f GeV SFlag = %1.0f\n" 
101           "\t DETECTOR (%d, %d)  (X, Y)_impact (%f, %f) cm\n"
102           "\t PMQLight %1.0f, PMCLight %1.0f,  E_dep %1.2f\n ", 
103           fTrack,fPDGCode,fTrackTOF,fPrimKinEn,fSFlag,
104           fVolume[0],fVolume[1],fXImpact,fYImpact,
105           fLightPMQ,fLightPMC,fEnergy);
106 }