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 /* History of cvs commits:
11 * Revision 1.37 2005/05/28 14:19:04 schutz
12 * Compilation warnings fixed by T.P.
16 //_________________________________________________________________________
17 // Base class for the clusterization algorithm
18 //*-- Author: Yves Schutz (SUBATECH) & Dmitri Peressounko (SUBATECH & Kurchatov Institute)
19 // --- ROOT system ---
22 #include "AliConfig.h"
23 #include "AliRawReaderFile.h"
27 // --- Standard library ---
29 // --- AliRoot header files ---
31 class AliPHOSClusterizer : public TTask {
35 AliPHOSClusterizer() ; // default ctor
36 AliPHOSClusterizer(const TString alirunFileName, const TString eventFolderName = AliConfig::GetDefaultEventFolderName()) ;
37 AliPHOSClusterizer(const AliPHOSClusterizer & clusterizer) : TTask(clusterizer) { ; }
38 virtual ~AliPHOSClusterizer() ; // dtor
39 virtual Float_t GetEmcClusteringThreshold()const {Warning("GetEmcClusteringThreshold", "Not Defined" ) ; return 0. ; }
40 virtual Float_t GetEmcLocalMaxCut()const {Warning("GetEmcLocalMaxCut", "Not Defined" ) ; return 0. ; }
41 virtual Float_t GetEmcLogWeight()const {Warning("GetEmcLogWeight", "Not Defined" ) ; return 0. ; }
42 virtual Float_t GetEmcTimeGate() const {Warning("GetEmcTimeGate", "Not Defined" ) ; return 0. ; } ;
43 virtual Float_t GetCpvClusteringThreshold()const {Warning("GetCpvClusteringThreshold", "Not Defined" ) ; return 0. ; }
44 virtual Float_t GetCpvLocalMaxCut()const {Warning("GetCpvLocalMaxCut", "Not Defined" ) ; return 0. ; }
45 virtual Float_t GetCpvLogWeight()const {Warning("GetCpvLogWeight", "Not Defined" ) ; return 0. ; }
46 virtual Int_t GetRecPointsInRun() const {Warning("GetRecPointsInRun", "Not Defined" ) ; return 0 ; }
48 virtual void MakeClusters() {Warning("MakeClusters", "Not Defined" ) ; }
49 virtual void Print(const Option_t * = "")const {Warning("Print", "Not Defined" ) ; }
51 virtual void SetEmcClusteringThreshold(Float_t) = 0;
52 virtual void SetEmcLocalMaxCut(Float_t ) = 0;
54 virtual void SetEmcLogWeight(Float_t) = 0;
55 virtual void SetEmcTimeGate(Float_t) = 0;
56 virtual void SetCpvClusteringThreshold(Float_t) = 0;
57 virtual void SetCpvLocalMaxCut(Float_t) = 0;
58 virtual void SetCpvLogWeight(Float_t) = 0;
59 virtual void SetUnfolding(Bool_t) = 0;
60 void SetEventRange(Int_t first=0, Int_t last=-1) {fFirstEvent=first; fLastEvent=last; }
61 void SetEventFolderName(TString name) { fEventFolderName = name ; }
62 void SetRawReader(AliRawReader *reader) {fRawReader = reader;}
64 AliPHOSClusterizer & operator = (const AliPHOSClusterizer & /*rvalue*/) {return *this ;}
66 virtual const char * Version() const {Warning("Version", "Not Defined" ) ; return 0 ; }
69 TString fEventFolderName ; // event folder name
70 Int_t fFirstEvent; // first event to process
71 Int_t fLastEvent; // last event to process
72 AliRawReader *fRawReader; // reader of raw data
74 ClassDef(AliPHOSClusterizer,4) // Clusterization algorithm class
78 #endif // AliPHOSCLUSTERIZER_H