]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Coverity fixes
authorslindal <slindal@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 25 Jan 2012 08:51:54 +0000 (08:51 +0000)
committerslindal <slindal@f7af4fe6-9843-0410-8265-dc069ae4e863>
Wed, 25 Jan 2012 08:51:54 +0000 (08:51 +0000)
PWGGA/GammaConv/AliAnalysisTaskGammaConversion.cxx
PWGGA/GammaConv/AliAnalysisTaskGammaConversion.h
PWGGA/GammaConv/AliV0Reader.cxx
PWGGA/GammaConv/AliV0Reader.h

index 6516f74ef231d4a8cc71b2eb7184372887ca3f5e..8c93416f33af0518c016f97edc3c196fc5e2e109 100644 (file)
@@ -427,34 +427,12 @@ void AliAnalysisTaskGammaConversion::UserExec(Option_t */*option*/)
        if(fAODGamma) fAODGamma->Clear();
        
 
-       Int_t eventQuality=-1;
+       ///Make sure MC event is complete if present
        if (fMCEvent ) {
-               // To avoid crashes due to unzip errors. Sometimes the trees are not there.
-
-               AliMCEventHandler* mcHandler = dynamic_cast<AliMCEventHandler*> (AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler());
-               if (!mcHandler){ 
-                       AliError("Could not retrive MC event handler!"); 
-
-                       eventQuality=0;
-                       fHistograms->FillHistogram("ESD_EventQuality",eventQuality);
-               }
-               if (!mcHandler->InitOk() ){
-                       eventQuality=0;
-                       fHistograms->FillHistogram("ESD_EventQuality",eventQuality);
-               }
-               if (!mcHandler->TreeK() ){
-                       eventQuality=0;
-                       fHistograms->FillHistogram("ESD_EventQuality",eventQuality);
-               }
-               if (!mcHandler->TreeTR() ) {
-                       eventQuality=0;
-                       fHistograms->FillHistogram("ESD_EventQuality",eventQuality);
-               }
-
-               if (eventQuality > -1) {
-                 PostAODEvent();
-                 return;
-               }
+         if( !CheckMCEvent() ) {
+               PostAODEvent();
+               return;
+         }
        }
        
 
@@ -613,6 +591,38 @@ void AliAnalysisTaskGammaConversion::UserExec(Option_t */*option*/)
        PostData(2, fCFManager->GetParticleContainer());        // for CF
 }
 
