86f5e79ae47d066e36e8f442462b8190f0095af2
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALRecParticle.h
1 #ifndef ALIEMCALRECPARTICLE_H
2 #define ALIEMCALRECPARTICLE_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 //  A Reconstructed Particle in EMCAL    
10 //  To become a general class of AliRoot ?        
11 //  why not      
12 //*-- Author: Yves Schutz (SUBATECH)
13
14 // --- ROOT system ---
15
16 // --- Standard library ---
17
18 // --- AliRoot header files ---
19
20 #include "AliESDtrack.h" 
21 #include "AliEMCALFastRecParticle.h"
22 class TParticle ;
23 #include  "TVector3.h"  
24
25 class AliEMCALRecParticle : public AliEMCALFastRecParticle {
26
27  public:
28   
29   AliEMCALRecParticle() ;  
30   AliEMCALRecParticle(const AliEMCALRecParticle & rp) ;  // ctor
31   virtual ~AliEMCALRecParticle(){  }
32
33   Int_t   GetEMCALRPIndex()const {    return fEMCALRecPoint ;  }
34   virtual Int_t GetNPrimariesToRecParticles() const ;
35   virtual Int_t GetNPrimaries() const ;
36   TVector3 GetPos() const { return fPos ; } 
37   virtual const TParticle * GetPrimary(Int_t index) const ;
38   const Double_t *GetPID();
39   void    SetDebug() { fDebug = kTRUE ; } 
40   void    SetPos(TVector3 pos) { fPos.SetXYZ( pos.X(), pos.Y(), pos.Z() ); } 
41   void    UnsetDebug() { fDebug = kFALSE ; }
42   void    SetRecPoint(Int_t index){fEMCALRecPoint = index; }
43
44   typedef TClonesArray RecParticlesList ; 
45   
46  private:
47
48   Int_t fEMCALRecPoint ; // pointer to the associated track segment in EMCAL  
49   Bool_t fDebug ; // to steer debug output 
50   TVector3 fPos ; // position in the global alice coordinate system 
51   Double_t fPID[AliPID::kSPECIESN] ; // PID probability densities
52
53   ClassDef(AliEMCALRecParticle,3)  // Reconstructed Particle
54 };
55
56 #endif // AliEMCALRECPARTICLE_H