]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGJE/UserTasks/AliAnalysisTaskIDFFTCF.cxx
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGJE / UserTasks / AliAnalysisTaskIDFFTCF.cxx
index 549c12cf64eaa72e1e291799774d23b83ae6e486..7464350b8d8b517c0e19514d6eb8d62d2a63a625 100644 (file)
@@ -1650,7 +1650,7 @@ void AliAnalysisTaskIDFFTCF::UserExec(Option_t *)
     Int_t cl = 0;
     if(handler->InheritsFrom("AliAODInputHandler")){ 
       // since it is not supported by the helper task define own classes
-      centPercent = fAOD->GetHeader()->GetCentrality();
+      centPercent = ((AliVAODHeader*)fAOD->GetHeader())->GetCentrality();
       cl = 1;
       if(centPercent>10) cl = 2;
       if(centPercent>30) cl = 3;
@@ -1856,8 +1856,11 @@ void AliAnalysisTaskIDFFTCF::UserExec(Option_t *)
       
       if(GetFFMinNTracks()>0 && jettracklist->GetSize()<=GetFFMinNTracks()) isBadJet = kTRUE;
       
-      if(isBadJet) continue; 
-      
+      if(isBadJet){
+       delete jettracklist;
+       continue; 
+      }
+
       for(Int_t it=0; it<jettracklist->GetSize(); ++it){
        
        AliVParticle*   trackVP = dynamic_cast<AliVParticle*>(jettracklist->At(it));
@@ -1916,8 +1919,11 @@ void AliAnalysisTaskIDFFTCF::UserExec(Option_t *)
        
        if(GetFFMinNTracks()>0 && jettracklist->GetSize()<=GetFFMinNTracks()) isBadJet = kTRUE;
        
-       if(isBadJet) continue; 
-       
+       if(isBadJet){
+         delete jettracklist;
+         continue; 
+       }
+
        Bool_t incrementJetPt = kTRUE; // there could be 0 tracks in jet: first fill jet pt histo once 
        fFFHistosRecCutsIncPi->FillFF(-1, -1, jetPt, incrementJetPt);
        fFFHistosRecCutsIncPro->FillFF(-1,-1, jetPt, incrementJetPt); 
@@ -1983,7 +1989,10 @@ void AliAnalysisTaskIDFFTCF::UserExec(Option_t *)
       
       if(GetFFMinNTracks()>0 && jettracklist->GetSize()<=GetFFMinNTracks()) isBadJet = kTRUE;;
       
-      if(isBadJet) continue; 
+      if(isBadJet){
+       delete jettracklist;
+       continue; 
+      }
 
       Bool_t incrementJetPt = kTRUE; // first fill jet pt histo once 
       fFFHistosGenInc->FillFF(-1,   -1, jetPt, incrementJetPt);
@@ -2138,8 +2147,13 @@ void AliAnalysisTaskIDFFTCF::UserExec(Option_t *)
        if(GetFFMinNTracks()>0 && jettracklistGenSec->GetSize()<=GetFFMinNTracks())  isBadJetGenSec  = kTRUE;
        if(GetFFMinNTracks()>0 && jettracklistRec->GetSize()<=GetFFMinNTracks())       isBadJetRec     = kTRUE;
        
-       if(isBadJetRec) continue;
-       
+       if(isBadJetRec){
+         delete jettracklistGenPrim;
+         delete jettracklistGenSec;
+         delete jettracklistRec;
+         continue;
+       }
+
        if(fQAMode&2) fQAJetHistosRecEffLeading->FillJetQA( jetEta, jetPhi, sumPtGenLeadingJetRecEff ); 
        
        if(fFFMode){
@@ -2283,11 +2297,12 @@ Int_t AliAnalysisTaskIDFFTCF::GetListOfTracks(TList *list, Int_t type)
     // all rec. tracks, esd filter mask, eta range
     
     for(Int_t it=0; it<fAOD->GetNumberOfTracks(); ++it){
-      AliAODTrack *tr = fAOD->GetTrack(it);
+      AliAODTrack *tr = dynamic_cast<AliAODTrack*>(fAOD->GetTrack(it));
+      if(!tr) AliFatal("Not a standard AOD");
       
       if(type == kTrackAODCuts || type==kTrackAODQualityCuts){
 
-       if((fFilterMask>0)&&!(tr->TestFilterBit(fFilterMask)))   continue;
+       if((fFilterMask>0)&&!(tr->TestFilterBit(fFilterMask))) continue;
  
         //new cut on TPC
         if(fTPCCutMode==kPIDN && !AliIDFFUtils::TPCCutPIDN(tr)){