]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/UPGRADE/AliITSURecoSens.h
Implementation of v1 geometry, interface to reco
[u/mrichter/AliRoot.git] / ITS / UPGRADE / AliITSURecoSens.h
index 56ed68232fc05d31b26fa7988ce5ed0762c91a70..1065cc5c399f9f2a7c296a3b122e59e8b5b9f474 100644 (file)
@@ -14,7 +14,8 @@
 class AliITSURecoSens : public TObject
 {
  public:
-  enum {kNghbR,kNghbTR,kNghbT,kNghbTL,kNghbL,kNghbBL,kNghbB,kNghbBR,kNNeighbors}; // neighbors: Top,Left etc
+  //
+  enum {kLeft=BIT(1),kRight=BIT(2),kUp=BIT(3),kDown=BIT(4)};
   //
   AliITSURecoSens(Int_t id);
   AliITSURecoSens(const AliITSURecoSens &source); 
@@ -22,6 +23,7 @@ class AliITSURecoSens : public TObject
   AliITSURecoSens& operator=(const AliITSURecoSens &source); 
   //
   Int_t              GetID()                       const {return (int)GetUniqueID();}
+  Int_t              CheckCoverage(double phi, double z) const;
   Double_t           GetXTF()                      const {return fXTF;}
   Double_t           GetPhiTF()                    const {return fPhiTF;}
   Double_t           GetPhiMin()                   const {return fPhiMin;}
@@ -29,15 +31,12 @@ class AliITSURecoSens : public TObject
   Double_t           GetZMin()                     const {return fZMin;}
   Double_t           GetZMax()                     const {return fZMax;}
   //
-  Int_t              GetNeighborID(int i)          const {return fNeighbors[i];}
-  //
   Int_t              GetNClusters()                const {return fNClusters;}
   Int_t              GetFirstClusterId()           const {return fFirstClusterId;}
   //
   void               SetID(Int_t i)                      {SetUniqueID(i);}
   void               SetXTF(double v)                    {fXTF = v;}
   void               SetPhiTF(double v)                  {fPhiTF = v;}
-  void               SetNeighborID(int i, int id)        {fNeighbors[i] = id;}
   void               SetBoundaries(double phiMn,double phiMx, double zMn, double zMx);
   //
   void               SetNClusters(Int_t ncl)             {fNClusters = ncl;}
@@ -47,9 +46,12 @@ class AliITSURecoSens : public TObject
   void               ProcessClusters(Int_t mode=0);
   //
   virtual void       Print(Option_t* option = "")  const;
-
+  //
+  virtual Bool_t     IsSortable()                 const {return kTRUE;}
+  virtual Int_t             Compare(const TObject* obj)  const;
+  virtual Bool_t     IsEqual(const TObject* obj)  const {return Compare(obj)==0;}
+  //
  protected:
-  Int_t              fNeighbors[kNNeighbors];      // id of neighbors  
   Int_t              fNClusters;                   // number of clusters
   Int_t              fFirstClusterId;              // index of the 1st cluster in the layer's clusters array
   Double_t           fXTF;                         // X in tracking frame