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 */
8 //_________________________________________________________________________
9 // Base class for the clusterization algorithm (pure abstract)
10 //*-- Author: Yves Schutz (SUBATECH) & Dmitri Peressounko (SUBATECH & Kurchatov Institute)
12 // August 2002 Yves Schutz: clone PHOS as closely as possible and intoduction
13 // of new IO (à la PHOS)
14 // --- ROOT system ---
17 #include "AliConfig.h"
19 // --- Standard library ---
21 // --- AliRoot header files ---
23 class AliEMCALClusterizer : public TTask {
27 AliEMCALClusterizer() ; // default ctor
28 AliEMCALClusterizer(const TString alirunFileName, const TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ;
29 virtual ~AliEMCALClusterizer() ; // dtorEM
31 virtual Float_t GetTowerClusteringThreshold()const {Warning("GetTowerClusteringThreshold", "Not Defined") ; return 0. ; }
32 virtual Float_t GetTowerLocalMaxCut()const {Warning("GetTowerLocalMaxCut", "Not Defined") ; return 0. ; }
33 virtual Float_t GetTowerLogWeight()const {Warning("GetTowerLogWeight", "Not Defined") ; return 0. ; }
34 virtual Float_t GetTimeGate() const {Warning("GetTimeGate", "Not Defined") ; return 0. ; }
35 virtual const char * GetRecPointsBranch() const {Warning("GetRecPointsBranch", "Not Defined") ; return 0 ; }
36 virtual Int_t GetRecPointsInRun() const {Warning("GetRecPointsInRun", "Not Defined") ; return 0 ; }
37 virtual const char * GetDigitsBranch() const {Warning("GetDigitsBranch", "Not Defined") ; return 0 ; }
39 virtual void MakeClusters() = 0;
41 virtual void SetECAClusteringThreshold(Float_t) = 0;
42 virtual void SetECALocalMaxCut(Float_t) = 0;
43 virtual void SetECALogWeight(Float_t) = 0;
44 virtual void SetTimeGate(Float_t) = 0;
45 virtual void SetUnfolding(Bool_t) = 0;
46 void SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
47 void SetEventFolderName(TString name) { fEventFolderName = name ; }
49 AliEMCALClusterizer & operator = (const AliEMCALClusterizer & /*rvalue*/) {return *this ;}
51 virtual const char * Version() const {Warning("Version", "Not Defined") ; return 0 ; }
54 TString fEventFolderName ; // event folder name
55 Int_t fFirstEvent; // first event to process
56 Int_t fLastEvent; // last event to process
58 ClassDef(AliEMCALClusterizer,4) // Clusterization algorithm class
62 #endif // AliEMCALCLUSTERIZER_H