]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSClusterFinderSPD.h
AliMUONGeometryStore replaced with AliMpExMap (used as the type
[u/mrichter/AliRoot.git] / ITS / AliITSClusterFinderSPD.h
index b202c9c13f8bedef2af6529b103c114b6e8a8ad0..8a50682531145ba8c5f8d2734251d74b4675e07c 100644 (file)
@@ -6,45 +6,50 @@
 ////////////////////////////////////////////////
 
 #include "AliITSClusterFinder.h"
+#include "AliITSDetTypeRec.h"
 
 class AliITSMapA1;
+class AliITSsegmentation;
+class AliITSsegmentationSPD;
+class AliITSresponse;
+class AliITSresponseSPD;
+class TClonesArray;
+
 
 class AliITSClusterFinderSPD : public AliITSClusterFinder{
  public:
-    AliITSClusterFinderSPD(AliITSsegmentation *segmentation,
-                          TClonesArray *digits, TClonesArray *recpoints);
     AliITSClusterFinderSPD();
-    virtual ~AliITSClusterFinderSPD(){// destructor
-    }
+    AliITSClusterFinderSPD(AliITSDetTypeRec* dettyp);
+    AliITSClusterFinderSPD(AliITSDetTypeRec* dettyp,
+                          TClonesArray *digits,TClonesArray *recpoints);
+    virtual ~AliITSClusterFinderSPD(){}// destructor
+    //Returns fSegmentation
+    virtual AliITSsegmentationSPD* GetSeg()const{
+        return (AliITSsegmentationSPD*)fDetTypeRec->GetSegmentationModel(0);}  
+    virtual void SetDx(Double_t dx=1.) {fDx=dx;}// set dx
+    virtual void SetDz(Double_t dz=0.) {fDz=dz;}// set dz
+    // Search for clusters
+    virtual void FindRawClusters(Int_t module); 
+    void  DigitToPoint(Int_t nclus, Double_t *xcenter, Double_t *zcenter,
+                       Double_t *errxcenter,Double_t *errzcenter,
+                       Int_t *tr1clus, Int_t *tr2clus, Int_t *tr3clus);
+    void  ClusterFinder(Int_t ndigits,Int_t digx[],Int_t digz[],
+                        Int_t digtr1[],Int_t digtr2[],Int_t digtr3[],
+                        Int_t digtr4[],
+                        Int_t &nclus,
+                        Double_t xcenter[],Double_t zcenter[],
+                        Double_t errxcenter[],Double_t errzcenter[],  
+                        Int_t tr1clus[],Int_t tr2clus[], Int_t tr3clus[]);
+ protected:
     // copy constructor
     AliITSClusterFinderSPD(const AliITSClusterFinderSPD &source);
     // assignment operator
     AliITSClusterFinderSPD& operator=(const AliITSClusterFinderSPD &source);
-  
-    virtual void SetDx(Float_t dx=1.) {// set dx
-       fDx=dx;}
-    virtual void SetDz(Float_t dz=0.) {// set dz
-       fDz=dz;}
-    // Search for clusters
-    virtual void FindRawClusters(Int_t module); 
-    void  DigitToPoint(Int_t nclus, Float_t *xcenter, Float_t *zcenter,
-                      Float_t *errxcenter,Float_t *errzcenter,
-                      Int_t *tr1clus, Int_t *tr2clus, Int_t *tr3clus);
-    void  ClusterFinder(Int_t ndigits,Int_t digx[],Int_t digz[],
-                       Int_t digtr1[],Int_t digtr2[],Int_t digtr3[],
-                       Int_t digtr4[],
-                       Int_t &nclus,
-                       Float_t xcenter[],Float_t zcenter[],
-                       Float_t errxcenter[],Float_t errzcenter[],  
-                       Int_t tr1clus[],Int_t tr2clus[], Int_t tr3clus[],
-                       Int_t module);
- private:
-    TClonesArray       *fClusters;      // clusters
-    Int_t               fNclusters;     // num of clusters
-    Float_t             fDz;            // dz
-    Float_t             fDx;            // dx
+
+    Double_t             fDz;            // dz
+    Double_t             fDx;            // dx
     Int_t               fMinNCells;     // min num of cells in the cluster
   
-    ClassDef(AliITSClusterFinderSPD,1)  // SPD clustering
+    ClassDef(AliITSClusterFinderSPD,2)  // SPD clustering
 };
 #endif