X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=STEER%2FAliTrackFitter.cxx;h=a02d87747b9005ac7c6bea494279b708bbeba4cc;hb=dc8f2f93dae27c3c315c3b71222589035a106b63;hp=788eb8f9f288d291728996bb4b438908ae284f2e;hpb=ccf6f2f42e082009e87cfdd4293ead290adeabe2;p=u%2Fmrichter%2FAliRoot.git diff --git a/STEER/AliTrackFitter.cxx b/STEER/AliTrackFitter.cxx index 788eb8f9f28..a02d87747b9 100644 --- a/STEER/AliTrackFitter.cxx +++ b/STEER/AliTrackFitter.cxx @@ -165,8 +165,8 @@ Bool_t AliTrackFitter::FindVolId(const TArrayI *array, UShort_t volid) const } Bool_t AliTrackFitter::Fit(const TArrayI *volIds,const TArrayI *volIdsFit, -AliAlignObj::ELayerID layerRangeMin, -AliAlignObj::ELayerID layerRangeMax) +AliGeomManager::ELayerID layerRangeMin, +AliGeomManager::ELayerID layerRangeMax) { //------------------------------------------------------------------- // @@ -199,19 +199,28 @@ AliAlignObj::ELayerID layerRangeMax) // Fast counting the points Int_t countFit=0; Int_t countPnt=0; + + Int_t fst=-1; + Int_t lst=-1; if (volIdsFit != 0x0) { for (Int_t i=0; iGetVolumeID()[i])) countPnt++; - if (FindVolId(volIdsFit,fPoints->GetVolumeID()[i])) countFit++; + if (FindVolId(volIdsFit,fPoints->GetVolumeID()[i])) { + countFit++; + if (fst<0) fst=i; + lst=i; + } } } else { for (Int_t i=0; iGetVolumeID()[i]; if (FindVolId(volIds,id)) countPnt++; - if (id < AliAlignObj::LayerToVolUID(layerRangeMin,0)) continue; - if (id > AliAlignObj::LayerToVolUID(layerRangeMax, - AliAlignObj::LayerSize(layerRangeMax))) continue; + if (id < AliGeomManager::LayerToVolUID(layerRangeMin,0)) continue; + if (id > AliGeomManager::LayerToVolUID(layerRangeMax, + AliGeomManager::LayerSize(layerRangeMax))) continue; countFit++; + if (fst<0) fst=i; + lst=i; } } if (countPnt==0) return kFALSE; @@ -221,7 +230,7 @@ AliAlignObj::ELayerID layerRangeMax) //************* Fit the selected track points - //Reset(); + if (!Begin(fst,lst)) return kFALSE; AliTrackPoint p; if (volIdsFit != 0x0) { @@ -233,9 +242,9 @@ AliAlignObj::ELayerID layerRangeMax) } else { for (Int_t i=0; iGetVolumeID()[i]; - if (id < AliAlignObj::LayerToVolUID(layerRangeMin,0)) continue; - if (id > AliAlignObj::LayerToVolUID(layerRangeMax, - AliAlignObj::LayerSize(layerRangeMax))) continue; + if (id < AliGeomManager::LayerToVolUID(layerRangeMin,0)) continue; + if (id > AliGeomManager::LayerToVolUID(layerRangeMax, + AliGeomManager::LayerSize(layerRangeMax))) continue; fPoints->GetPoint(p,i); if (!AddPoint(&p)) continue; }