]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - MUON/AliMUONClusterFinderVS.h
From Artur:
[u/mrichter/AliRoot.git] / MUON / AliMUONClusterFinderVS.h
index 6d432dfc867013bbdeed6bfbbeb3c0f71959226b..d3ccb5c38378c44a7a58790b69df1dd008a158c7 100644 (file)
@@ -4,6 +4,7 @@
  * See cxx source for full Copyright notice                               */
 
 /* $Id$ */
+// Revision of includes 07/05/2004
 
 ////////////////////////////////////////////////
 //  MUON Cluster Finder Class                 //
 
 #include <TObject.h>
 
+class TClonesArray;
+
 class AliMUONClusterInput;
 class AliMUONHitMapA1;
-class AliMUONResponse;
-class AliSegmentation;
-class TClonesArray;
+class AliMUONGeometrySegmentation;
 class AliMUONRawCluster;
 class AliMUONDigit;
 
@@ -24,8 +25,7 @@ class AliMUONClusterFinderVS : public TObject
 {
  public:
     AliMUONClusterFinderVS();
-    AliMUONClusterFinderVS(const AliMUONClusterFinderVS& clusterFinder);
-    virtual ~AliMUONClusterFinderVS(){;}
+    virtual ~AliMUONClusterFinderVS();
 // Decluster ?
     virtual void SetDeclusterFlag(Int_t flag=1) {fDeclusterFlag =flag;}
 // Set max. cluster size ; bigger clusters will deconvoluted
@@ -52,20 +52,24 @@ class AliMUONClusterFinderVS : public TObject
     virtual void   FillCluster(AliMUONRawCluster *cluster, Int_t cath);
     virtual void   FillCluster(AliMUONRawCluster *cluster) {FillCluster(cluster,1,0);}
 // Add a new raw cluster    
-    virtual void AddRawCluster(const AliMUONRawCluster cluster);
+    virtual void AddRawCluster(AliMUONRawCluster& cluster);
 //  Set tracks for debugging    
     virtual void SetTracks(Int_t t1, Int_t t2) {fTrack[0]=t1; fTrack[1]=t2;}
-    virtual Bool_t TestTrack(Int_t t);
-//  Assignment operator
-    AliMUONClusterFinderVS & operator = (const AliMUONClusterFinderVS& rhs);
-//  debug level
-    void SetDebugLevel(Int_t level) {fDebugLevel = level;}
     void SetGhostChi2Cut(Float_t cut) {fGhostChi2Cut = cut;}
+// get raw cluster pointer 
+    TClonesArray*  GetRawClusters() {return fRawClusters;}
+// reset raw clusters
+    void ResetRawClusters();
 
  protected:
-    AliMUONClusterInput*    fInput;              // ! AliMUONClusterInput instance
-    AliMUONHitMapA1*        fHitMap[2];          // Hit Maps for cathode 1 and 2
-    AliSegmentation*        fSeg[2];             // Segmentations for cathode 1 and 2
+    AliMUONClusterFinderVS(const AliMUONClusterFinderVS& clusterFinder);
+//  Assignment operator
+    AliMUONClusterFinderVS & operator = (const AliMUONClusterFinderVS& rhs);
+
+    AliMUONClusterInput*          fInput;              // ! AliMUONClusterInput instance
+    AliMUONHitMapA1*              fHitMap[2];          // Hit Maps for cathode 1 and 2
+    AliMUONGeometrySegmentation*  fSeg2[2];            // New Segmentations for cathode 1 and 2
+
     
 // Configuration    
     Int_t                   fDeclusterFlag;      // flag for declusterin
@@ -74,11 +78,13 @@ class AliMUONClusterFinderVS : public TObject
     Float_t                 fGhostChi2Cut;       // Cut in charge matching chi2
                                                 // (2 degrees of freedom)
                                                  // Used by ghost removal
-// Current decluster result    
+    // Current decluster result    
     Int_t                   fMul[2];             // current multiplicity
     Int_t                   fNPeaks;             // number of local maxima
     Int_t                   fNRawClusters;       // Number of Raw Clusters
-// Local data store    
+    TClonesArray*           fRawClusters;        // array of cluster per ch.
+
+    // Local data store    
     AliMUONDigit*           fDig[100][2];        // current list of digits 
     Int_t                   fIx[100][2];         // current list of x-pad-coord.
     Int_t                   fIy[100][2];         // current list of y-pad-coord.
@@ -91,7 +97,7 @@ class AliMUONClusterFinderVS : public TObject
     Float_t                 fZPlane;             // currenz z-plane position
     Int_t                   fSector;             // current sector
     
-// Current Fit
+    // Current Fit
     Double_t                 fXFit[2];         // x-coordinate
     Double_t                 fYFit[2];         // y-coordinate
     Double_t                 fQrFit[2];        // charge ratio
@@ -101,14 +107,13 @@ class AliMUONClusterFinderVS : public TObject
     Float_t                  fQrInit[2];       // start values
     Int_t                    fFitStat;         // status of fit
     
-// Selected track for debugging
+    // Selected track for debugging
     Int_t                    fTrack[2];        // Only digits with main contributions from these tracks are
-                                               // considered 
-    Int_t                    fDebugLevel;      // prinout control
-
-//  Return pointer to raw clusters    
-    ClassDef(AliMUONClusterFinderVS,1) //Class for clustering and reconstruction of space points
-};
+    // considered 
+    
+    //  Return pointer to raw clusters    
+    ClassDef(AliMUONClusterFinderVS,2) //Class for clustering and reconstruction of space points
+      };
 #endif