]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PHOS/AliPHOSFastRecParticle.h
Removal of useless dependecies via forward declarations
[u/mrichter/AliRoot.git] / PHOS / AliPHOSFastRecParticle.h
1 #ifndef ALIPHOSFASTRECPARTICLE_H
2 #define ALIPHOSFASTRECPARTICLE_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  Particle modified by PHOS response and produced by AliPHOSvFast
10 //  To become a general class of AliRoot ?    
11 //               
12 //*-- Author: Yves Schutz (SUBATECH)
13
14 // --- ROOT system ---
15
16 #include "TParticle.h"
17 #include "TVector3.h"
18
19 // --- Standard library ---
20
21 // --- AliRoot header files ---
22
23 class AliPHOSFastRecParticle : public TParticle {
24
25  public:
26   
27   AliPHOSFastRecParticle() {
28     // ctor 
29   };         
30   AliPHOSFastRecParticle(const AliPHOSFastRecParticle & rp) ;  // ctor
31   AliPHOSFastRecParticle(const TParticle & p) ;  // ctor
32   virtual ~AliPHOSFastRecParticle(){
33     // dtor
34   }
35   virtual Int_t DistancetoPrimitive(Int_t px, Int_t py) ; 
36   virtual void Draw(Option_t *option) ;  
37   virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py) ;
38   Int_t GetIndexInList() const { 
39     // returns the index of this in the list
40     return fIndexInList ; 
41   } 
42   virtual Int_t * GetPrimaries(Int_t & number) ;
43   Int_t GetType() { 
44     // returns the type of the particle
45     return fType ; 
46   } 
47   TString Name() ; 
48   virtual void Paint(Option_t * option="");
49   virtual void Print(const char *) ; 
50   void SetPrimary(Int_t index) { 
51     // sets the primary particle index
52     fPrimary = index ; 
53   }
54   void SetType(Int_t type) { 
55     // sets the particle type 
56     fType = type ; 
57   } 
58   void SetIndexInList(Int_t val) { 
59     // sets the value of the index in the list 
60     fIndexInList = val ; 
61   } 
62
63   enum EParticleType { kUNDEFINED=-1, kNEUTRALEM,  kNEUTRALHA,  kGAMMA , kGAMMAHA , 
64                        kABSURDEM,  kABSURDHA ,  kELECTRON, kCHARGEDHA } ; 
65
66   typedef TClonesArray  FastRecParticlesList ; 
67
68  protected:
69
70   Int_t fIndexInList ; // the index of this RecParticle in the list stored in TreeR (to be set by analysis)
71   Int_t fPrimary ;     // (unique) primary particle index 
72   Int_t fType ;        // particle type obtained by "virtual" reconstruction
73
74  private:
75
76
77   ClassDef(AliPHOSFastRecParticle,1)  // Reconstructed Particle produced by the fast simulation 
78
79 };
80
81 #endif // AliPHOSFASTRECPARTICLE_H