]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ANALYSIS/AliTrackPoints.h
Changed inheritance to include Reve::RenderElement; use ZTrans to store transformatio...
[u/mrichter/AliRoot.git] / ANALYSIS / AliTrackPoints.h
index ad1ac72a381bd8f2792f07c62fcd8de1a17065a9..95a903d9e02527a5e2ef62a6315e171249857115 100644 (file)
@@ -21,31 +21,40 @@ class AliESDtrack;
 class AliTrackPoints: public TObject
 {
   public:
-    enum ETypes{kITS = 1};
+    typedef enum
+      {//defines the type and the track points are calculated
+        kITS = 1,//points calculated in ITS, made out of the vector at vertex
+        kITSInnerFromVertexOuterFromTPC //for ITS, for 3 inner layers calculated out of the vector at vertex
+                                        //         for 3 outer ---------------//------------------ at inner TPC
+      } ETypes;
 
     AliTrackPoints();
-    AliTrackPoints(AliTrackPoints::ETypes type, AliESDtrack* track);
+    AliTrackPoints(AliTrackPoints::ETypes type, AliESDtrack* track, Float_t mf);
     AliTrackPoints(Int_t n, AliESDtrack* track, Float_t mf, Float_t dr=30,Float_t r0 = 84.1); //min TPC R  = 84.1; max TPC R =  246.6cm, 
     AliTrackPoints(Int_t n, AliTPCtrack* track, Float_t dr=30, Float_t r0 = 84.1); //min TPC R  = 84.1; max TPC R =  246.6cm, 
-//    AliTrackPoints(const AliTrackPoints& in);
     
     virtual ~AliTrackPoints();
-    AliTrackPoints& operator=(const AliTrackPoints& in);
     
     Double_t AvarageDistance(const AliTrackPoints& tr);
     void PositionAt(Int_t n, Float_t &x, Float_t &y, Float_t &z);
     void Move(Float_t x, Float_t y, Float_t z);
+    Int_t GetN() const {return fN;}
 
     Int_t GetDebug() const {return fgDebug;}
     void  SetDebug(Int_t deblevel){fgDebug = deblevel;} 
     static void Testtpc(Int_t entr);
     static void Testesd(Int_t entr,const char* fname = "AliESDs.root");
-
+    void Print(Option_t* /*option*/ = "") const;
+    
   protected:
     void MakePoints( Float_t dr, Float_t r0, Double_t x, Double_t* par, Double_t c, Double_t alpha);
     void MakeITSPoints(AliESDtrack* track);
+    void MakeITSPointsInnerFromVertexOuterFromTPC(AliESDtrack* track,Float_t mf);
     
   private:
+    AliTrackPoints(const AliTrackPoints& in);
+    AliTrackPoints& operator=(const AliTrackPoints& in);
+
     Int_t    fN;//number of points
     Float_t* fX;//[fN]positions at x
     Float_t* fY;//[fN]positions at y