]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PHOS/AliPHOSHit.cxx
Adding histos
[u/mrichter/AliRoot.git] / PHOS / AliPHOSHit.cxx
index f29774283a1810b9cce26123c82037fb47d24cf7..4c1bf85e1aef92feb44bff7797af99dd4406de08 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 ---
 
 // --- 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"
-
-
 
 ClassImp(AliPHOSHit)
-
-//____________________________________________________________________________
-AliPHOSHit::AliPHOSHit(const AliPHOSHit & hit) 
+  
+  //____________________________________________________________________________
+AliPHOSHit::AliPHOSHit(const AliPHOSHit & hit) :
+  AliHit(hit),fId(hit.fId),fELOS(hit.fELOS),fTime(hit.fTime)
 {
-   // copy ctor
-   
-  fX       = hit.fX ; 
-  fY       = hit.fY ; 
-  fZ       = hit.fZ ; 
-  fId      = hit.fId ; 
-  fELOS    = hit.fELOS ;
-  fPrimary = hit.fPrimary ; 
-  fTrack   = hit.fTrack ; 
-
+  // copy ctor
 } 
 
 //____________________________________________________________________________
-AliPHOSHit::AliPHOSHit(Int_t shunt, Int_t primary, Int_t track, Int_t id, Float_t *hits): AliHit(shunt, track)
+AliPHOSHit::AliPHOSHit(Int_t shunt, Int_t track, Int_t id, Float_t *hits) : 
+  AliHit(shunt, track),fId(0),fELOS(0),fTime(0)
 {
   //
   // Create a CPV hit object
   //
-
-  fId         = id ;
+  
   fX          = hits[0] ;
   fY          = hits[1] ;
   fZ          = hits[2] ;
-  fELOS       = hits[3] ;
-  fPrimary    = primary ;
-}
-//____________________________________________________________________________
-Float_t AliPHOSHit::X() const
-{
-    TVector3  pos ;
-    AliPHOSGetter * gime = AliPHOSGetter::GetInstance() ;  
-    ((AliPHOSGeometry *) gime->PHOSGeometry()) ->RelPosInAlice(GetId(),  pos);
-    return pos.X();
-}
-//____________________________________________________________________________
-Float_t AliPHOSHit::Y() const
-{
-    TVector3  pos ;
-    AliPHOSGetter * gime = AliPHOSGetter::GetInstance() ;  
-    ((AliPHOSGeometry *) gime->PHOSGeometry()) ->RelPosInAlice(GetId(),  pos);
-    return pos.Y();
-}
-//____________________________________________________________________________
-Float_t AliPHOSHit::Z() const
-{
-    TVector3  pos ;
-    AliPHOSGetter * gime = AliPHOSGetter::GetInstance() ;  
-    ((AliPHOSGeometry *) gime->PHOSGeometry()) ->RelPosInAlice(GetId(),  pos);
-    return pos.Z() ;
+  fTime       = hits[3] ;
+  fId         = id ;
+  fELOS       = hits[4] ;
 }
-
-
 //____________________________________________________________________________
 Bool_t AliPHOSHit::operator==(AliPHOSHit const &rValue) const
 { 
@@ -103,31 +59,29 @@ Bool_t AliPHOSHit::operator==(AliPHOSHit const &rValue) const
 
   Bool_t rv = kFALSE ; 
 
-  if ( (fId == rValue.GetId()) && ( fPrimary == rValue.GetPrimary() ) )
+  if ( (fId == rValue.GetId()) && ( fTrack == rValue.GetPrimary() ) )
     rv = kTRUE;
   
   return rv;
 }
 
+//____________________________________________________________________________
+AliPHOSHit & AliPHOSHit::operator = (const AliPHOSHit &)
+{
+  Fatal("operator =", "not implemented");
+  return *this;
+}
 //____________________________________________________________________________
 AliPHOSHit AliPHOSHit::operator+(const AliPHOSHit &rValue)
 {
   // Add the energy of the hit
   
   fELOS += rValue.GetEnergy() ;
+
+  if(rValue.GetTime() < fTime)
+    fTime = rValue.GetTime() ;
     
    return *this;
 
 }
 
-//____________________________________________________________________________
-ostream& operator << (ostream& out, const AliPHOSHit& hit) 
-{
-  // Print out Id and energy 
-  
-  out << "AliPHOSHit = " << hit.GetId() << " " << hit.GetEnergy() << endl ;
-  return out ;
-}
-
-
-