-/**************************************************************************
+ /**************************************************************************
* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* *
* Author: The ALICE Off-line Project. *
//_________________________________________________________________________
// Hits class for EMCAL
-// A hit in EMCAL is the sum of all hits in a single segment
-// from a single enterring particle
+// A hit in EMCAL is the sum of all hits in a tower
+// from a single entering particle
//*-- Author: Sahal Yacoob (LBL / UCT)
// Based on AliPHOSHit
// --- Standard library ---
-#include <stdio.h>
-#include <string.h>
-#include <stdlib.h>
-#include <Rstrstream.h>
#include <Riostream.h>
// --- ROOT system ---
-#include <TLorentzVector.h>
// --- AliRoot header files ---
#include "AliEMCALHit.h"
-#include "AliRun.h"
-#include "AliConst.h"
-#include "AliEMCALGeometry.h"
-#include "AliEMCALGetter.h"
+using std::endl;
ClassImp(AliEMCALHit)
//______________________________________________________________________
-AliEMCALHit::AliEMCALHit(){
+AliEMCALHit::AliEMCALHit()
+ : fId(0),
+ fELOS(0.),
+ fPrimary(0),
+ fPx(0.),
+ fPy(0.),
+ fPz(0.),
+ fPe(0.),
+ fIparent(0),
+ fIenergy(0.),
+ fTime(0.)
+{
// Default ctor
-
- fId = 0;
- fELOS = 0.0;
- fTime = 0.0;
- fPrimary = 0;
- fTrack = 0;
- fX = 0.0;
- fY = 0.0;
- fZ = 0.0;
- fPx = 0.0;
- fPy = 0.0;
- fPz = 0.0;
- fPe = 0.0;
- fIparent = 0;
- fIenergy = 0.0;
}
+
//______________________________________________________________________
-AliEMCALHit::AliEMCALHit(const AliEMCALHit & hit){
+AliEMCALHit::AliEMCALHit(const AliEMCALHit & hit)
+ : AliHit(hit),
+ fId(hit.fId),
+ fELOS(hit.fELOS),
+ fPrimary(hit.fPrimary),
+ fPx(hit.fPx),
+ fPy(hit.fPy),
+ fPz(hit.fPz),
+ fPe(hit.fPe),
+ fIparent(hit.fIparent),
+ fIenergy(hit.fIenergy),
+ fTime(hit.fTime)
+{
// copy ctor
-
- fId = hit.fId ;
- fELOS = hit.fELOS ;
- fPrimary = hit.fPrimary ;
- fTrack = hit.fTrack ;
- fX = hit.fX;
- fY = hit.fY;
- fZ = hit.fZ;
- fPx = hit.fPx;
- fPy = hit.fPy;
- fPz = hit.fPz;
- fPe = hit.fPe;
- fIparent = hit.fIparent;
- fIenergy = hit.fIenergy;
- fTime = hit.fTime ;
+}
+//_____________________________________________________________________
+AliEMCALHit& AliEMCALHit::operator = (const AliEMCALHit &source)
+{ // assignment operator; use copy ctor
+ if (&source == this) return *this;
+
+ new (this) AliEMCALHit(source);
+ return *this;
}
//______________________________________________________________________
AliEMCALHit::AliEMCALHit(Int_t shunt, Int_t primary, Int_t track,Int_t iparent, Float_t ienergy, Int_t id,
- Float_t *hits,Float_t *p):AliHit(shunt, track){
+ Float_t *hits,Float_t *p)
+ : AliHit(shunt, track),
+ fId(id),
+ fELOS(0.),
+ fPrimary(primary),
+ fPx(0.),
+ fPy(0.),
+ fPz(0.),
+ fPe(0.),
+ fIparent(iparent),
+ fIenergy(ienergy),
+ fTime(0.)
+{
//
// Create an EMCAL hit object
//
fY = hits[1];
fZ = hits[2];
fTime = hits[3] ;
- fId = id;
fELOS = hits[4];
- fPrimary = primary;
fPx = p[0];
fPy = p[1];
fPz = p[2];
fPe = p[3];
- fIparent = iparent;
- fIenergy = ienergy;
}
-//______________________________________________________________________
-const Bool_t AliEMCALHit::IsInPreShower() const
-{
- Bool_t rv = kFALSE ;
-
- const AliEMCALGeometry * geom = AliEMCALGetter::GetInstance()->EMCALGeometry() ;
- if((GetId()/geom->GetNPhi()) < (2*geom->GetNZ()))
- rv = kTRUE;
- return rv;
-}
-
//______________________________________________________________________
Bool_t AliEMCALHit::operator==(AliEMCALHit const &rValue) const{
// Two hits are identical if they have the same Id and originat
// from the same enterring Particle
Bool_t rv = kFALSE;
- if ( (fId == rValue.GetId()) && ( fIparent == rValue.GetIparent()) )
+ if ( (fId == rValue.GetId()) && ( fIparent == rValue.GetIparent()))
rv = kTRUE;
return rv;