X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TRD%2FAliTRDclusterizerV1.h;h=b46a5d68898ebb2861dc78195a62cbb914bf631c;hb=72600597e34e128f6b1e58cc3ebd220aeec02a5b;hp=84af1afa725d1f2cf343519ac64eb1663f1098f0;hpb=f7336fa340f7adeb921e498ff17d93105430eaf8;p=u%2Fmrichter%2FAliRoot.git diff --git a/TRD/AliTRDclusterizerV1.h b/TRD/AliTRDclusterizerV1.h index 84af1afa725..b46a5d68898 100644 --- a/TRD/AliTRDclusterizerV1.h +++ b/TRD/AliTRDclusterizerV1.h @@ -1,17 +1,22 @@ -#ifndef TRDclusterizerV1_h -#define TRDclusterizerV1_h +#ifndef ALITRDCLUSTERIZERV1_H +#define ALITRDCLUSTERIZERV1_H /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ /* $Id$ */ -#include "AliTRD.h" -#include "AliTRDsegmentArray.h" +//////////////////////////////////////////////////////////////////////////// +// // +// TRD cluster finder // +// // +//////////////////////////////////////////////////////////////////////////// + #include "AliTRDclusterizer.h" -/////////////////////////////////////////////////////// -// Finds and handles cluster (slow simulation) // -/////////////////////////////////////////////////////// +class AliTRDdataArrayI; +class AliTRDdataArrayF; +class AliTRDdigitsManager; +class AliRawReader; class AliTRDclusterizerV1 : public AliTRDclusterizer { @@ -19,36 +24,28 @@ class AliTRDclusterizerV1 : public AliTRDclusterizer { AliTRDclusterizerV1(); AliTRDclusterizerV1(const Text_t* name, const Text_t* title); - ~AliTRDclusterizerV1(); - - virtual void Init(); - virtual Bool_t MakeCluster(); - virtual Bool_t ReadDigits(); - - virtual void SetDigitsArray(AliTRDsegmentArray *Array) { fDigitsArray = Array; }; + AliTRDclusterizerV1(const AliTRDclusterizerV1 &c); + virtual ~AliTRDclusterizerV1(); + AliTRDclusterizerV1 &operator=(const AliTRDclusterizerV1 &c); - virtual void SetClusMaxThresh(Float_t thresh) { fClusMaxThresh = thresh; }; - virtual void SetClusSigThresh(Float_t thresh) { fClusSigThresh = thresh; }; - virtual void SetClusMethod(Int_t meth) { fClusMethod = meth; }; - - virtual Float_t GetClusMaxThresh() { return fClusMaxThresh; }; - virtual Float_t GetClusSigThresh() { return fClusSigThresh; }; - virtual Int_t GetClusMethod() { return fClusMethod; }; + virtual void Copy(TObject &c) const; + virtual Bool_t MakeClusters(); + virtual Bool_t ReadDigits(); + virtual Bool_t ReadDigits(AliRawReader* rawReader); protected: - AliTRDsegmentArray *fDigitsArray; //! Array of detector segments containing the digits - - Float_t fClusMaxThresh; // Threshold value for cluster maximum - Float_t fClusSigThresh; // Threshold value for cluster signal - Int_t fClusMethod; // Clustering method - - private: + void DeConvExp(Double_t *source, Double_t *target + , Int_t nTimeTotal, Int_t nexp); + void Transform(AliTRDdataArrayI* digitsIn, AliTRDdataArrayF* digitsOut + , Int_t idet, Int_t nRowMax, Int_t nColMax + , Int_t nTimeTotal, Float_t ADCthreshold); + virtual Double_t Unfold(Double_t eps, Int_t plane, Double_t *padSignal); + Double_t GetCOG(Double_t signal[5]); - virtual Float_t Unfold(Float_t eps, Float_t *padSignal); - virtual Float_t PadResponse(Float_t x); + AliTRDdigitsManager *fDigitsManager; //! TRD digits manager - ClassDef(AliTRDclusterizerV1,1) // TRD-Cluster manager, slow simulator + ClassDef(AliTRDclusterizerV1,5) // TRD-Cluster finder, slow simulator };