Bool_t AliPerformanceMatch::fgUseMergeTHnSparse = kFALSE;
//_____________________________________________________________________________
-AliPerformanceMatch::AliPerformanceMatch():
- AliPerformanceObject("AliPerformanceMatch"),
- fResolHisto(0),
- fPullHisto(0),
- fTrackingEffHisto(0),
- fTPCConstrain(0),
- fFolderObj(0),
- // Cuts
- fCutsRC(0),
- fCutsMC(0),
-
- // histogram folder
- fAnalysisFolder(0),
-
- fUseHLT(0)
-{
- Init();
-}
-
-//_____________________________________________________________________________
-AliPerformanceMatch::AliPerformanceMatch(Char_t* name="AliPerformanceMatch", Char_t* title="AliPerformanceMatch",Int_t analysisMode=0,Bool_t hptGenerator=kFALSE):
+AliPerformanceMatch::AliPerformanceMatch(const Char_t* name, const Char_t* title, Int_t analysisMode, Bool_t hptGenerator):
AliPerformanceObject(name,title),
fResolHisto(0),
fPullHisto(0),
// if(trackTPC->GetTPCNclsIter1()<fCutsRC->GetMinNClustersTPC()) continue;
tpcTrack2 = AliESDtrackCuts::GetTPCOnlyTrack(esdEvent, jTrack);
if(!tpcTrack2) continue;
- if(!tpcTrack2->RelateToVertex(vtxESD,esdEvent->GetMagneticField(),100.)) { delete tpcTrack2; continue; }
+ if(!tpcTrack2->RelateToVertex(vtxESD,esdEvent->GetMagneticField(),100.)) { delete tpcTrack2; tpcTrack2=0; continue; }
- if(!fCutsRC->AcceptTrack(tpcTrack2)) { delete tpcTrack2; continue; }
+ if(!fCutsRC->AcceptTrack(tpcTrack2)) { delete tpcTrack2; tpcTrack2=0; continue; }
// check matching
- if (TMath::Abs(esdTrack->GetY() - tpcTrack2->GetY()) > 3) { delete tpcTrack2; continue; }
- if (TMath::Abs(esdTrack->GetSnp() - tpcTrack2->GetSnp()) > 0.2) { delete tpcTrack2; continue; }
- if (TMath::Abs(esdTrack->GetTgl() - tpcTrack2->GetTgl()) > 0.2) { delete tpcTrack2; continue; }
+ if (TMath::Abs(esdTrack->GetY() - tpcTrack2->GetY()) > 3) { delete tpcTrack2; tpcTrack2=0; continue; }
+ if (TMath::Abs(esdTrack->GetSnp() - tpcTrack2->GetSnp()) > 0.2) { delete tpcTrack2; tpcTrack2=0; continue; }
+ if (TMath::Abs(esdTrack->GetTgl() - tpcTrack2->GetTgl()) > 0.2) { delete tpcTrack2; tpcTrack2=0; continue; }
hasMatch=kTRUE;
break;
}
FillHistograms(tpcTrack2,esdTrack,hasMatch);
- /* if(tpcTrack2) {
- delete tpcTrack2;
-
- }*/
+ delete tpcTrack2;
}
//_____________________________________________________________________________
isMatch = kTRUE;
if(isTPC){
- Double_t vecTrackingEff[5] = { isMatch,esdTrack->Phi(), esdTrack->Pt(),esdTrack->Eta(),esdTrack->GetITSclusters(0) };
+ Double_t vecTrackingEff[5] = { static_cast<Double_t>(isMatch),esdTrack->Phi(), esdTrack->Pt(),esdTrack->Eta(),static_cast<Double_t>(esdTrack->GetITSclusters(0)) };
fTrackingEffHisto->Fill(vecTrackingEff);
}
}
//isOK = TPCinner->PropagateTo(esdTrack->GetX(),esdEvent->GetMagneticField());
AliExternalTrackParam * TPCinnerC = new AliExternalTrackParam(*TPCinner);
- isOK = TPCinnerC->ConstrainToVertex(vtxESD, b);
+ if (TPCinnerC) {
+ isOK = TPCinnerC->ConstrainToVertex(vtxESD, b);
- // transform to the track reference frame
- isOK = TPCinnerC->Rotate(esdTrack->GetAlpha());
- isOK = TPCinnerC->PropagateTo(esdTrack->GetX(),esdEvent->GetMagneticField());
+ // transform to the track reference frame
+ isOK = TPCinnerC->Rotate(esdTrack->GetAlpha());
+ isOK = TPCinnerC->PropagateTo(esdTrack->GetX(),esdEvent->GetMagneticField());
+ }
if(!isOK) return;
Double_t sigmaPhi=0,deltaPhi=0,pullPhi=0;
}
// Fill histograms
- Double_t vResolHisto[9] = {delta[0],delta[1],delta[2],delta[3],delta[4],refParam->Phi(),refParam->Eta(),refParam->Pt(),isRec};
+ Double_t vResolHisto[9] = {delta[0],delta[1],delta[2],delta[3],delta[4],refParam->Phi(),refParam->Eta(),refParam->Pt(),static_cast<Double_t>(isRec)};
if(fabs(pull[4])<5)
fResolHisto->Fill(vResolHisto);
- Double_t vPullHisto[9] = {pull[0],pull[1],pull[2],pull[3],pull[4],refParam->Phi(),refParam->Eta(),refParam->OneOverPt(),isRec};
+ Double_t vPullHisto[9] = {pull[0],pull[1],pull[2],pull[3],pull[4],refParam->Phi(),refParam->Eta(),refParam->OneOverPt(),static_cast<Double_t>(isRec)};
if(fabs(pull[4])<5)
fPullHisto->Fill(vPullHisto);
}