]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - PWGLF/STRANGENESS/Cascades/AliAnalysisTaskCheckPerformanceCascadePbPb.h
AliCoverity warnings fixed. Removed unused variables and added null check for vertex.
[u/mrichter/AliRoot.git] / PWGLF / STRANGENESS / Cascades / AliAnalysisTaskCheckPerformanceCascadePbPb.h
index 8e917543adeed5b999ebf8620d360116cf81ba3d..7a8d335d0dec5747c914f1047fa2c7ad62614a56 100644 (file)
@@ -35,19 +35,22 @@ class AliAnalysisTaskCheckPerformanceCascadePbPb : public AliAnalysisTaskSE {
   
   void SetAnalysisType     (const char* analysisType    = "ESD") { fAnalysisType     = analysisType;}
   
-  void SetRelaunchV0CascVertexers    (Bool_t rerunV0CascVertexers       = 0    ) { fkRerunV0CascVertexers         =  rerunV0CascVertexers;      }
-  void SetQualityCutZprimVtxPos      (Bool_t qualityCutZprimVtxPos      = kTRUE) { fkQualityCutZprimVtxPos        =  qualityCutZprimVtxPos;     }
-  void SetRejectEventPileUp          (Bool_t rejectPileUp               = kTRUE) { fkRejectEventPileUp            =  rejectPileUp;              }
-  void SetQualityCutNoTPConlyPrimVtx (Bool_t qualityCutNoTPConlyPrimVtx = kTRUE) { fkQualityCutNoTPConlyPrimVtx   =  qualityCutNoTPConlyPrimVtx;}
-  void SetQualityCutTPCrefit         (Bool_t qualityCutTPCrefit         = kTRUE) { fkQualityCutTPCrefit           =  qualityCutTPCrefit;        }
-  void SetQualityCutnTPCcls          (Bool_t qualityCutnTPCcls          = kTRUE) { fkQualityCutnTPCcls            = qualityCutnTPCcls;          }
-  void SetQualityCutMinnTPCcls       (Int_t minnTPCcls                  = 70   ) { fMinnTPCcls                    = minnTPCcls;                 }
-  void SetExtraSelections            (Bool_t extraSelections            = 0    ) { fkExtraSelections              =  extraSelections;           }
-  void SetCentralityLowLim           (Float_t centrlowlim               = 0.   ) { fCentrLowLim                   = centrlowlim;                }
-  void SetCentralityUpLim            (Float_t centruplim                = 100. ) { fCentrUpLim                    = centruplim;                 }
-  void SetCentralityEst              (TString centrest                  = "V0M") { fCentrEstimator                = centrest;                   }  
-  void SetVertexRange                (Float_t vtxrange                  = 0.   ) { fVtxRange                      = vtxrange;                   }
-  void SetApplyAccCut                (Bool_t acccut                     = kFALSE){ fApplyAccCut                   = acccut;                     }    
+  void SetRelaunchV0CascVertexers    (Bool_t rerunV0CascVertexers       = 0    ) { fkRerunV0CascVertexers         = rerunV0CascVertexers;      }
+  void SetQualityCutZprimVtxPos      (Bool_t qualityCutZprimVtxPos      = kTRUE) { fkQualityCutZprimVtxPos        = qualityCutZprimVtxPos;     }
+  void SetRejectEventPileUp          (Bool_t rejectPileUp               = kTRUE) { fkRejectEventPileUp            = rejectPileUp;              }
+  void SetQualityCutNoTPConlyPrimVtx (Bool_t qualityCutNoTPConlyPrimVtx = kTRUE) { fkQualityCutNoTPConlyPrimVtx   = qualityCutNoTPConlyPrimVtx;}
+  void SetQualityCutTPCrefit         (Bool_t qualityCutTPCrefit         = kTRUE) { fkQualityCutTPCrefit           = qualityCutTPCrefit;        }
+  void SetQualityCutnTPCcls          (Bool_t qualityCutnTPCcls          = kTRUE) { fkQualityCutnTPCcls            = qualityCutnTPCcls;         }
+  void SetQualityCutMinnTPCcls       (Int_t minnTPCcls                  = 70   ) { fMinnTPCcls                    = minnTPCcls;                }
+  void SetExtraSelections            (Bool_t extraSelections            = 0    ) { fkExtraSelections              = extraSelections;           }
+  void SetCentralityLowLim           (Float_t centrlowlim               = 0.   ) { fCentrLowLim                   = centrlowlim;               }
+  void SetCentralityUpLim            (Float_t centruplim                = 100. ) { fCentrUpLim                    = centruplim;                }
+  void SetCentralityEst              (TString centrest                  = "V0M") { fCentrEstimator                = centrest;                  }  
+  void SetUseCleaning                (Bool_t   usecleaning              = kTRUE) { fkUseCleaning                  = usecleaning;               }
+  void SetVertexRange                (Float_t vtxrange                  = 0.   ) { fVtxRange                      = vtxrange;                  }
+  void SetApplyAccCut                (Bool_t acccut                     = kFALSE){ fApplyAccCut                   = acccut;                    }    
+  void SetMinptCutOnDaughterTracks   (Float_t minptdaughtrks            = 0.   ) { fMinPtCutOnDaughterTracks      = minptdaughtrks;            }
+  void SetEtaCutOnDaughterTracks   (Float_t etadaughtrks              = 0.   ) { fEtaCutOnDaughterTracks      = etadaughtrks;             }
 
  private:
         // Note : In ROOT, "//!" means "do not stream the data from Master node to Worker node" ...
@@ -70,9 +73,13 @@ class AliAnalysisTaskCheckPerformanceCascadePbPb : public AliAnalysisTaskSE {
         Float_t         fCentrLowLim;                   // Lower limit for centrality percentile selection
         Float_t         fCentrUpLim;                    // Upper limit for centrality percentile selection
         TString         fCentrEstimator;                // String for the centrality estimator
+        Bool_t          fkUseCleaning;                  // Boolean : kTRUE = uses all the cleaning criteria of centrality selections (vertex cut + outliers) otherwise only outliers
         Float_t         fVtxRange;                      // to select events with |zvtx|<fVtxRange cm
         Bool_t          fApplyAccCut;                   // flag to apply acceptance cuts to MC cascades        
-        
+        Float_t         fMinPtCutOnDaughterTracks;      // minimum pt to cut daughter tracks   
+        Float_t         fEtaCutOnDaughterTracks;        // pseudorapidity cut on daughter tracks
+
         Double_t        fV0Sels[7];                     // Array to store the 7 values for the different selections V0 related (if fkRerunV0CascVertexers)
         Double_t        fCascSels[8];                   // Array to store the 8 values for the different selections Casc. related (if fkRerunV0CascVertexers)
        
@@ -116,8 +123,8 @@ class AliAnalysisTaskCheckPerformanceCascadePbPb : public AliAnalysisTaskSE {
         TH3D    *f3dHistGenPtVsGenYvsNtracksXiMinusNat;
        TH3D    *f3dHistGenPtVsGenYvsCentXiMinusInj;
         TH3D    *f3dHistGenPtVsGenYvsNtracksXiMinusInj;
-        TH3D    *f3dHistGenPtVsGenctauvsYXiMinusNat;
-        TH3D    *f3dHistGenPtVsGenctauvsYXiMinusInj;   
+        TH3D    *f3dHistGenPtVsGenctauvsCentXiMinusNat;
+        TH3D    *f3dHistGenPtVsGenctauvsCentXiMinusInj;        
 
         TH1F    *fHistThetaGenCascXiMinusNat;           //! MC Theta angle of the generated Xi-
         TH1F    *fHistThetaGenCascXiMinusInj;           //! MC Theta angle of the injected Xi-
@@ -135,6 +142,9 @@ class AliAnalysisTaskCheckPerformanceCascadePbPb : public AliAnalysisTaskSE {
        TH1F    *fHistPtMesDghterXiMinus;               //! MC Pt of the meson daughter of the 'Lambda0', pi-   (Control Plot)
        TH1F    *fHistPtBarDghterXiMinus;               //! MC Pt of the baryon daughter of the 'Lambda0', p+   (Control Plot)
        
+        TH1F    *fHistPtRecBachXiMinus;                 //! Rec Pt of the Bachelor (for Xi-)                    (Control Plot)
+        TH1F    *fHistPtRecMesDghterXiMinus;            //! Rec Pt of the meson daughter of the 'Lambda0', pi-   (Control Plot)
+        TH1F    *fHistPtRecBarDghterXiMinus;            //! Rec Pt of the baryon daughter of the 'Lambda0', p+   (Control Plot)
        
        
        //--------------
@@ -144,8 +154,8 @@ class AliAnalysisTaskCheckPerformanceCascadePbPb : public AliAnalysisTaskSE {
         TH3D    *f3dHistGenPtVsGenYvsNtracksXiPlusNat;
         TH3D    *f3dHistGenPtVsGenYvsCentXiPlusInj;
         TH3D    *f3dHistGenPtVsGenYvsNtracksXiPlusInj;
-        TH3D    *f3dHistGenPtVsGenctauvsYXiPlusNat;
-        TH3D    *f3dHistGenPtVsGenctauvsYXiPlusInj;
+        TH3D    *f3dHistGenPtVsGenctauvsCentXiPlusNat;
+        TH3D    *f3dHistGenPtVsGenctauvsCentXiPlusInj;
        
         TH1F    *fHistThetaGenCascXiPlusNat;            //! MC Theta angle of the generated Xi+
         TH1F    *fHistThetaGenCascXiPlusInj;            //! MC Theta angle of the injected Xi+
@@ -171,8 +181,8 @@ class AliAnalysisTaskCheckPerformanceCascadePbPb : public AliAnalysisTaskSE {
         TH3D    *f3dHistGenPtVsGenYvsNtracksOmegaMinusNat;
         TH3D    *f3dHistGenPtVsGenYvsCentOmegaMinusInj;
         TH3D    *f3dHistGenPtVsGenYvsNtracksOmegaMinusInj;
-        TH3D    *f3dHistGenPtVsGenctauvsYOmegaMinusNat;
-        TH3D    *f3dHistGenPtVsGenctauvsYOmegaMinusInj;
+        TH3D    *f3dHistGenPtVsGenctauvsCentOmegaMinusNat;
+        TH3D    *f3dHistGenPtVsGenctauvsCentOmegaMinusInj;
 
         TH1F    *fHistThetaGenCascOmegaMinusNat;        //! MC Theta angle of the generated Omega-
         TH1F    *fHistThetaGenCascOmegaMinusInj;        //! MC Theta angle of the injected Omega-
@@ -198,8 +208,8 @@ class AliAnalysisTaskCheckPerformanceCascadePbPb : public AliAnalysisTaskSE {
         TH3D    *f3dHistGenPtVsGenYvsNtracksOmegaPlusNat;
         TH3D    *f3dHistGenPtVsGenYvsCentOmegaPlusInj;
         TH3D    *f3dHistGenPtVsGenYvsNtracksOmegaPlusInj;
-        TH3D    *f3dHistGenPtVsGenctauvsYOmegaPlusNat;
-        TH3D    *f3dHistGenPtVsGenctauvsYOmegaPlusInj;
+        TH3D    *f3dHistGenPtVsGenctauvsCentOmegaPlusNat;
+        TH3D    *f3dHistGenPtVsGenctauvsCentOmegaPlusInj;
        
         TH1F    *fHistThetaGenCascOmegaPlusNat;         //! MC Theta angle of the generated Omega+
         TH1F    *fHistThetaGenCascOmegaPlusInj;         //! MC Theta angle of the injected Omega+
@@ -307,10 +317,17 @@ class AliAnalysisTaskCheckPerformanceCascadePbPb : public AliAnalysisTaskSE {
 
         TH1F *fV0Ampl;                                    //! Histo to check the V0 amplitude distribution (centrality estimator)  
 
+         // Control plots for reco pseudorapidity of daughter tracks (Xi- asso only)
+
+        TH1F    *fHistEtaBachXiM;                       //! bachelor pseudorapidity
+        TH1F    *fHistEtaPosXiM;                        //! positive daughter pseudorapidity
+        TH1F    *fHistEtaNegXiM;                        //! negative daughter pseudorapidity
+
+
   AliAnalysisTaskCheckPerformanceCascadePbPb(const AliAnalysisTaskCheckPerformanceCascadePbPb&);            // not implemented
   AliAnalysisTaskCheckPerformanceCascadePbPb& operator=(const AliAnalysisTaskCheckPerformanceCascadePbPb&); // not implemented
   
-  ClassDef(AliAnalysisTaskCheckPerformanceCascadePbPb, 4);
+  ClassDef(AliAnalysisTaskCheckPerformanceCascadePbPb, 8);
 };
 
 #endif