parameters have been redistributed; Hits2SDigits etc ... introduce
[u/mrichter/AliRoot.git] / PHOS / AliPHOSHit.h
1 #ifndef ALIPHOSHIT_H
2 #define ALIPHOSHIT_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 //_________________________________________________________________________
9 //  Hits class for PHOS     
10 //  A hit in PHOS is the sum of all hits in a single crystal
11 //               
12 //*-- Author: Maxime Volkov (RRC KI) & Yves Schutz (SUBATECH)
13
14 // --- ROOT system ---
15
16 // --- AliRoot header files ---
17 #include "AliHit.h"
18
19 // --- Standard library ---
20
21 #include <iostream.h>
22
23 class TLorentzVector ;
24
25 class AliPHOSHit : public AliHit {
26
27   friend ostream& operator << (ostream&, const AliPHOSHit&) ;
28   
29  public:
30   
31   AliPHOSHit() {
32     // default ctor 
33   }
34   AliPHOSHit(const AliPHOSHit & hit) ; 
35   AliPHOSHit(Int_t shunt, Int_t primary, Int_t tracknumber, Int_t id, Float_t *hits, Int_t pid, TLorentzVector p, Float_t *xy);
36   virtual ~AliPHOSHit(void) {
37     // dtor 
38   }  
39   
40   Float_t GetEnergy(void)   const { 
41     // returns the energy loss for this hit 
42     return fELOS ; 
43   }
44   Int_t   GetId(void)       const { 
45     // return the identificator of this his
46     return fId ; 
47   }
48   Int_t   GetPid(void)      const { 
49     // return the particle PDG code which initiates this hit
50     return fPid ; 
51   }
52   Int_t   GetPrimary(void)  const { 
53     // returns the primary particle id at the origine of this hit 
54     return fPrimary ; 
55   }
56   TLorentzVector GetMomentum()  { return  fMomentum; }   
57     // momentum of the particle which initiated this hit
58
59   Bool_t operator == (AliPHOSHit const &rValue) const ;
60   AliPHOSHit operator + (const AliPHOSHit& rValue) const ;
61
62
63  private:
64
65   Int_t          fId ;        // Absolute Id number of PHOS Xtal or PPSD pad
66   Float_t        fELOS ;      // Energy deposited
67   Int_t          fPid ;       // type of the particle that initiates that hit 
68   Int_t          fPrimary ;   // Primary particles at the origine of the hit
69
70   TLorentzVector fMomentum;   // 4-momentum of the particle
71
72   ClassDef(AliPHOSHit,1)  // Hit for PHOS
73
74 } ;
75
76 //////////////////////////////////////////////////////////////////////////////
77
78 #endif // ALIPHOSHIT_H