]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
protection against NULL pointer
authorjotwinow <jotwinow@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 7 May 2010 09:19:45 +0000 (09:19 +0000)
committerjotwinow <jotwinow@f7af4fe6-9843-0410-8265-dc069ae4e863>
Fri, 7 May 2010 09:19:45 +0000 (09:19 +0000)
PWG0/dNdPt/AlidNdPtAnalysis.cxx
PWG0/dNdPt/AlidNdPtCorrection.cxx
PWG0/dNdPt/AlidNdPtHelper.cxx

index 7568cdda334ea2e620091a6abead5c32308af948..0b3230995c21c82ae8349627ef4b3d0ac80c1ef4 100644 (file)
@@ -329,7 +329,7 @@ void AlidNdPtAnalysis::Init(){
   //\r
 \r
   const Int_t multNbins = 27;\r
-  const Int_t ptNbinsTrackEventCorr = 37;\r
+  const Int_t ptNbinsTrackEventCorr = 38;\r
   //const Int_t ptNbins = 56;\r
   const Int_t ptNbins = 55;\r
   const Int_t etaNbins = 30;\r
@@ -340,7 +340,7 @@ void AlidNdPtAnalysis::Init(){
                                      9.5, 10.5, 11.5, 12.5, 13.5, 14.5, 15.5, 16.5, 17.5, 18.5,\r
                                     19.5,20.5, 21.5, 22.5, 23.5, 24.5, 29.5, 149.5};\r
 \r
-  Double_t binsPtTrackEventCorr[ptNbinsTrackEventCorr+1] = {0.,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4,0.45,0.5,0.55,0.6,0.65,0.7,0.75,0.8,0.85,0.9,0.95,1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2.0,2.2,2.4,2.6,4.0,6.0,10.0,16.0};\r
+  Double_t binsPtTrackEventCorr[ptNbinsTrackEventCorr+1] = {0.,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4,0.45,0.5,0.55,0.6,0.65,0.7,0.75,0.8,0.85,0.9,0.95,1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2.0,2.2,2.4,2.6,3.0,4.0,6.0,10.0,16.0};\r
 \r
   Double_t binsPt[ptNbins+1] = {0.,0.05,0.1,0.15,0.2,0.25,0.3,0.35,0.4,0.45,0.5,0.55,0.6,0.65,0.7,0.75,0.8,0.85,0.9,0.95,1.0,1.1,1.2,1.3,1.4,1.5,1.6,1.7,1.8,1.9,2.0,2.2,2.4,2.6,2.8,3.0,3.2,3.4,3.6,3.8,4.0,4.5,5.0,5.5,6.0,6.5,7.0,8.0,9.0,10.0,11.0,12.0,13.0,14.0,15.0,16.0};\r
 \r
@@ -1342,6 +1342,7 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc
                 if(!particle) return;\r
 \r
                 Bool_t prim = stack->IsPhysicalPrimary(label);\r
+                 if(!particle->GetPDG()) continue;\r
                 if((particle->GetPDG()->Charge()/3.) != 0 && multRec > 3) \r
                 {\r
                    printf("zero true mult event: %d \n", esdEvent->GetEventNumberInFile());\r
@@ -1445,6 +1446,7 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc
        continue;\r
 \r
        // only charged particles\r
+       if(!particle->GetPDG()) continue;\r
        Double_t charge = particle->GetPDG()->Charge()/3.;\r
        if ( TMath::Abs(charge) < 0.001 )\r
         continue;\r
@@ -1551,6 +1553,7 @@ void AlidNdPtAnalysis::Process(AliESDEvent *const esdEvent, AliMCEvent *const mc
         }\r
 \r
          // only charged particles\r
+         if(!particle->GetPDG()) continue;\r
          Double_t charge = particle->GetPDG()->Charge()/3.;\r
          if (TMath::Abs(charge) < 0.001)\r
          continue;\r
@@ -1730,6 +1733,7 @@ void AlidNdPtAnalysis::FillHistograms(AliESDtrack *const esdTrack, AliStack *con
   if(mother) motherPdg = TMath::Abs(mother->GetPdgCode()); // take abs for visualisation only\r
   //Int_t mech = particle->GetUniqueID(); // production mechanism\r
 \r
+  if(!particle->GetPDG()) return;\r
   Double_t gq = particle->GetPDG()->Charge()/3.0; // Charge units |e|/3 \r
   if(TMath::Abs(gq)<0.001) return;\r
   Float_t gpt = particle->Pt();\r
@@ -1771,6 +1775,7 @@ void AlidNdPtAnalysis::FillHistograms(AliStack *const stack, Int_t label, AlidNd
   if(mother) motherPdg = TMath::Abs(mother->GetPdgCode()); // take abs for visualisation only\r
   Int_t mech = particle->GetUniqueID(); // production mechanism\r
 \r
+  if(!particle->GetPDG()) return;\r
   Double_t gq = particle->GetPDG()->Charge()/3.0; // Charge units |e|/3 \r
   if(TMath::Abs(gq) < 0.001) return;\r
 \r
index fd743dafac06ba975d569ba52f7e8c95d40b5f18..f7cc742a7c871c6e97d53a3836288c818b4376aa 100644 (file)
@@ -1529,6 +1529,8 @@ void AlidNdPtCorrection::Process(AliESDEvent *esdEvent, AliMCEvent *mcEvent)
         continue;\r
 \r
         // only charged particles\r
+         \r
+        if(!particle->GetPDG()) continue;\r
         Double_t charge = particle->GetPDG()->Charge()/3.;\r
         if (TMath::Abs(charge) < 0.001)\r
           continue;\r
@@ -1695,6 +1697,7 @@ void AlidNdPtCorrection::FillHistograms(AliESDtrack * const esdTrack, AliStack *
     TParticle* particle = stack->Particle(label);\r
     if(!particle) return;\r
    \r
+    if(!particle->GetPDG()) return;\r
     Double_t gq = particle->GetPDG()->Charge()/3.0; // Charge units |e|/3\r
     if(TMath::Abs(gq)<0.001) return;\r
     Float_t gpt = particle->Pt();\r
@@ -1781,6 +1784,7 @@ void AlidNdPtCorrection::FillHistograms(AliStack * const stack, Int_t /*label*/,
   if(mother) mother_pdg = TMath::Abs(mother->GetPdgCode()); // take abs for visualisation only\r
   Int_t mech = particle->GetUniqueID(); // production mechanism\r
 \r
+  if(!particle->GetPDG()) return;\r
   Double_t gq = particle->GetPDG()->Charge()/3.0; // Charge units |e|/3 \r
   Float_t gpt = particle->Pt();\r
   Float_t qgpt = particle->Pt() * gq;\r
index e9020b56dac7e5b460f6c181c13857faabebbfd9..12961a10e206999262a369739206a3558b3750ef 100644 (file)
@@ -984,6 +984,7 @@ Int_t AlidNdPtHelper::GetMCTrueTrackMult(AliMCEvent *const mcEvent, AlidNdPtEven
      continue;
 
      // only charged particles
+     if(!particle->GetPDG()) continue;
      Double_t charge = particle->GetPDG()->Charge()/3.;
      if (TMath::Abs(charge) < 0.001)
      continue;