+Bool_t AliAnalysisTaskGammaConversion::CheckMCEvent() {
+  // To avoid crashes due to unzip errors. Sometimes the trees are not there.
+
+  Int_t eventQuality=-1;
+  AliMCEventHandler* mcHandler = dynamic_cast<AliMCEventHandler*> (AliAnalysisManager::GetAnalysisManager()->GetMCtruthEventHandler());
+  if (!mcHandler){ 
+       AliError("Could not retrive MC event handler!"); 
+       eventQuality=0;
+       fHistograms->FillHistogram("ESD_EventQuality",eventQuality);
+       return kFALSE;
+  }
+
+  if (!mcHandler->InitOk() ){
+       eventQuality=0;
+       fHistograms->FillHistogram("ESD_EventQuality",eventQuality);
+       return kFALSE;
+  }
+
+  if (!mcHandler->TreeK() ){
+       eventQuality=0;
+       fHistograms->FillHistogram("ESD_EventQuality",eventQuality);
+       return kFALSE;
+  }
+
+  if (!mcHandler->TreeTR() ) {
+       eventQuality=0;
+       fHistograms->FillHistogram("ESD_EventQuality",eventQuality);
+       return kFALSE;
+  }
+
+       return kTRUE;
+}
 
 Bool_t AliAnalysisTaskGammaConversion::DoEventSelection() {
 
@@ -5142,81 +5152,85 @@ Bool_t AliAnalysisTaskGammaConversion::CheckV0(Int_t index, AliESDEvent *event){
        // check if given track is V0 candidata
        // if looper return kTRUE
        // 
+  if(index || event)
        return kFALSE;
-       Int_t ntracks=event->GetNumberOfTracks();
-       Int_t index1=-1;
-       const Double_t kSigmaMass=0.001;
-       const Int_t kChi2Cut=10;
-       //
-       AliESDtrack * track0 = event->GetTrack(index);
-       AliExternalTrackParam pL(*track0);
-       AliKFParticle part0El(*track0, 11);  //assuming  mass e
-       AliKFParticle part0Pi(*track0, 211);  //assuming  mass pion
-       AliKFParticle part0P(*track0, 2212);  //assuming  mass proton
-       if (track0->Charge()*part0El.Q()<0) {
-               part0El.Q()*=-1;  // change sign if opposite
-               part0Pi.Q()*=-1;  // change sign if opposite
-               part0P.Q()*=-1;   // change sign if opposite
-       }
-       Bool_t isGamma=0;
-       Bool_t isK0=0;
-       Bool_t isLambda=0;
-       Bool_t isLambdaBar=0;
-       
-       for (Int_t itrack1=0; itrack1<ntracks; itrack1++){
-               if (itrack1==index) continue;
-               AliESDtrack *track1=event->GetTrack(itrack1);
-               if (!track1) continue;
-               if (track1->Charge()*track0->Charge()>0) continue;
-               AliKFParticle part1El(*track1, 11);  //assuming  mass e
-               AliKFParticle part1Pi(*track1, 211);  //assuming  mass pion
-               AliKFParticle part1P(*track1, 2212);  //assuming  mass proton
-               if (track1->Charge()*part1El.Q()<0) {
-                       part1El.Q()*=-1;  // change sign if opposite
-                       part1Pi.Q()*=-1;  // change sign if opposite
-                       part1P.Q()*=-1;   // change sign if opposite
-               }
-               //
-               AliKFVertex vertexG;  // gamma conversion candidate
-               vertexG+=part0El;
-               vertexG+=part1El;
-               AliKFVertex vertexGC;  // gamma conversion candidate
-               vertexGC+=part0El;
-               vertexGC+=part1El;
-               vertexGC.SetMassConstraint(0,kSigmaMass);
-               AliKFVertex vertexK0;  // K0s candidate
-               vertexK0+=part0Pi;
-               vertexK0+=part1Pi;
-               AliKFVertex vertexK0C;  // K0s candidate
-               vertexK0C+=part0Pi;
-               vertexK0C+=part1Pi;
-               vertexK0C.SetMassConstraint(0.497614,kSigmaMass);
-               AliKFVertex vertexLambda;  // Lambda candidate
-               vertexLambda+=part0Pi;
-               vertexLambda+=part1P;
-               AliKFVertex vertexLambdaC;  // Lambda candidate
-               vertexLambdaC+=part0Pi;
-               vertexLambdaC+=part1Pi;
-               vertexLambdaC.SetMassConstraint(1.115683,kSigmaMass);
-               AliKFVertex vertexLambdaB;  // Lambda candidate
-               vertexLambdaB+=part0Pi;
-               vertexLambdaB+=part1P;
-               AliKFVertex vertexLambdaBC;  // LambdaBar candidate
-               vertexLambdaBC+=part0Pi;
-               vertexLambdaBC+=part1Pi;
-               vertexLambdaBC.SetMassConstraint(1.115683,kSigmaMass);
-               
-               if (vertexGC.GetChi2()<kChi2Cut && vertexG.GetMass()<0.06)      isGamma=kTRUE;
-               if (vertexK0C.GetChi2()<kChi2Cut&&TMath::Abs(vertexK0.GetMass()-0.5)<0.06)  isK0=kTRUE;
-               if (vertexLambdaC.GetChi2()<kChi2Cut&&TMath::Abs(vertexLambda.GetMass()-1.1)<0.06)  isLambda=kTRUE;
-               if (vertexLambdaBC.GetChi2()<kChi2Cut&&TMath::Abs(vertexLambdaB.GetMass()-1.1)<0.06)  isLambdaBar=kTRUE;
-               if (isGamma||isK0||isLambda||isLambdaBar) {
-                       index1=index;
-                       break;
-               }
-       }
-       if (index1>0) return kTRUE;
+  else 
        return kFALSE;
+       
+       // Int_t ntracks=event->GetNumberOfTracks();
+       // Int_t index1=-1;
+       // const Double_t kSigmaMass=0.001;
+       // const Int_t kChi2Cut=10;
+       // //
+       // AliESDtrack * track0 = event->GetTrack(index);
+       // AliExternalTrackParam pL(*track0);
+       // AliKFParticle part0El(*track0, 11);  //assuming  mass e
+       // AliKFParticle part0Pi(*track0, 211);  //assuming  mass pion
+       // AliKFParticle part0P(*track0, 2212);  //assuming  mass proton
+       // if (track0->Charge()*part0El.Q()<0) {
+       //      part0El.Q()*=-1;  // change sign if opposite
+       //      part0Pi.Q()*=-1;  // change sign if opposite
+       //      part0P.Q()*=-1;   // change sign if opposite
+       // }
+       // Bool_t isGamma=0;
+       // Bool_t isK0=0;
+       // Bool_t isLambda=0;
+       // Bool_t isLambdaBar=0;
+       
+       // for (Int_t itrack1=0; itrack1<ntracks; itrack1++){
+       //      if (itrack1==index) continue;
+       //      AliESDtrack *track1=event->GetTrack(itrack1);
+       //      if (!track1) continue;
+       //      if (track1->Charge()*track0->Charge()>0) continue;
+       //      AliKFParticle part1El(*track1, 11);  //assuming  mass e
+       //      AliKFParticle part1Pi(*track1, 211);  //assuming  mass pion
+       //      AliKFParticle part1P(*track1, 2212);  //assuming  mass proton
+       //      if (track1->Charge()*part1El.Q()<0) {
+       //              part1El.Q()*=-1;  // change sign if opposite
+       //              part1Pi.Q()*=-1;  // change sign if opposite
+       //              part1P.Q()*=-1;   // change sign if opposite
+       //      }
+       //      //
+       //      AliKFVertex vertexG;  // gamma conversion candidate
+       //      vertexG+=part0El;
+       //      vertexG+=part1El;
+       //      AliKFVertex vertexGC;  // gamma conversion candidate
+       //      vertexGC+=part0El;
+       //      vertexGC+=part1El;
+       //      vertexGC.SetMassConstraint(0,kSigmaMass);
+       //      AliKFVertex vertexK0;  // K0s candidate
+       //      vertexK0+=part0Pi;
+       //      vertexK0+=part1Pi;
+       //      AliKFVertex vertexK0C;  // K0s candidate
+       //      vertexK0C+=part0Pi;
+       //      vertexK0C+=part1Pi;
+       //      vertexK0C.SetMassConstraint(0.497614,kSigmaMass);
+       //      AliKFVertex vertexLambda;  // Lambda candidate
+       //      vertexLambda+=part0Pi;
+       //      vertexLambda+=part1P;
+       //      AliKFVertex vertexLambdaC;  // Lambda candidate
+       //      vertexLambdaC+=part0Pi;
+       //      vertexLambdaC+=part1Pi;
+       //      vertexLambdaC.SetMassConstraint(1.115683,kSigmaMass);
+       //      AliKFVertex vertexLambdaB;  // Lambda candidate
+       //      vertexLambdaB+=part0Pi;
+       //      vertexLambdaB+=part1P;
+       //      AliKFVertex vertexLambdaBC;  // LambdaBar candidate
+       //      vertexLambdaBC+=part0Pi;
+       //      vertexLambdaBC+=part1Pi;
+       //      vertexLambdaBC.SetMassConstraint(1.115683,kSigmaMass);
+               
+       //      if (vertexGC.GetChi2()<kChi2Cut && vertexG.GetMass()<0.06)      isGamma=kTRUE;
+       //      if (vertexK0C.GetChi2()<kChi2Cut&&TMath::Abs(vertexK0.GetMass()-0.5)<0.06)  isK0=kTRUE;
+       //      if (vertexLambdaC.GetChi2()<kChi2Cut&&TMath::Abs(vertexLambda.GetMass()-1.1)<0.06)  isLambda=kTRUE;
+       //      if (vertexLambdaBC.GetChi2()<kChi2Cut&&TMath::Abs(vertexLambdaB.GetMass()-1.1)<0.06)  isLambdaBar=kTRUE;
+       //      if (isGamma||isK0||isLambda||isLambdaBar) {
+       //              index1=index;
+       //              break;
+       //      }
+       // }
+       // if (index1>0) return kTRUE;
+       // return kFALSE;
 }
 
 
index ccfc7a0599e550fd4d5a543fd3407f0137f0f991..ed5b0e70ff8ac38e83104a900b27f2f2bcda11c5 100644 (file)
@@ -71,6 +71,7 @@ public:
        void ProcessGammasForNeutralMesonAnalysis();
        void ProcessGammasForOmegaMesonAnalysis();
     Bool_t DoEventSelection();
+    Bool_t CheckMCEvent();
   //  void ProcessConvPHOSGammasForNeutralMesonAnalysis();
        //  void RecalculateV0ForGamma();
        // for CF
index 6f29648528e0f8c2492959617fd66283b4038180..ef7313eedddd1861a044c8a59363267577d1dadf 100644 (file)
@@ -168,7 +168,7 @@ AliV0Reader::AliV0Reader() :
        fdoESDQtCut(0),
        fMinPPhotonAsymmetryCut(100.),
        fMinPhotonAsymmetry(0.),
-        fExcludeBackgroundEventForGammaCorrection(0.),
+        fExcludeBackgroundEventForGammaCorrection(0),
         fNumberOfPrimerisFromHijingAndPythia(0)
 {
        //fESDpid = new AliESDpid;      
@@ -486,7 +486,7 @@ void AliV0Reader::Initialize(){
        }
         
         if(fDoMC && fExcludeBackgroundEventForGammaCorrection){
-           fNumberOfPrimerisFromHijingAndPythia = GetNumberOfHijingPlusPythiaPrimeries();
+           fNumberOfPrimerisFromHijingAndPythia = GetNumberOfHijingPlusPythiaPrimeries(fExcludeBackgroundEventForGammaCorrection);
         }
 }
 
@@ -2455,7 +2455,7 @@ Double_t AliV0Reader::GetPsiPair(AliESDv0* v0)
   return psiPair; 
 }
 
