]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSRecPoint.cxx
Fix of parsing bug related to the reading of the calib header. Added consistency...
[u/mrichter/AliRoot.git] / ITS / AliITSRecPoint.cxx
index e9c6fdbaffd231bff92224f06a791bcb3fd11d58..3ef645174e633b5f960198d1e1a287476b123dac 100644 (file)
@@ -30,7 +30,7 @@
 //  "trackingV2".
 ///////////////////////////////////////////////////////////////////////////////
 
-
+#include <TGeoMatrix.h>
 #include "AliITSRecPoint.h"
 #include "AliAlignObj.h"
 
@@ -55,7 +55,7 @@ fDeltaProb(0)
 
 //________________________________________________________________________
 AliITSRecPoint::AliITSRecPoint(Int_t *lab,Float_t *hit, Int_t *info, Bool_t local):
-AliCluster(AliAlignObj::LayerToVolUID((info[2]+AliAlignObj::kSPD1),lab[3]&0x3FF),hit,0,0,lab),
+AliCluster(AliGeomManager::LayerToVolUID((info[2]+AliGeomManager::kSPD1),lab[3]&0x3FF),hit,0,0,lab),
 fXloc(0),
 fZloc(0),
 fdEdX(0),
@@ -94,7 +94,8 @@ fDeltaProb(0)
       AliError(Form("Wrong ITS layer %d (0 -> 5)",fLayer));
       break;
     }
-
+    fXloc = hit[0];
+    fZloc = hit[1];
     Double_t lxyz[3] = {fXloc, 0, fZloc};
     Double_t txyz[3] = {0, 0, 0};
     GetTracking2LocalMatrix()->MasterToLocal(lxyz,txyz);
@@ -154,11 +155,16 @@ void AliITSRecPoint::Print(ostream *os){
  
     fmt = os->setf(ios::fixed);  // set fixed floating point output
     *os << GetLabel(0) << " " << GetLabel(1) << " " << GetLabel(2) << " ";
-    *os << fXloc << " " << fZloc << " " << fQ << " ";
     fmt = os->setf(ios::scientific); // set scientific for dEdX.
-    *os << fdEdX << " ";
+    *os << GetX() <<" " << GetY() << " " << GetZ() << " " ;
+    *os << GetSigmaY2() << " " << GetSigmaZ2() << " " << GetSigmaYZ() << " ";
+    fmt = os->setf(ios::fixed);
+    *os << GetVolumeId() << " "<< Misalign() /*fIsMisaligned*/ << " ";
+    fmt = os->setf(ios::scientific); // set scientific for dEdX.
+    *os << fXloc << " " << fZloc << " " << fdEdX << " ";
     fmt = os->setf(ios::fixed); // every fixed
-    *os << GetSigmaY2() << " " << GetSigmaZ2();
+    *os << fIndex <<" " << fQ << " "<<fLayer <<" "<<fNz<<" "<<fNy<<" ";
+    *os << fChargeRatio<<" " << fType << " " << fDeltaProb;
     os->flags(fmt); // reset back to old formating.
     return;
 }
@@ -167,17 +173,22 @@ void AliITSRecPoint::Read(istream *is){
 ////////////////////////////////////////////////////////////////////////
 // Standard input format for this class.
 ////////////////////////////////////////////////////////////////////////
-  Int_t lab[4];
-  Float_t hit[5];
-  lab[3] = 0; // ??
-  *is >> lab[0] >> lab[1] >> lab[2] >> hit[0] >> hit[1] >> hit[4];
-  *is >> fdEdX >> hit[2] >> hit[3];
-  Int_t info[3] = {0,0,0};
-  AliITSRecPoint rp(lab,hit,info,kTRUE);
-  *this = rp;
-
-  return;
+    Bool_t mis;
+    Int_t lab[4];
+    Float_t hit[6];
+    lab[3] = 0; // ??
+    *is >> lab[0] >> lab[1] >> lab[2];
+    SetLabel(lab[0],0); SetLabel(lab[1],1); SetLabel(lab[2],2);
+    *is >> hit[0] >> hit[1] >> hit[2] >> hit[3] >> hit[4] >> hit[5];
+    SetX(hit[0]);SetY(hit[1]);SetZ(hit[2]);SetSigmaY2(hit[3]);
+    SetSigmaZ2(hit[4]);//fSigmaYZ=hit[5];
+    *is >> lab[0] >> mis;
+    SetVolumeId(lab[0]);// fIsMisalinged = mis;
+    *is >> fXloc >> fZloc >> fdEdX;
+    *is >> fIndex >> fQ >> fLayer >> fNz >> fNy >> fChargeRatio >> fType;
+    *is >> fDeltaProb;
+
+    return;
 }
 //----------------------------------------------------------------------
 ostream &operator<<(ostream &os,AliITSRecPoint &p){