]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITStrackerV2.h
Radiator to Pad goes static.
[u/mrichter/AliRoot.git] / ITS / AliITStrackerV2.h
index c606071299271dad95b3666bcc08500b1fbdd34c..b5983255ed4066293ed63bd7bd9471491cf2f821 100644 (file)
@@ -13,8 +13,9 @@
 #include "AliITStrackV2.h"
 
 class AliITSclusterV2;
+class AliESD;
 class AliITSgeom;
-class TFile;
+class TTree;
 
 
 //-------------------------------------------------------------------------
@@ -23,13 +24,22 @@ public:
   AliITStrackerV2():AliTracker(){}
   AliITStrackerV2(const AliITSgeom *geom);
   AliCluster *GetCluster(Int_t index) const;
-  void LoadClusters();
+  Int_t LoadClusters(TTree *cf);
   void UnloadClusters();
-  Int_t Clusters2Tracks(const TFile *in, TFile *out);
-  Int_t PropagateBack(const TFile *in, TFile *out);
+  Int_t Clusters2Tracks(TTree *in, TTree *out);
+  Int_t Clusters2Tracks(AliESD *event);
+  Int_t PropagateBack(TTree *in, TTree *out);
+  Int_t PropagateBack(AliESD *event);
+  Int_t RefitInward(TTree *in, TTree *out);
+  Int_t RefitInward(AliESD *event);
+  Bool_t RefitAt(Double_t x, AliITStrackV2 *seed, const AliITStrackV2 *t);
   void SetupFirstPass(Int_t *flags, Double_t *cuts=0);
   void SetupSecondPass(Int_t *flags, Double_t *cuts=0);
-  Bool_t RefitAt(Double_t x, AliITStrackV2 *t, Int_t *index);
+
+  void SetLastLayerToTrackTo(Int_t l=0) {fLastLayerToTrackTo=l;} 
+  void SetLayersNotToSkip(Int_t *l);
+
+  void UseClusters(const AliKalmanTrack *t, Int_t from=0) const;
 
   class AliITSdetector {
   public:
@@ -53,6 +63,8 @@ public:
     void SelectClusters(Double_t zmi,Double_t zma,Double_t ymi,Double_t yma);
     const AliITSclusterV2 *GetNextCluster(Int_t &ci);
     void *operator new(size_t s, AliITSlayer *p) {return p;}
+    void ResetRoad();
+    Double_t GetRoad() const {return fRoad;}
     Double_t GetR() const {return fR;}
     AliITSclusterV2 *GetCluster(Int_t i) const {return fClusters[i];} 
     AliITSdetector &GetDetector(Int_t n) const { return fDetectors[n]; }
@@ -75,6 +87,7 @@ public:
     Double_t fYmin;      //   of  the
     Double_t fYmax;      //   "window"
     Int_t fI;            // index of the current cluster within the "window"
+    Double_t fRoad;      // road defined by the cluster density
     Int_t FindClusterIndex(Double_t z) const;
   };
 
@@ -98,6 +111,11 @@ private:
   AliITStrackV2 fTrackToFollow;          // followed track
   Int_t fPass;                           // current pass through the data 
   Int_t fConstraint[2];                  // constraint flags
+
+  Int_t fLayersNotToSkip[kMaxLayer];     // layer masks
+  Int_t fLastLayerToTrackTo;             // the innermost layer to track to
+
+  ClassDef(AliITStrackerV2,1)   //ITS tracker V2
 };