]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TRD/AliTRDclusterizerV1.h
Return the most probable momentum if the magnetic field is too weak and the momentum...
[u/mrichter/AliRoot.git] / TRD / AliTRDclusterizerV1.h
index 614cca7c4ed11a45547ff844f98aaad953bca772..c2b5de0051b1eca8d1b467a451d844e56cb1abc4 100644 (file)
@@ -1,69 +1,49 @@
-#ifndef ALITRDCLUSTERIZERV1_h
-#define ALITRDCLUSTERIZERV1_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 "AliTRDdigitsManager.h"
 #include "AliTRDclusterizer.h"
 
 ///////////////////////////////////////////////////////
 //  Finds and handles cluster (slow simulation)      //
 ///////////////////////////////////////////////////////
 
+class AliTRDdataArrayI;
+class AliTRDdataArrayF;
+class AliTRDdigitsManager;
+class AliRawReader;
+
 class AliTRDclusterizerV1 : public AliTRDclusterizer {
 
  public:
 
   AliTRDclusterizerV1();
   AliTRDclusterizerV1(const Text_t* name, const Text_t* title);
-  AliTRDclusterizerV1(AliTRDclusterizerV1 &c);
+  AliTRDclusterizerV1(const AliTRDclusterizerV1 &c);
   virtual ~AliTRDclusterizerV1();
+  AliTRDclusterizerV1 &operator=(const AliTRDclusterizerV1 &c);
 
-  virtual void    Copy(AliTRDclusterizerV1 &c);
-  virtual void    Init();
-  virtual Bool_t  MakeCluster();
-  virtual Bool_t  ReadDigits();
-
-  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;    };
-
-  inline  AliTRDclusterizerV1 &operator=(AliTRDclusterizerV1 &c);
+  virtual void     Copy(TObject &c) const;
+  virtual Bool_t   MakeClusters();
+  virtual Bool_t   ReadDigits();
+  virtual Bool_t   ReadDigits(AliRawReader* rawReader);
 
  protected:
 
-  AliTRDdigitsManager *fDigitsManager; //! TRD digits manager
-
-  Float_t              fClusMaxThresh; // Threshold value for cluster maximum
-  Float_t              fClusSigThresh; // Threshold value for cluster signal
-  Int_t                fClusMethod;    // Clustering method
+  AliTRDdigitsManager *fDigitsManager;      //! TRD digits manager
 
  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]);      // get COG position
 
-  virtual Float_t  Unfold(Float_t eps, Float_t *padSignal);
-  virtual Float_t  PadResponse(Float_t x);
-
-  ClassDef(AliTRDclusterizerV1,1)      // TRD-Cluster manager, slow simulator
+  ClassDef(AliTRDclusterizerV1,5)           // TRD-Cluster finder, slow simulator
 
 };
 
-//_____________________________________________________________________________
-AliTRDclusterizerV1 &AliTRDclusterizerV1::operator=(AliTRDclusterizerV1 &c)
-{
-  //
-  // Assignment operator
-  //
-
-  if (this != &c) c.Copy(*this);
-  return *this;
-
-}
-
 #endif