]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Modified computation of innermost ITS layer to be considered in AliITStrackerMI:...
authormasera <masera@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 25 May 2010 17:27:31 +0000 (17:27 +0000)
committermasera <masera@f7af4fe6-9843-0410-8265-dc069ae4e863>
Tue, 25 May 2010 17:27:31 +0000 (17:27 +0000)
ITS/AliITStrackerMI.cxx

index 8d836a26f8c98b11568e0bc09ef8f2ba1e905b05..ee920d4fd95e431a4f28a43db1ecdc437797a9ae 100644 (file)
@@ -2258,14 +2258,27 @@ Bool_t AliITStrackerMI::RefitAt(Double_t xx,AliITStrackMI *track,
     index[k]=clusters[k]; 
   }
 
-  // special for cosmics: check which the innermost layer crossed
-  // by the track
-  Int_t innermostlayer=5;
-  Double_t drphi = TMath::Abs(track->GetD(0.,0.));
-  for(innermostlayer=0; innermostlayer<AliITSgeomTGeo::GetNLayers(); innermostlayer++) {
-    if(drphi < fgLayers[innermostlayer].GetR()) break;
+  // special for cosmics and TPC prolonged tracks: 
+  // check which the innermost layer crossed by the track
+  static AliITSRecoParam *repa = NULL;
+  if(!repa){
+    repa = (AliITSRecoParam*) AliITSReconstructor::GetRecoParam();
+    if(!repa){
+      repa = AliITSRecoParam::GetHighFluxParam();
+      AliWarning("Using default AliITSRecoParam class");
+    }
+  }
+  Int_t evsp=repa->GetEventSpecie();
+
+  Int_t innermostlayer=0;
+  if((evsp&AliRecoParam::kCosmic) || (track->GetStatus()&AliESDtrack::kTPCin))  {
+    innermostlayer=5;
+    Double_t drphi = TMath::Abs(track->GetD(0.,0.));
+    for(innermostlayer=0; innermostlayer<AliITSgeomTGeo::GetNLayers(); innermostlayer++) {
+      if(drphi < (fgLayers[innermostlayer].GetR()+1.)) break;
+    }
+    AliDebug(2,Form(" drphi  %f  innermost %d",drphi,innermostlayer));
   }
-  AliDebug(2,Form(" drphi  %f  innermost %d",drphi,innermostlayer));
 
   Int_t modstatus=1; // found
   Float_t xloc,zloc;
@@ -4804,3 +4817,4 @@ void AliITStrackerMI::UseTrackForPlaneEff(const AliITStrackMI* track, Int_t ilay
   }
 return;
 }
+