]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/AliTRDclusterizerV1.h
New version of SPD raw-data reconstruction. The format now correponds to the actual...
[u/mrichter/AliRoot.git] / TRD / AliTRDclusterizerV1.h
index 84af1afa725d1f2cf343519ac64eb1663f1098f0..b46a5d68898ebb2861dc78195a62cbb914bf631c 100644 (file)
@@ -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
 
 };