]> git.uio.no Git - u/mrichter/AliRoot.git/blob - EMCAL/AliEMCALClusterizer.h
Now complete fixes to calls for MeanMaterialBudget (now in AliTracker) (From Jouri...
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALClusterizer.h
1 #ifndef ALIEMCALCLUSTERIZER_H
2 #define ALIEMCALCLUSTERIZER_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 //  Base class for the clusterization algorithm (pure abstract)
10 //*-- Author: Yves Schutz (SUBATECH) & Dmitri Peressounko (SUBATECH & Kurchatov Institute)
11 // Modif: 
12 //  August 2002 Yves Schutz: clone PHOS as closely as possible and intoduction
13 //                           of new  IO (à la PHOS)
14 // --- ROOT system ---
15
16 #include "TTask.h" 
17 #include "AliConfig.h"
18
19 // --- Standard library ---
20
21 // --- AliRoot header files ---
22
23 class AliEMCALClusterizer : public TTask {
24
25 public:
26
27   AliEMCALClusterizer() ;        // default ctor
28   AliEMCALClusterizer(const TString alirunFileName, const TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ;
29   AliEMCALClusterizer(const AliEMCALClusterizer &); //copy ctor
30   virtual ~AliEMCALClusterizer() ; // dtorEM
31
32   virtual Float_t GetTowerClusteringThreshold()const {Warning("GetTowerClusteringThreshold", "Not Defined") ; return 0. ; }
33   virtual Float_t GetTowerLocalMaxCut()const {Warning("GetTowerLocalMaxCut", "Not Defined") ; return 0. ; }
34   virtual Float_t GetTowerLogWeight()const {Warning("GetTowerLogWeight", "Not Defined") ; return 0. ; }
35   virtual Float_t GetTimeCut() const {Warning("GetTimeCut", "Not Defined") ; return 0. ; }
36   virtual const char *  GetRecPointsBranch() const {Warning("GetRecPointsBranch", "Not Defined") ; return 0 ; }
37   virtual Int_t GetRecPointsInRun()  const {Warning("GetRecPointsInRun", "Not Defined") ; return 0 ; }
38   virtual const char *  GetDigitsBranch() const  {Warning("GetDigitsBranch", "Not Defined") ; return 0 ; }
39
40   virtual void MakeClusters() = 0;
41
42   virtual void SetECAClusteringThreshold(Float_t) = 0;
43   virtual void SetECALocalMaxCut(Float_t)         = 0;
44   virtual void SetECALogWeight(Float_t)           = 0;
45   virtual void SetTimeCut(Float_t)                = 0;
46   virtual void SetUnfolding(Bool_t)               = 0;
47   void SetEventFolderName(TString name) { fEventFolderName = name ; }
48
49   AliEMCALClusterizer & operator = (const AliEMCALClusterizer & /*rvalue*/)  {return *this ;} 
50
51   virtual const char * Version() const {Warning("Version", "Not Defined") ; return 0 ; } 
52
53 protected:
54   TString fEventFolderName ;  // event folder name
55
56   ClassDef(AliEMCALClusterizer,0)  // Clusterization algorithm class 
57 } ;
58
59 #endif // AliEMCALCLUSTERIZER_H