]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWG4/JetTasks/AliPWG4HighPtQAMC.cxx
more coverity fixes (M. Verweij)
[u/mrichter/AliRoot.git] / PWG4 / JetTasks / AliPWG4HighPtQAMC.cxx
index 91aad90de19b9c934f3eb4682afe549bee580cdf..05b0bc2e285281b94111bfb6cec302a991725072 100644 (file)
@@ -106,8 +106,8 @@ AliPWG4HighPtQAMC::AliPWG4HighPtQAMC()
   fPtBinEdges[0][1] = 1.;
   fPtBinEdges[1][0] = 20.;
   fPtBinEdges[1][1] = 2.;
-  fPtBinEdges[2][0] = 50.;
-  fPtBinEdges[2][1] = 5.;
+  fPtBinEdges[2][0] = 100.;
+  fPtBinEdges[2][1] = 10.;
 
 }
 //________________________________________________________________________
@@ -166,8 +166,8 @@ AliPWG4HighPtQAMC::AliPWG4HighPtQAMC(const char *name):
   fPtBinEdges[0][1] = 1.;
   fPtBinEdges[1][0] = 20.;
   fPtBinEdges[1][1] = 2.;
-  fPtBinEdges[2][0] = 50.;
-  fPtBinEdges[2][1] = 5.;
+  fPtBinEdges[2][0] = 100.;
+  fPtBinEdges[2][1] = 10.;
 
   // Input slot #0 works with a TChain ESD
   DefineInput(0, TChain::Class());
@@ -652,13 +652,14 @@ void AliPWG4HighPtQAMC::Exec(Option_t *) {
     AliESDtrack *esdtrack = fESD->GetTrack(iTrack);
     if(!esdtrack) continue;
 
-    if(fTrackType==1)
+    if(fTrackType==1) {
       track = AliESDtrackCuts::GetTPCOnlyTrack(fESD,esdtrack->GetID());
+      if(!track) continue;
+    }
     else if(fTrackType==2) {
       track = AliESDtrackCuts::GetTPCOnlyTrack(fESD,esdtrack->GetID());
-      if(!track) {
-       continue;
-      }
+      if(!track) continue;
+      
       AliExternalTrackParam exParam;
       Bool_t relate = track->RelateToVertexTPC(fVtx,fESD->GetMagneticField(),kVeryBig,&exParam);
       if( !relate ) {
@@ -669,16 +670,15 @@ void AliPWG4HighPtQAMC::Exec(Option_t *) {
     }
     else if(fTrackType==7) {
       //use global constrained track
-      track = esdtrack;
+      track = new AliESDtrack(*esdtrack);
+      //      track = esdtrack;
       //      track->Set(esdtrack->GetConstrainedParam()->GetX(),esdtrack->GetConstrainedParam()->GetAlpha(),esdtrack->GetConstrainedParam()->GetParameter(),esdtrack->GetConstrainedParam()->GetCovariance());
     }
     else
       track = esdtrack;
-    
-    if(!track) {
-      continue;
-    }
 
+    if(!track) continue;
+    
     if(fTrackType==2) {
       //Cut on chi2 of constrained fit
       if(track->GetConstrainedChi2TPC() > fSigmaConstrainedMax*fSigmaConstrainedMax) {
@@ -690,13 +690,13 @@ void AliPWG4HighPtQAMC::Exec(Option_t *) {
     Int_t label = TMath::Abs(track->GetLabel());
     if(label>=nMCtracks) {
       if (fTrackCuts->AcceptTrack(track)) { fPtSelLargeLabel->Fill(pt); }
-      if(fTrackType==1 || fTrackType==2) delete track;
+      if(fTrackType==1 || fTrackType==2 || fTrackType==7) delete track;
       continue;
     }
 
     TParticle *particle = fStack->Particle(label) ;
     if(!particle) {
-      if(fTrackType==1 || fTrackType==2) {
+      if(fTrackType==1 || fTrackType==2 || fTrackType==7) {
        if(track) delete track;
       }
       continue;
@@ -714,30 +714,31 @@ void AliPWG4HighPtQAMC::Exec(Option_t *) {
       if (itsMap & (1 << i))
        nPointITS ++;
     }
-    nSigmaToVertex = fTrackCuts->GetSigmaToVertex(track);// Calculates the number of sigma to the vertex for a track.
-    chi2C = track->GetConstrainedChi2();
-    relUncertainty1Pt = TMath::Sqrt(track->GetSigma1Pt2())*pt;
     
-    fPtAll->Fill(pt);
+    //    fPtAll->Fill(pt);
     fPtAllMC->Fill(ptMC);
 
     if (fTrackCuts->AcceptTrack(track)) {
 
       if(fTrackType==7) {
        if(fTrackCutsReject ) {
-         if(fTrackCutsReject->AcceptTrack(track) )
+         if(fTrackCutsReject->AcceptTrack(track) ) {
+           if(track) delete track;
            continue;
+         }
        }
        
        if(esdtrack->GetConstrainedParam()) 
          track->Set(esdtrack->GetConstrainedParam()->GetX(),esdtrack->GetConstrainedParam()->GetAlpha(),esdtrack->GetConstrainedParam()->GetParameter(),esdtrack->GetConstrainedParam()->GetCovariance());
       }
 
-      if(!track) continue;
-
       pt  = track->Pt();
       phi = track->Phi();
 
+      nSigmaToVertex = fTrackCuts->GetSigmaToVertex(track);// Calculates the number of sigma to the vertex for a track.
+      chi2C = track->GetConstrainedChi2();
+      relUncertainty1Pt = TMath::Sqrt(track->GetSigma1Pt2())*pt;
+
       fPtSel->Fill(pt);
       if(track->GetLabel()<0) {
         fPtSelFakes->Fill(pt);
@@ -810,7 +811,7 @@ void AliPWG4HighPtQAMC::Exec(Option_t *) {
     }//fTrackCuts selection
 
 
-    if(fTrackType==1 || fTrackType==2) {
+    if(fTrackType==1 || fTrackType==2 || fTrackType==7) {
       if(track) delete track;    
     }