]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Coding conventions. AliITStrackV2 and AliITStrackerV2 are no longer friends
authormasera <masera@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 31 May 2004 15:09:56 +0000 (15:09 +0000)
committermasera <masera@f7af4fe6-9843-0410-8265-dc069ae4e863>
Mon, 31 May 2004 15:09:56 +0000 (15:09 +0000)
ITS/AliITStrackV2.cxx
ITS/AliITStrackV2.h
ITS/AliITStrackerV2.cxx

index eebf9da91623bd97130eb39779c9e13aa95721d7..7b3ccd25ffa68a209a1c9a9fdbcd225b7bf2dc2b 100644 (file)
@@ -18,6 +18,8 @@
 //
 //          Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch
 //     dEdx analysis by: Boris Batyunya, JINR, Boris.Batiounia@cern.ch
+//    The class is used by AliITStrackerV2 and AliITStrackerSA classes
+//  (for the meaning of the track parametrization see AliITStrackV2.h) 
 //-------------------------------------------------------------------------
 
 #include <TMatrixD.h>
@@ -28,9 +30,9 @@
 #include "AliESDtrack.h"
 #include "AliITStrackV2.h"
 
-ClassImp(AliITStrackV2)
+#define kWARN 5
 
-const Int_t kWARN=5;
+ClassImp(AliITStrackV2)
 
 //____________________________________________________________________________
 AliITStrackV2::AliITStrackV2():AliKalmanTrack(),
@@ -62,6 +64,9 @@ AliITStrackV2::AliITStrackV2():AliKalmanTrack(),
   fReconstructed(kFALSE),                             
   fESDtrack(0)
   {
+  //------------------------------------------------------------------
+  // The default constructor
+  //------------------------------------------------------------------
   for(Int_t i=0; i<kMaxLayer; i++) fIndex[i]=0;
   for(Int_t i=0; i<4; i++) fdEdxSample[i]=0;
   for(Int_t i=0; i<6; i++) {fDy[i]=0; fDz[i]=0; fSigmaY[i]=0; fSigmaZ[i]=0; fChi2MIP[i]=0;}
index ff8cf011ae2d3ccbc06285a9a64813e2f5136a20..a6ca38bd07976678cb0d2a76154b02f22758e0c0 100644 (file)
@@ -33,7 +33,6 @@ class AliESDtrack;
 
 //_____________________________________________________________________________
 class AliITStrackV2 : public AliKalmanTrack {
-  friend class AliITStrackerV2;
 public:
   AliITStrackV2();
   AliITStrackV2(AliESDtrack& t,Bool_t c=kFALSE) throw (const Char_t *);
@@ -52,7 +51,23 @@ public:
   void ResetClusters() { SetChi2(0.); SetNumberOfClusters(0); }
   void UpdateESDtrack(ULong_t flags);
   void SetConstrainedESDtrack(Double_t chi2); 
-  
+
+  void SetReconstructed(Bool_t sr=kTRUE){fReconstructed = sr;}
+  Bool_t GetReconstructed() const {return fReconstructed;}
+  void SetChi2MIP(Int_t i,Float_t val){fChi2MIP[i]=val;}
+  Float_t GetChi2MIP(Int_t i) const {return fChi2MIP[i];}  
+  void IncrementNSkipped(){fNSkipped++;} // increment by 1 the # of skipped cls
+  Int_t GetNSkipped() const {return fNSkipped;}
+  void IncrementNUsed(){fNUsed++;} // increment by 1 the # of shared clusters
+  Int_t GetNUsed() const {return fNUsed;}
+  AliESDtrack *GetESDtrack() const {return fESDtrack;}
+  Double_t GetCov33() const {return fC33;} // cov. matrix el. 3,3
+  Double_t GetCov44() const {return fC44;} // cov. matrix el. 4,4
+  Float_t GetDy(Int_t i) const {return fDy[i];}
+  Float_t GetDz(Int_t i) const {return fDz[i];}
+  Float_t GetSigmaY(Int_t i) const {return fSigmaY[i];}
+  Float_t GetSigmaZ(Int_t i) const {return fSigmaZ[i];}
+
   Int_t GetDetectorIndex() const {return GetLabel();}
   Double_t GetX()    const {return fX;}
   Double_t GetAlpha()const {return fAlpha;}
@@ -78,6 +93,10 @@ public:
   Double_t GetPredictedChi2(const AliCluster *cluster) const;
   Int_t Invariant() const;
  
+  AliITStrackV2& operator=(const AliITStrackV2& /*t*/) {
+    Error("operator=","Assignment is not allowed !"); return *this;
+  }
+
 protected:
   Double_t fX;              // X-coordinate of this track (reference plane)
   Double_t fAlpha;          // rotation angle
index a3886f5a85da95f9fa68b4937b44e23f4de458a6..fdc91b2401ead53d5eb015ea679dce0c4b3b7dca 100644 (file)
@@ -228,7 +228,7 @@ Int_t AliITStrackerV2::Clusters2Tracks(AliESD *event) {
          delete t;
          continue;
       }
-      t->fReconstructed = kFALSE;
+      t->SetReconstructed(kFALSE);
       itsTracks.AddLast(t);
     }
   } /* End Read ESD tracks */
