Adding extra check for GPU_FORCE_64BIT_PTR env var
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALHit.h
index 985c2d3..eedd291 100644 (file)
 //               
 //*-- Author: Sahal Yacoob (LBL /UCT) 
 // Based on AliPHOSHit
-#include <TLorentzVector.h>
+
 // --- AliRoot header files ---
 #include "AliHit.h"
 
-//class ostream;
+using std::ostream;
 
 class AliEMCALHit : public AliHit {
-    friend ostream& operator << (ostream&,AliEMCALHit&);
- public:
-    AliEMCALHit(); // default ctor
-    AliEMCALHit(const AliEMCALHit & hit);
-    AliEMCALHit(Int_t shunt, Int_t primary, Int_t tracknumber, Int_t iparent, Float_t ienergy, Int_t id,
-               Float_t *hits,Float_t *p);
-    virtual ~AliEMCALHit(void) {}// dtor
-    //returns the energy loss for this hit
-    Float_t GetEnergy(void) const{return fELOS;}
-    // return the identificator of this his
-    Int_t   GetId(void) const { return fId;}
-    // returns the primary particle id at the origine of this hit 
-    Int_t   GetPrimary(void) const{return fPrimary;}
-    // returns the energy/momentum LorentzVector of the enetering particle.
-    Int_t   GetIparent(void) const{return fIparent;}
-    Float_t   GetIenergy(void) const{return fIenergy;}
-
-    Float_t GetPx(void) const{return fPx;}
-    Float_t GetPy(void) const{return fPy;}
-    Float_t GetPz(void) const{return fPz;}
-    Float_t GetPe(void) const{return fPe;}
-    Bool_t operator == (AliEMCALHit const &rValue) const;
-    AliEMCALHit operator + (const AliEMCALHit& rValue);
+    
+  friend ostream& operator << (ostream&,AliEMCALHit&);
+public:
+  AliEMCALHit(); // default ctor
+  AliEMCALHit(const AliEMCALHit & hit);
+  AliEMCALHit& operator = (const AliEMCALHit& source) ;
+  AliEMCALHit(Int_t shunt, Int_t primary, Int_t tracknumber, Int_t iparent, Float_t ienergy, Int_t id, Float_t *hits,Float_t *p);
+  virtual ~AliEMCALHit(void) {}// dtor
+  //returns the energy loss for this hit
+  Float_t GetEnergy(void) const{return fELOS;}
+  // return the identificator of this his
+  Int_t   GetId(void) const { return fId;}
+  // returns the primary particle id at the origine of this hit 
+  Int_t   GetIparent(void) const{return fIparent;}
+  Float_t GetIenergy(void) const{return fIenergy;}
+  Int_t   GetPrimary(void) const{return fPrimary;}
+  // returns the energy/momentum LorentzVector of the enetering particle.
+  Float_t GetTime(void)     const {
+    // returns the time of the first energy deposition
+    return fTime ;}
+
+  Float_t GetPx(void) const{return fPx;}
+  Float_t GetPy(void) const{return fPy;}
+  Float_t GetPz(void) const{return fPz;}
+  Float_t GetPe(void) const{return fPe;}
+
+  void   SetIparent(Int_t iparent) {fIparent=iparent;}
+  void   SetPrimary(Int_t primary)  {fPrimary=primary;}
 
+  Bool_t operator == (AliEMCALHit const &rValue) const;
+  AliEMCALHit operator + (const AliEMCALHit& rValue);
+  
  private:
-    Int_t          fId;        // Absolute Id number EMCAL segment
-    Float_t        fELOS;      // Energy deposited
-    Int_t          fPrimary;   // Primary particles at the origin of the hit
-    Float_t        fPx;      // Primary partical enetrence momentum/energy
-    Float_t        fPy;      // Primary partical enetrence momentum/energy
-    Float_t        fPz;      // Primary partical enetrence momentum/energy
-    Float_t        fPe;      // Primary partical enetrence momentum/energy
-    Int_t          fIparent;   // Parent particle that entered emcal
-    Float_t        fIenergy;   // Initial energy of parent particle that enterred the emcal
-    ClassDef(AliEMCALHit,2)  // Hit for EMCAL
-
-};
+
+  Int_t          fId;        // Absolute Id number EMCAL segment
+  Float_t        fELOS;      // Energy deposited
+  Int_t          fPrimary;   // Primary particles at the origin of the hit
+  Float_t        fPx;      // Primary particle entrance momentum/energy
+  Float_t        fPy;      // Primary particle entrance momentum/energy
+  Float_t        fPz;      // Primary particle entrance momentum/energy
+  Float_t        fPe;      // Primary particle entrance momentum/energy
+  Int_t          fIparent;   // Parent particle that entered emcal
+  Float_t        fIenergy;   // Initial energy of parent particle that enterred the emcal
+  Float_t        fTime ;      // Time of the energy deposition
+  
+  ClassDef(AliEMCALHit,3)  // Hit for EMCAL
+    
+    };
+
 #endif // ALIEMCALHIT_H