X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PHOS%2FAliPHOSClusterizerv1.h;h=e005a681f70501106daa7b5b820643a0479cb321;hb=ef86816883a6040f79a1c97c974a183d6ca3ffb8;hp=e85bd5288540aebe56a5076f237d0493a434f8f6;hpb=a01512bad9f813713d64c2388f4201cc31168d08;p=u%2Fmrichter%2FAliRoot.git diff --git a/PHOS/AliPHOSClusterizerv1.h b/PHOS/AliPHOSClusterizerv1.h index e85bd528854..e005a681f70 100644 --- a/PHOS/AliPHOSClusterizerv1.h +++ b/PHOS/AliPHOSClusterizerv1.h @@ -5,6 +5,14 @@ /* $Id$ */ +/* History of cvs commits: + * + * $Log$ + * Revision 1.43 2005/05/28 14:19:04 schutz + * Compilation warnings fixed by T.P. + * + */ + //_________________________________________________________________________ // Implementation version 1 of the clusterization algorithm // Performs clusterization (collects neighbouring active cells) and @@ -15,7 +23,7 @@ //*-- Author: Yves Schutz (SUBATECH) // --- ROOT system --- - +class TClonesArray ; // --- Standard library --- // --- AliRoot header files --- @@ -25,7 +33,7 @@ class AliPHOSEmcRecPoint ; class AliPHOSDigit ; class AliPHOSDigitizer ; class AliPHOSGeometry ; -class AliPHOSCalibrationDB ; +class AliPHOSCalibData ; class AliPHOSClusterizerv1 : public AliPHOSClusterizer { @@ -43,7 +51,7 @@ public: virtual Int_t AreNeighbours(AliPHOSDigit * d1, AliPHOSDigit * d2)const ; // Checks if digits are in neighbour cells - virtual Float_t Calibrate(Int_t amp, Int_t absId)const ; // Tranforms Amp to energy + virtual Float_t Calibrate(Int_t amp, Int_t absId) ; // Tranforms Amp to energy virtual void GetNumberOfClustersFound(int * numb )const{ numb[0] = fNumberOfEmcClusters ; numb[1] = fNumberOfCpvClusters ; } @@ -60,8 +68,10 @@ public: virtual void Exec(Option_t *option); // Does the job - void Print()const ; + void Print(const Option_t * = "")const ; + void SetEmcMinE(Float_t e){fEmcMinE = e ;} + void SetCpvMinE(Float_t e){fCpvMinE = e ;} virtual void SetEmcClusteringThreshold(Float_t cluth) { fEmcClusteringThreshold = cluth ; } virtual void SetEmcLocalMaxCut(Float_t cut) { fEmcLocMaxCut = cut ; } virtual void SetEmcLogWeight(Float_t w) { fW0 = w ; } @@ -69,11 +79,13 @@ public: virtual void SetCpvClusteringThreshold(Float_t cluth) { fCpvClusteringThreshold = cluth ; } virtual void SetCpvLocalMaxCut(Float_t cut) { fCpvLocMaxCut = cut ; } virtual void SetCpvLogWeight(Float_t w) { fW0CPV = w ; } - virtual void SetUnfolding(Bool_t toUnfold = kTRUE ) { fToUnfold = toUnfold ;} + virtual void SetUnfolding(Bool_t toUnfold = kTRUE ) { fToUnfold = toUnfold ;} + //Switch to "on flyght" mode, without writing to TreeR and file + void SetWriting(Bool_t toWrite = kFALSE){fWrite = toWrite;} static Double_t ShowerShape(Double_t r) ; // Shape of EM shower used in unfolding; //class member function (not object member function) static void UnfoldingChiSquare(Int_t & nPar, Double_t * Grad, Double_t & fret, Double_t * x, Int_t iflag) ; - // Chi^2 of the fit. Should be static to be passes to MINUIT + // Chi^2 of the fit. Should be static to be passed to MINUIT void Unload() ; virtual const char * Version() const { return "clu-v1"; } @@ -83,7 +95,7 @@ protected: virtual void MakeClusters( ) ; virtual Bool_t IsInEmc (AliPHOSDigit * digit)const ; // Tells if id digit is in EMC virtual Bool_t IsInCpv (AliPHOSDigit * digit)const ; // Tells if id digit is in CPV - + void CleanDigits(TClonesArray * digits) ; private: @@ -107,19 +119,22 @@ private: Int_t fEmcCrystals ; // number of EMC cristalls in PHOS Bool_t fToUnfold ; // To perform unfolding + Bool_t fWrite ; // Write RecPoints to TreeR Int_t fNumberOfEmcClusters ; // number of EMC clusters found Int_t fNumberOfCpvClusters ; // number of CPV clusters found //Calibration parameters - AliPHOSCalibrationDB * fCalibrationDB ; //! Calibration database if aval + AliPHOSCalibData * fCalibData ; //! Calibration database if aval Float_t fADCchanelEmc ; // width of one ADC channel in GeV Float_t fADCpedestalEmc ; // Float_t fADCchanelCpv ; // width of one ADC channel in CPV 'popugais' Float_t fADCpedestalCpv ; // - Float_t fEmcClusteringThreshold ; // minimum energy to include a EMC digit in a cluster - Float_t fCpvClusteringThreshold ; // minimum energy to include a CPV digit in a cluster + Float_t fEmcClusteringThreshold ; // minimum energy to start EMC cluster + Float_t fCpvClusteringThreshold ; // minimum energy to start CPV cluster + Float_t fEmcMinE ; // minimum energy of digit to be included into cluster + Float_t fCpvMinE ; // minimum energy of digit to be included into cluster Float_t fEmcLocMaxCut ; // minimum energy difference to distinguish local maxima in a cluster Float_t fW0 ; // logarithmic weight for the cluster center of gravity calculation Float_t fCpvLocMaxCut ; // minimum energy difference to distinguish local maxima in a CPV cluster