Coding conventions (F.Carminati)
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALPID.h
1 #ifndef ALIEMCALPID_H
2 #define ALIEMCALPID_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 //  Algorithm class for the identification of particles detected in EMCAL        
10 //  base  class                             
11 //  of identified particles                
12 //*-- Author: Yves Schutz (SUBATECH)
13
14 // --- ROOT system ---
15
16 #include "TTask.h" 
17 #include "AliConfig.h"
18 class TFormula ;
19 class TClonesArray ;
20
21 // --- Standard library ---
22
23 // --- AliRoot header files ---
24
25 class AliEMCALGeometry ;
26 class AliEMCALClusterizer ;
27 class AliEMCALTrackSegmentMaker ;
28
29 class AliEMCALPID : public TTask {
30
31  public:
32
33   AliEMCALPID() ;          // ctor            
34   AliEMCALPID(const TString alirunFileName, const TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ;
35   AliEMCALPID(const AliEMCALPID & pid):TTask(pid) {;} 
36   virtual ~AliEMCALPID() ; // dtor
37
38   virtual void Exec(Option_t *) = 0;
39   virtual const Int_t GetRecParticlesInRun()  const { Warning("GetRecParticlesInRun", "not defined" ) ; return 0 ;} 
40   virtual void Print() const { Warning("Print", "not defined" ) ;}
41   void SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
42   void SetEventFolderName(TString name) { fEventFolderName = name ; }
43   virtual void SetPREtoECADistanceCut(Float_t, TString, Float_t) { Warning("SetCpvtoEmcDistanceCut", "not defined" ) ;}
44   virtual void SetTimeGate(Float_t /*Cluster_En*/, TString /*Eff_Pur*/, Float_t /*gate*/) { Warning("SetTimeGate", "not defined" ) ; }
45   virtual const char * Version() const { Warning("Version", "not defined" ) ; return 0 ; }  
46   virtual void WriteRecParticles() = 0;
47
48 private: 
49   virtual void Init() { Warning("Init", "not defined" ) ; } 
50
51 protected:
52   TString fEventFolderName ;  // event folder name
53   Int_t   fFirstEvent;        // first event to process
54   Int_t   fLastEvent;         // last  event to process
55  
56   ClassDef(AliEMCALPID,3)  // Particle Identifier algorithm (base class)
57
58 } ;
59
60 #endif // ALIEMCALPID_H