1 #ifndef ALIPHOSCLUSTERIZER_H
2 #define ALIPHOSCLUSTERIZER_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
10 //*-- Author: Yves Schutz (SUBATECH) & Dmitri Peressounko (SUBATECH & Kurchatov Institute)
11 // --- ROOT system ---
14 #include "AliConfig.h"
18 // --- Standard library ---
20 // --- AliRoot header files ---
22 class AliPHOSClusterizer : public TTask {
26 AliPHOSClusterizer() ; // default ctor
27 AliPHOSClusterizer(const TString alirunFileName, const TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ;
28 AliPHOSClusterizer(const AliPHOSClusterizer & clusterizer) : TTask(clusterizer) { ; }
29 virtual ~AliPHOSClusterizer() ; // dtor
30 virtual Float_t GetEmcClusteringThreshold()const {Warning("GetEmcClusteringThreshold", "Not Defined" ) ; return 0. ; }
31 virtual Float_t GetEmcLocalMaxCut()const {Warning("GetEmcLocalMaxCut", "Not Defined" ) ; return 0. ; }
32 virtual Float_t GetEmcLogWeight()const {Warning("GetEmcLogWeight", "Not Defined" ) ; return 0. ; }
33 virtual Float_t GetEmcTimeGate() const {Warning("GetEmcTimeGate", "Not Defined" ) ; return 0. ; } ;
34 virtual Float_t GetCpvClusteringThreshold()const {Warning("GetCpvClusteringThreshold", "Not Defined" ) ; return 0. ; }
35 virtual Float_t GetCpvLocalMaxCut()const {Warning("GetCpvLocalMaxCut", "Not Defined" ) ; return 0. ; }
36 virtual Float_t GetCpvLogWeight()const {Warning("GetCpvLogWeight", "Not Defined" ) ; return 0. ; }
37 virtual Int_t GetRecPointsInRun() const {Warning("GetRecPointsInRun", "Not Defined" ) ; return 0 ; }
39 virtual void MakeClusters() {Warning("MakeClusters", "Not Defined" ) ; }
40 virtual void Print()const {Warning("Print", "Not Defined" ) ; }
42 virtual void SetEmcClusteringThreshold(Float_t) = 0;
43 virtual void SetEmcLocalMaxCut(Float_t ) = 0;
45 virtual void SetEmcLogWeight(Float_t) = 0;
46 virtual void SetEmcTimeGate(Float_t) = 0;
47 virtual void SetCpvClusteringThreshold(Float_t) = 0;
48 virtual void SetCpvLocalMaxCut(Float_t) = 0;
49 virtual void SetCpvLogWeight(Float_t) = 0;
50 virtual void SetUnfolding(Bool_t) = 0;
51 void SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
52 void SetEventFolderName(TString name) { fEventFolderName = name ; }
54 AliPHOSClusterizer & operator = (const AliPHOSClusterizer & /*rvalue*/) {return *this ;}
56 virtual const char * Version() const {Warning("Version", "Not Defined" ) ; return 0 ; }
59 TString fEventFolderName ; // event folder name
60 Int_t fFirstEvent; // first event to process
61 Int_t fLastEvent; // last event to process
63 ClassDef(AliPHOSClusterizer,4) // Clusterization algorithm class
67 #endif // AliPHOSCLUSTERIZER_H