Transition to NewIO
[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 TMatrix ;
19 class TPrincipal ;
20
21 // --- Standard library ---
22
23 // --- AliRoot header files ---
24 class AliEMCALEmcRecPoint ;
25 class AliEMCALRecPoint ;
26
27 #include "AliEMCALPID.h"
28
29 class  AliEMCALPIDv1 : public AliEMCALPID {
30   
31  public:
32   
33   AliEMCALPIDv1() ;          // ctor            
34   AliEMCALPIDv1(const TString alirunFileNameFile, const TString eventFolderName = AliConfig::fgkDefaultEventFolderName) ;
35   AliEMCALPIDv1(const AliEMCALPIDv1 & pid) ;          // cpy ctor            
36
37   virtual ~AliEMCALPIDv1() ; // dtor
38   
39   virtual void Exec(Option_t * option) ;
40
41   virtual const Int_t GetRecParticlesInRun() const  {return fRecParticlesInRun ;}  
42   
43   virtual void Print(Option_t * option) const {}
44   void Print() ; 
45   
46  
47   //To turn on or off the Pi0 analysis
48   const Bool_t GetPi0Analysis(){return fPi0Analysis;}
49   void  SetPi0Analysis(Bool_t turnonoff){ fPi0Analysis = turnonoff; }
50  
51   virtual const char * Version() const { return "pid-v1" ; }  
52   
53  private:
54   
55   const TString BranchName() const ; 
56   virtual void Init() ;
57   virtual void InitParameters() ;
58   void     MakeRecParticles(void ) ;
59   void     PrintRecParticles(Option_t * option) ;
60   virtual  void WriteRecParticles(Int_t event) ; 
61   void Unload(); 
62
63  private:
64
65   Bool_t  fDefaultInit;        //! Says if the task was created by defaut ctor (only parameters are initialized)
66   Int_t   fNEvent ;            //! current event number
67   TString fFileName ;          // File that contains the Principal file for analysis
68   TString fFileNamePar ;       // File that contains the parameters for analysis
69   Bool_t  fPi0Analysis;        //! Pi0 analysis on or off  
70   Int_t   fRecParticlesInRun ; //! Total number of recparticles in one run
71
72   ClassDef( AliEMCALPIDv1,7)  // Particle identifier implementation version 1
73
74 };
75
76 #endif // AliEMCALPIDV1_H