-Int_t AliV0Reader::GetNumberOfHijingPlusPythiaPrimeries(){
+Int_t AliV0Reader::GetNumberOfHijingPlusPythiaPrimeries(Int_t excludeHeaderType){
    
    // Calculate NPrimaries for LHC11a10b_*
 
@@ -2467,12 +2467,14 @@ Int_t AliV0Reader::GetNumberOfHijingPlusPythiaPrimeries(){
       for(Int_t i = 0; i<genHeaders->GetEntries();i++){
          gh = (AliGenEventHeader*)genHeaders->At(i);
          TString GeneratorName = gh->GetName();
-         //  cout<<i<<"   "<<GeneratorName<<"   "<<gh->NProduced()<<endl;
+        
          if(GeneratorName.CompareTo("Hijing") == 0){
             nproduced = nproduced + gh->NProduced();
+            //            cout<<i<<"   "<<GeneratorName<<"   "<<gh->NProduced()<<endl;
          }
-         else if(GeneratorName.CompareTo("Pythia") == 0){
+         else if(GeneratorName.CompareTo("Pythia") == 0 && excludeHeaderType == 1){
             nproduced = nproduced + gh->NProduced();
+            //            cout<<i<<"   "<<GeneratorName<<"   "<<gh->NProduced()<<endl;
          }
       }
    }
@@ -2492,13 +2494,14 @@ Bool_t AliV0Reader::IsParticleFromBGEvent(Int_t index){
   
    if(index == -1) return kFALSE;
    if(index > fNumberOfPrimerisFromHijingAndPythia && index < fMCStack->GetNprimary()){
+      //      cout<<fMCEvent->IsFromBGEvent(index)<<endl;
       // cout<<index<<"   "<<fNumberOfPrimerisFromHijingAndPythia<<endl;
       return kTRUE;
    }
    //  else cout<<"Passt Noch "<<index<<"   "<<fNumberOfPrimerisFromHijingAndPythia<<endl;
    // cout<<fMCEvent->IsFromBGEvent(index)<<endl;
    TParticle *BGParticle = fMCStack->Particle(index);
-   if(BGParticle->GetMother(0) > -1)  return kFALSE;
+   if(BGParticle->GetMother(0) > -1) return kFALSE;
    Int_t indexMother = fMCStack->Particle(index)->GetMother(0);
    particleFromBG = IsParticleFromBGEvent(indexMother);
    
index d67348d6ca96a530efad8c4436b99392d4844d82..b9854565e61b833b35644396dae760b05135ca07 100644 (file)
@@ -305,7 +305,7 @@ class AliV0Reader : public TObject {
         /*
          * GetNumberOfPrimariesFromHijingAndPythia
          */
-        Int_t GetNumberOfHijingPlusPythiaPrimeries();
+        Int_t GetNumberOfHijingPlusPythiaPrimeries(Int_t excludeHeaderType);
         Int_t GetPrimeriesFromHijingAndPythia(){return fNumberOfPrimerisFromHijingAndPythia;}
        /*
          * Get the DCA between the two tracks
@@ -856,11 +856,11 @@ class AliV0Reader : public TObject {
        /*
          * Excludes BG Events in HI Simulations e.g. in LHC10b_bis
          */
-       void SetExcludeBackgroundEventForGammaCorrection(Bool_t flag){fExcludeBackgroundEventForGammaCorrection=flag;}
+       void SetExcludeBackgroundEventForGammaCorrection(Int_t flag){fExcludeBackgroundEventForGammaCorrection=flag;}
        /*
          * Excludes BG Events in HI Simulations e.g. in LHC10b_bis
          */
-       Bool_t GetExcludeBackgroundEventForGammaCorrection(){return fExcludeBackgroundEventForGammaCorrection;}
+        Int_t GetExcludeBackgroundEventForGammaCorrection(){return fExcludeBackgroundEventForGammaCorrection;}
 
 
 //     Bool_t GetHelixCenter(AliESDtrack* track, Double_t b,Int_t charge, Double_t center[2]); 
@@ -1084,7 +1084,7 @@ class AliV0Reader : public TObject {
                Int_t    fdoESDQtCut; // flag for ESD based Qt cut
                Double_t fMinPPhotonAsymmetryCut;
                Double_t fMinPhotonAsymmetry;
-                Bool_t fExcludeBackgroundEventForGammaCorrection; // flag for excluding Gamma from BGEvent for
+                Int_t fExcludeBackgroundEventForGammaCorrection; // flag for excluding Gamma from BGEvent for
                 Int_t fNumberOfPrimerisFromHijingAndPythia; //Number Of Primaries from Hijing and Pythia for PbPb
                ClassDef(AliV0Reader,22) // RRnewTOF
 };