]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSHit.cxx
Adaption to new fluka common blocks (E. Futo)
[u/mrichter/AliRoot.git] / PHOS / AliPHOSHit.cxx
index c43c7a31c224090567ccc0c936acba415c48762d..18a6070c29c37e0ef5b954846149a4c5ed390dfd 100644 (file)
 //  Hits class for PHOS     
 //  A hit in PHOS is the sum of all hits in a single crystal
 //*--
-//*-- Author: Maxime Volkov (RRC KI) & Yves Schutz (SUBATECH)
+//*-- Author: Maxime Volkov (RRC KI) & Yves Schutz (SUBATECH) & Dmitri Peressounko (RRC KI & SUBATECH)
 
 // --- ROOT system ---
+#include "TVector3.h"
 
 // --- Standard library ---
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <strstream.h>
 
 // --- AliRoot header files ---
 #include "AliPHOSHit.h"
 #include "AliRun.h"
-#include "AliConst.h"
-#include "AliPHOSGetter.h"
-#include "AliPHOSGeometry.h"
 #include "AliPHOS.h"
-
-
+#include "AliPHOSGeometry.h"
 
 ClassImp(AliPHOSHit)
-
-//____________________________________________________________________________
-AliPHOSHit::AliPHOSHit(const AliPHOSHit & hit) 
+  
+  //____________________________________________________________________________
+  AliPHOSHit::AliPHOSHit(const AliPHOSHit & hit) 
 {
-   // copy ctor
-   
+  // copy ctor
   fX       = hit.fX ; 
   fY       = hit.fY ; 
   fZ       = hit.fZ ; 
@@ -53,8 +45,8 @@ AliPHOSHit::AliPHOSHit(const AliPHOSHit & hit)
   fELOS    = hit.fELOS ;
   fPrimary = hit.fPrimary ; 
   fTrack   = hit.fTrack ; 
-
+  fTime    = hit.fTime  ;
+  
 } 
 
 //____________________________________________________________________________
@@ -63,41 +55,57 @@ AliPHOSHit::AliPHOSHit(Int_t shunt, Int_t primary, Int_t track, Int_t id, Float_
   //
   // Create a CPV hit object
   //
-
-  fId         = id ;
+  
   fX          = hits[0] ;
   fY          = hits[1] ;
   fZ          = hits[2] ;
-  fELOS       = hits[3] ;
+  fTime       = hits[3] ;
+  fId         = id ;
+  fELOS       = hits[4] ;
   fPrimary    = primary ;
 }
-
 //____________________________________________________________________________
 Float_t AliPHOSHit::X() const
 {
+  //  if(fX < -1000.){
     TVector3  pos ;
     AliPHOS * phos = static_cast<AliPHOS*> (gAlice->GetDetector("PHOS")) ;
     phos->GetGeometry() ->RelPosInAlice(GetId(),  pos) ;
     return pos.X() ;
+    //    fX = pos.X() ;
+    //    fY = pos.Y() ;
+    //    fZ = pos.Z() ;
+    //  }
+    //  return fX;
 }
-
 //____________________________________________________________________________
 Float_t AliPHOSHit::Y() const
 {
+  //  if(fY < -1000.){
     TVector3  pos ;
     AliPHOS * phos = static_cast<AliPHOS*> (gAlice->GetDetector("PHOS")) ;
     phos->GetGeometry() ->RelPosInAlice(GetId(),  pos) ;
-    return pos.Y() ;
+    return pos.Y(); 
+    //    fX = pos.X() ;
+    //    fY = pos.Y() ;
+    //    fZ = pos.Z() ;
+    //  }
+    //  return fY;
 }
 //____________________________________________________________________________
 Float_t AliPHOSHit::Z() const
 {
+  //  if(fY < -1000.){
     TVector3  pos ;
     AliPHOS * phos = static_cast<AliPHOS*> (gAlice->GetDetector("PHOS")) ;
     phos->GetGeometry() ->RelPosInAlice(GetId(),  pos) ;
     return pos.Z() ;
+    //    fX = pos.X() ;
+    //    fY = pos.Y() ;
+    //    fZ = pos.Z() ;
+    //  }
+    //  return fZ;
 }
-
 //____________________________________________________________________________
 Bool_t AliPHOSHit::operator==(AliPHOSHit const &rValue) const
 { 
@@ -117,6 +125,9 @@ AliPHOSHit AliPHOSHit::operator+(const AliPHOSHit &rValue)
   // Add the energy of the hit
   
   fELOS += rValue.GetEnergy() ;
+
+  if(rValue.GetTime() < fTime)
+    fTime = rValue.GetTime() ;
     
    return *this;
 
@@ -127,9 +138,29 @@ ostream& operator << (ostream& out, const AliPHOSHit& hit)
 {
   // Print out Id and energy 
   
-  out << "AliPHOSHit = " << hit.GetId() << " " << hit.GetEnergy() << endl ;
+  //out << "AliPHOSHit = " << hit.GetId() << " " << hit.GetEnergy() << "  " << hit.GetTime() << endl ;
+  Warning("operator <<", "Implement differently") ; 
   return out ;
 }
 
 
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+