]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - TPC/AliTPCtrackerMI.h
Proper initialization of all the data members
[u/mrichter/AliRoot.git] / TPC / AliTPCtrackerMI.h
index ad2987e98157761fb8e30386a404170b9120a122..2b9c347337b66ba7051977e13ed4d2e9c23840e4 100644 (file)
@@ -46,7 +46,7 @@ public:
   virtual Int_t LoadClusters (TTree * tree);
   Int_t  LoadClusters();
   void   UnloadClusters();
-
+  void   Transform(AliCluster * cluster);
   //
   void SetIO();  //set default IO from folders
   void SetIO(TTree * input, TTree * output, AliESD * event);
@@ -64,7 +64,7 @@ public:
    Int_t ReadSeeds(const TFile *in);
    TObjArray * GetSeeds(){return fSeeds;}
    //   
-   AliCluster * GetCluster (int) const {return 0;}
+   AliCluster * GetCluster(Int_t index) const {return (AliCluster*)GetClusterMI(index);}
    AliTPCclusterMI *GetClusterMI(Int_t index) const;
    Int_t Clusters2Tracks();
    virtual void  CookLabel(AliKalmanTrack *tk,Float_t wrong) const; 
@@ -195,6 +195,7 @@ private:
 
 private:
    inline AliTPCRow &GetRow(Int_t sec, Int_t row);
+   inline Bool_t     IsActive(Int_t sec, Int_t row);
    inline Double_t  GetXrow(Int_t row) const;
    inline Double_t  GetMaxY(Int_t row) const;
    inline Int_t GetRowNumber(Double_t x) const;
@@ -230,6 +231,7 @@ private:
    void Tracking(TObjArray * arr);
    TObjArray * Tracking(Int_t seedtype, Int_t i1, Int_t i2, Float_t cuts[4], Float_t dy=-1, Int_t dsec=0);
    TObjArray * Tracking();
+   TObjArray * TrackingSpecial();
    void SumTracks(TObjArray *arr1,TObjArray *arr2) const;
    void PrepareForBackProlongation(TObjArray * arr, Float_t fac) const;
    void PrepareForProlongation(TObjArray * arr, Float_t fac) const;
@@ -273,6 +275,15 @@ AliTPCtrackerMI::AliTPCRow & AliTPCtrackerMI::GetRow(Int_t sec, Int_t row)
   return (row>=fInnerSec->GetNRows()) ? fOuterSec[sec][row-fInnerSec->GetNRows()]:fInnerSec[sec][row];
 }
 
+Bool_t   AliTPCtrackerMI::IsActive(Int_t sec, Int_t row)
+{
+  //
+  // check if the given sector row is active 
+  //
+  return (row>=fInnerSec->GetNRows()) ? fOuterSec[sec][row-fInnerSec->GetNRows()].GetN()>0:fInnerSec[sec][row].GetN()>0;
+}
+
+
 Double_t  AliTPCtrackerMI::GetXrow(Int_t row) const {
   //  return (row>=fInnerSec->GetNRows()) ? fOuterSec->GetX(row-fInnerSec->GetNRows()):fInnerSec->GetX(row);
   return fXRow[row];