]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EMCAL/AliEMCALPIDv1.h
5b483a7920dc6766ad61eca5373396c8d769ec66
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALPIDv1.h
1 #ifndef ALIEMCALPIDV1_H
2 #define ALIEMCALPIDV1_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 //_________________________________________________________________________
10 // Implementation version v1 of the EMCAL particle identifier 
11 // Identification is based on information from CPV and EMC
12 // Oh yeah                 
13 //*-- Author: Yves Schutz (SUBATECH), Gustavo Conesa.
14
15 // --- ROOT system ---
16 //class TFormula ;
17 class TVector3 ;
18 class TPrincipal ;
19
20 // --- Standard library ---
21
22 // --- AliRoot header files ---
23 class AliEMCALRecPoint ;
24
25 #include "AliEMCALPID.h"
26
27 class  AliEMCALPIDv1 : public AliEMCALPID {
28   
29  public:
30   
31   AliEMCALPIDv1() ;          // ctor            
32   AliEMCALPIDv1(const TString alirunFileNameFile, const TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ;
33   AliEMCALPIDv1(const AliEMCALPIDv1 & pid) ;          // cpy ctor            
34
35   virtual ~AliEMCALPIDv1() ; // dtor
36   
37   virtual void Exec(Option_t * option) ;
38
39   virtual Int_t GetRecParticlesInRun() const  {return fRecParticlesInRun ;}  
40   Float_t  GetCalibratedEnergy    (Float_t e)                 const;
41   TVector3 GetMomentumDirection(AliEMCALRecPoint * emc)const ;
42
43   virtual void Print(Option_t * option) const ;
44  
45   //To turn on or off the Pi0 analysis
46   Bool_t GetPi0Analysis() const {return fPi0Analysis;}
47   void  SetPi0Analysis(Bool_t turnonoff){ fPi0Analysis = turnonoff; }
48    
49  private:
50   
51   const TString BranchName() const ; 
52   virtual void Init() ;
53   virtual void InitParameters() ;
54   void     MakeRecParticles(void ) ;
55   void     PrintRecParticles(Option_t * option) ;
56   virtual  void WriteRecParticles() ; 
57   void Unload(); 
58
59   void Print() const ; 
60
61   virtual const char * Version() const { return "pid-v1" ; }  
62
63   AliEMCALPIDv1 & operator = (const AliEMCALPIDv1 & /*pid*/) { return *this ;} 
64
65  private:
66
67   Bool_t  fDefaultInit;        //! Says if the task was created by defaut ctor (only parameters are initialized)
68   Int_t   fNEvent ;            //! current event number
69   TString fFileName ;          // File that contains the Principal file for analysis
70   TString fFileNamePar ;       // File that contains the parameters for analysis
71   Bool_t  fPi0Analysis;        //! Pi0 analysis on or off  
72   Int_t   fRecParticlesInRun ; //! Total number of recparticles in one run
73
74   ClassDef( AliEMCALPIDv1,8)  // Particle identifier implementation version 1
75
76 };
77
78 #endif // AliEMCALPIDV1_H