Track points are moved according to vertex position so vertex is in (0,0,0)
authorskowron <skowron@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 14 Jun 2004 09:12:25 +0000 (09:12 +0000)
committerskowron <skowron@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 14 Jun 2004 09:12:25 +0000 (09:12 +0000)
HBTAN/AliHBTReaderESD.cxx
HBTAN/AliHBTTrackPoints.cxx
HBTAN/AliHBTTrackPoints.h

index 53988462feb01f2bc5a07fc6b153ca20fea13a5c..14eae7fbed51f652344d6494b620fe00cadfedfd 100644 (file)
@@ -419,12 +419,14 @@ Int_t AliHBTReaderESD::ReadESD(AliESD* esd)
       if (fNTrackPoints > 0) 
        {
          tpts = new AliHBTTrackPoints(fNTrackPoints,esdtrack,mf,fdR);
       if (fNTrackPoints > 0) 
        {
          tpts = new AliHBTTrackPoints(fNTrackPoints,esdtrack,mf,fdR);
+         tpts->Move(-vertexpos[0],-vertexpos[1],-vertexpos[2]);
        }
       
       AliHBTTrackPoints* itstpts = 0x0;
       if (fITSTrackPoints) 
        {
          itstpts = new AliHBTTrackPoints(AliHBTTrackPoints::kITS,esdtrack);
        }
       
       AliHBTTrackPoints* itstpts = 0x0;
       if (fITSTrackPoints) 
        {
          itstpts = new AliHBTTrackPoints(AliHBTTrackPoints::kITS,esdtrack);
+         itstpts->Move(-vertexpos[0],-vertexpos[1],-vertexpos[2]);
        }
       
 
        }
       
 
index 7fe5222146d499f4b7085efeacd62c3de4243032..b7795cdbfa68166cbe884d660a1611b68394325d 100644 (file)
@@ -308,6 +308,18 @@ void AliHBTTrackPoints::PositionAt(Int_t n, Float_t &x,Float_t &y,Float_t &z)
 }
 /***************************************************************/
 
 }
 /***************************************************************/
 
+void AliHBTTrackPoints::Move(Float_t x, Float_t y, Float_t z)
+{
+//Moves all points about vector
+ for (Int_t i = 0; i<fN; i++)
+   {
+     fX[i]+=x;
+     fY[i]+=y;
+     fZ[i]+=z;
+   }   
+}
+/***************************************************************/
+
 Double_t AliHBTTrackPoints::AvarageDistance(const AliHBTTrackPoints& tr)
 {
   //returns the aritmethic avarage distance between two tracks
 Double_t AliHBTTrackPoints::AvarageDistance(const AliHBTTrackPoints& tr)
 {
   //returns the aritmethic avarage distance between two tracks
@@ -630,3 +642,4 @@ void AliHBTTrackPoints::testtpc(Int_t entr)
   
   delete rl;
 }
   
   delete rl;
 }
+
index cd7450ba45f876a5293f2f23c17cfd5474c3d9e0..d0bf0ee6a47be8c54cd60780b3c1f360d7c8d532 100644 (file)
@@ -34,6 +34,8 @@ class AliHBTTrackPoints: public TObject
     
     Double_t AvarageDistance(const AliHBTTrackPoints& tr);
     void PositionAt(Int_t n, Float_t &x, Float_t &y, Float_t &z);
     
     Double_t AvarageDistance(const AliHBTTrackPoints& 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 GetDebug() const {return fgDebug;}
     void  SetDebug(Int_t deblevel){fgDebug = deblevel;} 
     static void testtpc(Int_t entr);
     Int_t GetDebug() const {return fgDebug;}
     void  SetDebug(Int_t deblevel){fgDebug = deblevel;} 
     static void testtpc(Int_t entr);