]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ZDC/AliZDCHit.cxx
LHAPDF veraion 5.9.1
[u/mrichter/AliRoot.git] / ZDC / AliZDCHit.cxx
index c9eb05a8b2fee1ccd7e7e4fc0820bb54809be800..e641968b9123d18dee70ab59ec061fb87bf6202d 100644 (file)
@@ -34,8 +34,11 @@ AliZDCHit::AliZDCHit() :
   fSFlag(0),
   fLightPMQ(0.),
   fLightPMC(0.),
-  fEnergy(0.) 
-
+  fEnergy(0.), 
+  fPDGCode(0),
+  fMotherPDGCode(0),
+  fTrackTOF(0.),
+  fTrackEta(0.)
 {
   //
   // Default constructor
@@ -52,7 +55,11 @@ AliZDCHit::AliZDCHit(Int_t shunt, Int_t track, Int_t *vol, Float_t *hits) :
   fSFlag(hits[6]),
   fLightPMQ(hits[7]),
   fLightPMC(hits[8]),
-  fEnergy(hits[9]) 
+  fEnergy(hits[9]), 
+  fPDGCode((Int_t) hits[10]),
+  fMotherPDGCode((Int_t) hits[11]),
+  fTrackTOF(hits[12]),
+  fTrackEta(hits[13])
 
 {
   //
@@ -74,7 +81,11 @@ AliZDCHit::AliZDCHit(const AliZDCHit &oldhit) :
   fSFlag(oldhit.GetSFlag()),
   fLightPMQ(oldhit.GetLightPMQ()), 
   fLightPMC(oldhit.GetLightPMC()),
-  fEnergy(oldhit.GetEnergy())
+  fEnergy(oldhit.GetEnergy()),
+  fPDGCode(oldhit.GetPDGCode()),
+  fMotherPDGCode(oldhit.GetMotherPDGCode()),
+  fTrackTOF(oldhit.GetTrackTOF()),
+  fTrackEta(oldhit.GetTrackEta())
 {
   // Copy constructor
   fX = oldhit.X();
@@ -82,15 +93,42 @@ AliZDCHit::AliZDCHit(const AliZDCHit &oldhit) :
   fZ = oldhit.Z();
   for(Int_t i=0; i<2; i++) fVolume[i] = oldhit.GetVolume(i);
 }
+
+//_____________________________________________________________________________
+AliZDCHit &AliZDCHit::operator= (const AliZDCHit &hit) 
+{
+  //assignemnt operator
+  if(&hit == this) return *this;
+  
+  fPrimKinEn = hit.GetPrimKinEn();
+  fXImpact = hit.GetXImpact();
+  fYImpact = hit.GetYImpact();  
+  fSFlag = hit.GetSFlag();
+  fLightPMQ = hit.GetLightPMQ(); 
+  fLightPMC = hit.GetLightPMC();
+  fEnergy = hit.GetEnergy();
+  fPDGCode = hit.GetPDGCode();
+  fMotherPDGCode = hit.GetMotherPDGCode();
+  fTrackTOF = hit.GetTrackTOF();
+  fTrackEta = hit.GetTrackEta();
+
+  fX = hit.X();
+  fY = hit.Y();
+  fZ = hit.Z();
+  for(Int_t i=0; i<2; i++) fVolume[i] = hit.GetVolume(i);
+  
+  return *this;
+}
   
   
 //_____________________________________________________________________________
 void AliZDCHit::Print(Option_t *) const 
 {
    // Print method
-   printf(" -> HIT: vol[0] =  %d vol[1] =  %d Track: %d \n" 
-         "  Primary E = %f, Ximpact = %f, Yimpact = %f, SFlag = %f\n"
-          "  PMQLight = %f, PMCLight = %f,  Deposited E = %f\n ", 
-          fVolume[0],fVolume[1],fTrack,fPrimKinEn,fXImpact,fYImpact,
-          fSFlag,fLightPMQ,fLightPMC,fEnergy);
+   printf("\t **** AliZDCHit: track %d eta %f PDGcode %d TOF %1.1f ns E_prim = %1.2f GeV \n" 
+         "\t DETECTOR (%d, %d)  (X, Y)_impact (%1.2f, %1.2f) cm  Secflag %1.0f\n"
+          "\t PMQLight %1.0f, PMCLight %1.0f,  E_dep %1.2f\n ", 
+          fTrack,fTrackEta,fPDGCode,fTrackTOF,fPrimKinEn,
+         fVolume[0],fVolume[1],fXImpact,fYImpact,fSFlag,
+          fLightPMQ,fLightPMC,fEnergy);
 }