X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=TPC%2FRec%2FAliTPCtracker.cxx;h=75f4d1f74899192fcbe6b7f627b4928a7cecaa64;hb=c68323f3fcb24a1ae86fb25145cc6cc5fae1a921;hp=93858ade886acf374605859f492d74714e0f5e4d;hpb=f5273b6168ab0caa8f27b75c85512821c6fc37ee;p=u%2Fmrichter%2FAliRoot.git diff --git a/TPC/Rec/AliTPCtracker.cxx b/TPC/Rec/AliTPCtracker.cxx index 93858ade886..75f4d1f7489 100644 --- a/TPC/Rec/AliTPCtracker.cxx +++ b/TPC/Rec/AliTPCtracker.cxx @@ -532,7 +532,10 @@ void AliTPCtracker::FillESD(const TObjArray* arr) // // //fill esds using updated tracks + if (!fEvent) return; + + AliESDtrack iotrack; // write tracks to the event // store index of the track @@ -554,7 +557,8 @@ void AliTPCtracker::FillESD(const TObjArray* arr) } if (( pt->GetPoints()[2]- pt->GetPoints()[0])>5 && pt->GetPoints()[3]>0.8){ - AliESDtrack iotrack; + iotrack.~AliESDtrack(); + new(&iotrack) AliESDtrack; iotrack.UpdateTrackParams(pt,AliESDtrack::kTPCin); iotrack.SetTPCPoints(pt->GetPoints()); iotrack.SetKinkIndexes(pt->GetKinkIndexes()); @@ -567,7 +571,8 @@ void AliTPCtracker::FillESD(const TObjArray* arr) } if ( (pt->GetNumberOfClusters()>70)&& (Float_t(pt->GetNumberOfClusters())/Float_t(pt->GetNFoundable()))>0.55) { - AliESDtrack iotrack; + iotrack.~AliESDtrack(); + new(&iotrack) AliESDtrack; iotrack.UpdateTrackParams(pt,AliESDtrack::kTPCin); iotrack.SetTPCPoints(pt->GetPoints()); //iotrack.SetTPCindex(i); @@ -585,7 +590,8 @@ void AliTPCtracker::FillESD(const TObjArray* arr) Int_t found,foundable,shared; pt->GetClusterStatistic(0,60,found, foundable,shared,kFALSE); if ( (found>20) && (pt->GetNShared()/float(pt->GetNumberOfClusters())<0.2)){ - AliESDtrack iotrack; + iotrack.~AliESDtrack(); + new(&iotrack) AliESDtrack; iotrack.UpdateTrackParams(pt,AliESDtrack::kTPCin); //iotrack.SetTPCindex(i); iotrack.SetTPCPoints(pt->GetPoints()); @@ -604,7 +610,8 @@ void AliTPCtracker::FillESD(const TObjArray* arr) if (found<20) continue; if (pt->GetNShared()/float(pt->GetNumberOfClusters())>0.2) continue; // - AliESDtrack iotrack; + iotrack.~AliESDtrack(); + new(&iotrack) AliESDtrack; iotrack.UpdateTrackParams(pt,AliESDtrack::kTPCin); iotrack.SetTPCPoints(pt->GetPoints()); iotrack.SetKinkIndexes(pt->GetKinkIndexes()); @@ -621,7 +628,8 @@ void AliTPCtracker::FillESD(const TObjArray* arr) Int_t found,foundable,shared; pt->GetClusterStatistic(128,158,found, foundable,shared,kFALSE); if ( (found>20) && (pt->GetNShared()/float(pt->GetNumberOfClusters())<0.2) &&float(found)/float(foundable)>0.8){ - AliESDtrack iotrack; + iotrack.~AliESDtrack(); + new(&iotrack) AliESDtrack; iotrack.UpdateTrackParams(pt,AliESDtrack::kTPCin); iotrack.SetTPCPoints(pt->GetPoints()); iotrack.SetKinkIndexes(pt->GetKinkIndexes()); @@ -642,7 +650,8 @@ void AliTPCtracker::FillESD(const TObjArray* arr) if (pt->GetNShared()/float(pt->GetNumberOfClusters())>0.2) continue; if (float(found)/float(foundable)<0.8) continue; // - AliESDtrack iotrack; + iotrack.~AliESDtrack(); + new(&iotrack) AliESDtrack; iotrack.UpdateTrackParams(pt,AliESDtrack::kTPCin); iotrack.SetTPCPoints(pt->GetPoints()); iotrack.SetKinkIndexes(pt->GetKinkIndexes()); @@ -670,6 +679,7 @@ void AliTPCtracker::FillESD(const TObjArray* arr) kink->SetIndex(it, knkId<0 ? 0:1); // update track index of the kink: mother at 0, daughter at 1 } } + // << account for suppressed tracks in the kink indices (RS) AliInfo(Form("Number of filled ESDs-\t%d\n",fEvent->GetNumberOfTracks())); @@ -1635,7 +1645,7 @@ void AliTPCtracker::ApplyTailCancellation(){ }// end of side loop } //_____________________________________________________________________________ -void AliTPCtracker::GetTailValue(const Float_t ampfactor,Double_t &ionTailMax, Double_t &ionTailTotal,TGraphErrors **graphRes,Float_t *indexAmpGraphs,AliTPCclusterMI *cl0,AliTPCclusterMI *cl1){ +void AliTPCtracker::GetTailValue(Float_t ampfactor,Double_t &ionTailMax, Double_t &ionTailTotal,TGraphErrors **graphRes,Float_t *indexAmpGraphs,AliTPCclusterMI *cl0,AliTPCclusterMI *cl1){ // // Function in order to calculate the amount of the correction to be added for a given cluster, return values are ionTailTaoltal and ionTailMax