@@ -243,7 +243,7 @@ Int_t AliITStrackerV2::Clusters2Tracks(AliESD *event) {
        fCurrentEsdTrack = i;
        AliITStrackV2 *t=(AliITStrackV2*)itsTracks.UncheckedAt(i);
        if (t==0) continue;              //this track has been already tracked
-       if (t->fReconstructed) continue;  //this track was  already  "succesfully" reconstructed
+       if (t->GetReconstructed()) continue;  //this track was  already  "succesfully" reconstructed
        if ( (TMath::Abs(t->GetD(GetX(),GetY()))  >2.) && fConstraint[fPass]) continue;
        if ( (TMath::Abs(t->GetZat(GetX())-GetZ())>2.) && fConstraint[fPass]) continue;
 
@@ -282,7 +282,7 @@ Int_t AliITStrackerV2::Clusters2Tracks(AliESD *event) {
        if (!besttrack) continue;
        besttrack->SetLabel(tpcLabel);
        besttrack->CookdEdx();
-       besttrack->fFakeRatio=1.;
+       besttrack->SetFakeRatio(1.);
        CookLabel(besttrack,0.); //For comparison only
        //       besttrack->UpdateESDtrack(AliESDtrack::kITSin);
        
@@ -298,7 +298,7 @@ Int_t AliITStrackerV2::Clusters2Tracks(AliESD *event) {
        }
        
        //delete itsTracks.RemoveAt(i);
-       t->fReconstructed = kTRUE;
+       t->SetReconstructed();
        ntrk++;              
        
      }
@@ -314,7 +314,7 @@ Int_t AliITStrackerV2::Clusters2Tracks(AliESD *event) {
 
     besttrack->SetLabel(tpcLabel);
     besttrack->CookdEdx();
-    besttrack->fFakeRatio=1.;
+    besttrack->SetFakeRatio(1.);
     CookLabel(besttrack,0.); //For comparison only
     besttrack->UpdateESDtrack(AliESDtrack::kITSin);
   }
@@ -574,11 +574,11 @@ void AliITStrackerV2::FollowProlongation() {
     //take another prolongation
     if (!TakeNextProlongation()){ 
       //skipped++;
-      fTrackToFollow.fNSkipped++;
-      if (fLayersNotToSkip[fI]||fTrackToFollow.fNSkipped>1) return;
+      fTrackToFollow.IncrementNSkipped();
+      if (fLayersNotToSkip[fI]||fTrackToFollow.GetNSkipped()>1) return;
     }
-    if (fTrackToFollow.fNUsed>1) return;
-    if (fTrackToFollow.fNUsed+fTrackToFollow.fNSkipped>1) return;    
+    if (fTrackToFollow.GetNUsed()>1) return;
+    if (fTrackToFollow.GetNUsed()+fTrackToFollow.GetNSkipped()>1) return;    
     if ( (fI<3) && ( fTrackToFollow.GetChi2()/fTrackToFollow.GetNumberOfClusters()>kChi2PerCluster)) return;
   } 
 
@@ -590,13 +590,13 @@ void AliITStrackerV2::FollowProlongation() {
     if ( (ncl<6) && (fTrackToFollow.GetChi2()/float(ncl))>3) return;
     if (fTrackToFollow.GetChi2()/ncl>5.5) return;
     fTrackToFollow.CookdEdx();
-    if (fTrackToFollow.fESDtrack->GetTPCsignal()>80.)
-      if ((fTrackToFollow.GetdEdx()/fTrackToFollow.fESDtrack->GetTPCsignal())<0.35){
+    if (fTrackToFollow.GetESDtrack()->GetTPCsignal()>80.)
+      if ((fTrackToFollow.GetdEdx()/fTrackToFollow.GetESDtrack()->GetTPCsignal())<0.35){
        // mismatch in dedx
        return;
       }
     //
-    fTrackToFollow.SetLabel(fTrackToFollow.fESDtrack->GetLabel());
+    fTrackToFollow.SetLabel(fTrackToFollow.GetESDtrack()->GetLabel());
     CookLabel(&fTrackToFollow,0.); //
     //
     if ( (nclb>3) && ((fTrackToFollow.GetChi2()/ncl)<(3*fBestTrack.GetChi2()/(nclb))))
@@ -664,7 +664,7 @@ Int_t AliITStrackerV2::TakeNextProlongation() {
   if (c->GetQ()==0){  //dead zone virtual cluster
     chi2*=4.;
     chi2+=20;
-    fTrackToFollow.fNUsed++;
+    fTrackToFollow.IncrementNUsed();
     return 1;
   }
   //if ((fI<2)&&chi2>kMaxChi2In) return 0;
@@ -673,7 +673,7 @@ Int_t AliITStrackerV2::TakeNextProlongation() {
      //Warning("TakeNextProlongation","filtering failed !\n");
      return 0;
   }
-  if (c->IsUsed()&&c->GetNy()<5) fTrackToFollow.fNUsed++;
+  if (c->IsUsed()&&c->GetNy()<5) fTrackToFollow.IncrementNUsed();
   if (fTrackToFollow.GetNumberOfClusters()>1)
   if (TMath::Abs(fTrackToFollow.GetD())>4) return 0;
 
@@ -1202,14 +1202,14 @@ void AliITStrackerV2::SortTrackHypothesys(Int_t esdindex, Float_t likelihoodleve
   for (Int_t itrack=0;itrack<array->GetEntriesFast();itrack++){
     AliITStrackV2 * track = (AliITStrackV2*)array->At(itrack);
     //
-    if (track && track->GetNumberOfClusters()>(track->fNUsed+track->fNSkipped)){
+    if (track && track->GetNumberOfClusters()>(track->GetNUsed()+track->GetNSkipped())){
       //
-      chi2[itrack] = track->GetChi2()/(track->GetNumberOfClusters()-track->fNUsed-track->fNSkipped);      
-      if (track->fESDtrack)
-       if (track->fESDtrack->GetTPCsignal()>80){
+      chi2[itrack] = track->GetChi2()/(track->GetNumberOfClusters()-track->GetNUsed()-track->GetNSkipped());      
+      if (track->GetESDtrack())
+       if (track->GetESDtrack()->GetTPCsignal()>80){
          track->CookdEdx();
-         if ((track->GetdEdx()/track->fESDtrack->GetTPCsignal())<0.4){
-           Float_t factor = 2.+10.*(0.6-track->GetdEdx()/track->fESDtrack->GetTPCsignal());
+         if ((track->GetdEdx()/track->GetESDtrack()->GetTPCsignal())<0.4){
+           Float_t factor = 2.+10.*(0.6-track->GetdEdx()/track->GetESDtrack()->GetTPCsignal());
            chi2[itrack]*= factor;  //mismatch in dEdx
          }
        }      
@@ -1227,8 +1227,8 @@ void AliITStrackerV2::SortTrackHypothesys(Int_t esdindex, Float_t likelihoodleve
     AliITStrackV2 * track = (AliITStrackV2*)array->At(index[i]);
     if (!track) break;
     if (chi2[index[i]]<30){
-      newarray->AddLast(array->RemoveAt(index[i]));      
-      track->fChi2MIP[0] = chi2[index[i]];     // base chi 2
+      newarray->AddLast(array->RemoveAt(index[i])); 
+      track->SetChi2MIP(0,chi2[index[i]]);     // base chi 2    
       sumprobability+= probability[index[i]]/sumprobabilityall;
       if (sumprobability> likelihoodlevel) break;
     }
@@ -1266,7 +1266,7 @@ void AliITStrackerV2::CompressTrackHypothesys(Int_t esdindex, Float_t likelihood
       AliITStrackV2 * track = (AliITStrackV2*)array->At(itrack);
       probability[itrack]=0;
       if (!track) continue;
-      probability[itrack] = 1./(0.3+track->fChi2MIP[0]);
+      probability[itrack] = 1./(0.3+track->GetChi2MIP(0));
       sumprobabilityall  += probability[itrack];
       //    
     }
@@ -1339,17 +1339,17 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesys(Int_t esdindex, AliITStrackV2
     maxindex = i;
     AliITStrackV2 * track = (AliITStrackV2*)array->At(i);    
     if (!track) continue;
-    track->fChi2MIP[1] = 1000000;
-    track->fChi2MIP[2] = 1000000;
+    track->SetChi2MIP(1,1000000);
+    track->SetChi2MIP(2,1000000);
 
-    if ( (track->GetNumberOfClusters()-track->fNSkipped-track->fNUsed)<2) continue;
+    if ( (track->GetNumberOfClusters()-track->GetNSkipped()-track->GetNUsed())<2) continue;
     //
-    if (track->fESDtrack)
-      if (track->fESDtrack->GetTPCsignal()>80){
+    if (track->GetESDtrack())
+      if (track->GetESDtrack()->GetTPCsignal()>80){
        track->CookdEdx();      
-       if ((track->GetdEdx()/track->fESDtrack->GetTPCsignal())<0.4){
+       if ((track->GetdEdx()/track->GetESDtrack()->GetTPCsignal())<0.4){
          //mismatch in dEdx 
-         dedxmismatch= 2.+ 10.*(0.6-track->GetdEdx()/track->fESDtrack->GetTPCsignal());
+         dedxmismatch= 2.+ 10.*(0.6-track->GetdEdx()/track->GetESDtrack()->GetTPCsignal());
        }
       }
 
@@ -1368,7 +1368,7 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesys(Int_t esdindex, AliITStrackV2
       delete array->RemoveAt(i);
       continue;
     }
-    if (  (backtrack->GetChi2() / float(backtrack->GetNumberOfClusters()-track->fNSkipped-track->fNUsed-0.5))>6) 
+    if (  (backtrack->GetChi2() / float(backtrack->GetNumberOfClusters()-track->GetNSkipped()-track->GetNUsed()-0.5))>6) 
       {
        delete backtrack; 
        delete array->RemoveAt(i);
@@ -1377,15 +1377,15 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesys(Int_t esdindex, AliITStrackV2
     Double_t deltac   = backtrack->GetC()-original->GetC();
     Double_t deltatgl = backtrack->GetTgl()-original->GetTgl();
     //
-    Double_t poolc2      = (deltac*deltac)/(original->fC44+backtrack->fC44);
-    Double_t pooltgl2    = (deltatgl*deltatgl)/(original->fC33+backtrack->fC33);
+    Double_t poolc2      = (deltac*deltac)/(original->GetCov44()+backtrack->GetCov44());
+    Double_t pooltgl2    = (deltatgl*deltatgl)/(original->GetCov33()+backtrack->GetCov33());
     if ((poolc2+pooltgl2)>32){  //4 sigma
       delete backtrack; 
       delete array->RemoveAt(i);
       continue;      
     }
-    //Double_t bpoolc      = (deltac*deltac)/(original->fC44);
-    //Double_t bpooltgl    = (deltatgl*deltatgl)/(original->fC33);
+    //Double_t bpoolc      = (deltac*deltac)/(original->GetCov44());
+    //Double_t bpooltgl    = (deltatgl*deltatgl)/(original->GetCov33());
 
     //
     //forward track - without constraint
@@ -1399,7 +1399,7 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesys(Int_t esdindex, AliITStrackV2
       delete array->RemoveAt(i);
       continue;
     }
-    if ( (forwardtrack->GetChi2()/float(forwardtrack->GetNumberOfClusters()-track->fNSkipped-track->fNUsed))>6) 
+    if ( (forwardtrack->GetChi2()/float(forwardtrack->GetNumberOfClusters()-track->GetNSkipped()-track->GetNUsed()))>6) 
       {
        delete forwardtrack; 
        delete array->RemoveAt(i);
@@ -1412,16 +1412,16 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesys(Int_t esdindex, AliITStrackV2
       delete forwardtrack;
       break;
     }
-    Double_t chi2 = (backtrack->GetChi2()/(backtrack->GetNumberOfClusters()-1-track->fNSkipped-track->fNUsed)+
-                    forwardtrack->GetChi2()/(forwardtrack->GetNumberOfClusters()-track->fNSkipped-track->fNUsed));
+    Double_t chi2 = (backtrack->GetChi2()/(backtrack->GetNumberOfClusters()-1-track->GetNSkipped()-track->GetNUsed())+
+                    forwardtrack->GetChi2()/(forwardtrack->GetNumberOfClusters()-track->GetNSkipped()-track->GetNUsed()));
       //                     bpoolc+bpooltgl;
     //    chi2 *= (forwardtrack->GetSigmaZ2()/sumz2+forwardtrack->GetSigmaY2()/sumy2);
     chi2 *= dedxmismatch;
     //
     //
-    track->fChi2MIP[1] = backtrack->GetChi2()/(backtrack->GetNumberOfClusters()-1-track->fNSkipped-track->fNUsed);
-    track->fChi2MIP[2] = forwardtrack->GetChi2()/(forwardtrack->GetNumberOfClusters()-track->fNSkipped-track->fNUsed);
-    track->fChi2MIP[3] = poolc2+pooltgl2;
+    track->SetChi2MIP(1,backtrack->GetChi2()/(backtrack->GetNumberOfClusters()-1-track->GetNSkipped()-track->GetNUsed()));
+    track->SetChi2MIP(2,forwardtrack->GetChi2()/(forwardtrack->GetNumberOfClusters()-track->GetNSkipped()-track->GetNUsed()));
+    track->SetChi2MIP(3,poolc2+pooltgl2);
     //
     
     if (track->GetNumberOfClusters()>maxn){
@@ -1468,13 +1468,13 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesys(Int_t esdindex, AliITStrackV2
     for (Int_t itrack=0;itrack<entries; itrack++){
       AliITStrackV2 * track = (AliITStrackV2*)array->At(itrack);
       if (!track) continue;
-      if (track->fChi2MIP[1]>1000) continue;  //not accepted
-      sumchi2 +=1./(0.3+track->fChi2MIP[1]+track->fChi2MIP[2]);
+      if (track->GetChi2MIP(1)>1000) continue;  //not accepted
+      sumchi2 +=1./(0.3+track->GetChi2MIP(1)+track->GetChi2MIP(2));
     }
     for (Int_t itrack=0;itrack<entries;itrack++){
       AliITStrackV2 * track = (AliITStrackV2*)array->At(itrack);
       if (!track) continue;
-      if (track->fChi2MIP[1]>1000) continue;  //not accepted  
+      if (track->GetChi2MIP(1)>1000) continue;  //not accepted  
       for (Int_t icluster=0;icluster<track->GetNumberOfClusters();icluster++){     
        Int_t tindex = track->GetClusterIndex(icluster);
        Int_t ilayer = (tindex & 0xf0000000) >> 28;
@@ -1487,11 +1487,11 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesys(Int_t esdindex, AliITStrackV2
        }
        if (cindex>100) break;
        if (clusterindex[ilayer][cindex]!=tindex) clusterindex[ilayer][cindex] = tindex;
-       clusterweight[ilayer][cindex]+= (1./(0.3+track->fChi2MIP[1]+track->fChi2MIP[2]))* (1./sumchi2); 
+       clusterweight[ilayer][cindex]+= (1./(0.3+track->GetChi2MIP(1)+track->GetChi2MIP(2)))* (1./sumchi2); 
        Float_t *weight = GetWeight(tindex);
        
        if (weight){
-         *weight+= (1./(0.3+track->fChi2MIP[1]+track->fChi2MIP[2]))* (1./sumchi2);
+         *weight+= (1./(0.3+track->GetChi2MIP(1)+track->GetChi2MIP(2)))* (1./sumchi2);
        }
       }
     }
@@ -1559,15 +1559,15 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesysMIP(Int_t esdindex, AliITStrac
   for (Int_t itrack=0;itrack<entries; itrack++){
     AliITStrackV2 * track = (AliITStrackV2*)array->At(itrack);
     if (!track) continue;
-    if (track->fChi2MIP[1]>1000) continue;  //not accepted - before
-    sumchi2 +=1./(0.3+track->fChi2MIP[1]+track->fChi2MIP[2]);
+    if (track->GetChi2MIP(1)>1000) continue;  //not accepted - before
+    sumchi2 +=1./(0.3+track->GetChi2MIP(1)+track->GetChi2MIP(2));
   }
   //
   // get cluster weight 
   for (Int_t itrack=0;itrack<entries;itrack++){
     AliITStrackV2 * track = (AliITStrackV2*)array->At(itrack);
     if (!track) continue;
-    if (track->fChi2MIP[1]>1000) continue;  // track not accepted in previous iterration  
+    if (track->GetChi2MIP(1)>1000) continue;  // track not accepted in previous iterration  
     for (Int_t icluster=0;icluster<track->GetNumberOfClusters();icluster++){     
       Int_t tindex = track->GetClusterIndex(icluster);
       Int_t ilayer = (tindex & 0xf0000000) >> 28;
@@ -1580,7 +1580,7 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesysMIP(Int_t esdindex, AliITStrac
       }
       if (cindex>100) break;
       if (clusterindex[ilayer][cindex]!=tindex) clusterindex[ilayer][cindex] = tindex;
-      clusterweight[ilayer][cindex]+= (1./(0.3+track->fChi2MIP[1]+track->fChi2MIP[2]))* (1./sumchi2); 
+      clusterweight[ilayer][cindex]+= (1./(0.3+track->GetChi2MIP(1)+track->GetChi2MIP(2)))* (1./sumchi2); 
     }
   }
   //  
@@ -1621,8 +1621,8 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesysMIP(Int_t esdindex, AliITStrac
   for (Int_t itrack=0;itrack<entries; itrack++){
     AliITStrackV2 * track = (AliITStrackV2*)array->At(itrack);
     if (!track) continue;
-    if (track->fChi2MIP[1]>1000) continue;  //not accepted - before
-    chi2 = track->fChi2MIP[1];
+    if (track->GetChi2MIP(1)>1000) continue;  //not accepted - before
+    chi2 = track->GetChi2MIP(1);
     Float_t newchi2=0;
     sharefactor=0;
     norm =0;
@@ -1632,8 +1632,8 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesysMIP(Int_t esdindex, AliITStrac
       Int_t ilayer = (tindex & 0xf0000000) >> 28;
       if (tindex<0) continue;
       Int_t cindex =0;
-      Float_t cchi2 = (track->fDy[ilayer]*track->fDy[ilayer])/(track->fSigmaY[ilayer]*track->fSigmaY[ilayer]) +
-       (track->fDz[ilayer]*track->fDz[ilayer])/(track->fSigmaZ[ilayer]*track->fSigmaZ[ilayer]) ;
+      Float_t cchi2 = (track->GetDy(ilayer)*track->GetDy(ilayer))/(track->GetSigmaY(ilayer)*track->GetSigmaY(ilayer)) +
+       (track->GetDz(ilayer)*track->GetDz(ilayer))/(track->GetSigmaZ(ilayer)*track->GetSigmaZ(ilayer)) ;
       //
       for (cindex=0;cindex<100;cindex++){
        if (clusterindex[ilayer][cindex]<0) break;
@@ -1647,8 +1647,8 @@ AliITStrackV2 * AliITStrackerV2::GetBestHypothesysMIP(Int_t esdindex, AliITStrac
       }
       newchi2+=cchi2;
     }
-    newchi2/=(norm-track->fNSkipped-track->fNUsed);
-    track->fChi2MIP[4] = newchi2;
+    newchi2/=(norm-track->GetNSkipped()-track->GetNUsed());
+    track->SetChi2MIP(4,newchi2);
     //if (norm>0) sharefactor/=norm;
     //if (sharefactor<0.5) return 0;
     //    chi2*=1./(0.5+sharefactor);