ROOT logo
/**************************************************************************
 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 *                                                                        *
 * Author: The ALICE Off-line Project.                                    *
 * Contributors are mentioned in the code where appropriate.              *
 *                                                                        *
 * Permission to use, copy, modify and distribute this software and its   *
 * documentation strictly for non-commercial purposes is hereby granted   *
 * without fee, provided that the above copyright notice appears in all   *
 * copies and that both the copyright notice and this permission notice   *
 * appear in the supporting documentation. The authors make no claims     *
 * about the suitability of this software for any purpose. It is          *
 * provided "as is" without express or implied warranty.                  *
 **************************************************************************/

// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
//
// Modified version of AliAnalysisTaskCheckCascade.h
// Used bits of code from AliAnalysisTaskCheckPerformanceStrange
//
// --- David Dobrigkeit Chinellato
//
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

#ifndef ALIANALYSISTASKEXTRACTPERFORMANCEV0_H
#define ALIANALYSISTASKEXTRACTPERFORMANCEV0_H

class TList;
class TH1F;
class TH2F;
class TH3F;
class TVector3;
class THnSparse;

class AliESDpid;
class AliESDtrackCuts;
class AliAnalysisUtils;
class AliESDEvent;
class AliPhysicsSelection;
class AliCFContainer;

//#include "TString.h"
//#include "AliESDtrackCuts.h"
//#include "AliAnalysisTaskSE.h"

class AliAnalysisTaskExtractPerformanceV0 : public AliAnalysisTaskSE {
 public:
  AliAnalysisTaskExtractPerformanceV0();
  AliAnalysisTaskExtractPerformanceV0(const char *name);
  virtual ~AliAnalysisTaskExtractPerformanceV0();
  
  virtual void   UserCreateOutputObjects();
  virtual void   UserExec(Option_t *option);
  virtual void   Terminate(Option_t *);
  Double_t MyRapidity(Double_t rE, Double_t rPz) const;
  void CheckChargeV0(AliESDv0 *thisv0);

  void SetIsNuclear           (Bool_t lIsNuclear   = kTRUE ) { fkIsNuclear   = lIsNuclear;   }
  void SetINT7Trigger         (Bool_t lSwitchINT7  = kTRUE ) { fkSwitchINT7   = lSwitchINT7; }
  void SetUseOnTheFly         (Bool_t lUseOnTheFly = kTRUE ) { fkUseOnTheFly = lUseOnTheFly; }
  void SetTakeAllTracks       (Bool_t lTakeAllTracks = kTRUE ) { fkTakeAllTracks = lTakeAllTracks; }
  void SetpARapidityShift     (Double_t lRapShift = 0.465 ) { fpArapidityShift = lRapShift; }
  void SetCentralityEstimator (TString lCentralityEstimator = "V0M" ) { fCentralityEstimator = lCentralityEstimator; }
  void SetLightWeightAnalysis (Bool_t lLightWeight = kTRUE) {fkLightWeight = lLightWeight;  }
  void SetFastOnly (TString lFastOnly = "kFastOnly") {fkFastOnly = lFastOnly;  }
  void SetpAVertexSelection   (Bool_t lpAVertexSelection = kTRUE) {fkpAVertexSelection = lpAVertexSelection;  }
  void SetRunV0Vertexer       ( Bool_t lRunV0Vertexer = kTRUE) { fkRunV0Vertexer = lRunV0Vertexer; }
  void SetRejectPileup        ( Bool_t lRejectPileup = kTRUE) { fkRejectPileup = lRejectPileup; }
  void SetSpecialExecution    ( Bool_t lSpecialExecution = kTRUE) { fkSpecialExecution = lSpecialExecution; }
  void SetSaveAssociatedOnly  ( Bool_t lSaveAssocOnly = kTRUE) { fkSaveAssociatedOnly = lSaveAssocOnly; }
  void SetSkipTrigger         ( Bool_t lSkipTrigger = kTRUE ){ fkSkipTrigger = lSkipTrigger; }
  void SetDoNotCallTPCdEdx    ( Bool_t lDoNotCallTPCdEdx = kTRUE) { fkDoNotCallTPCdEdx = lDoNotCallTPCdEdx; }
  
  //---------------------------------------------------------------------------------------
  //Setters for the V0 Vertexer Parameters
  void SetV0VertexerMaxChisquare   ( Double_t lParameter ){ fV0Sels[0] = lParameter; }
  void SetV0VertexerDCAFirstToPV   ( Double_t lParameter ){ fV0Sels[1] = lParameter; }
  void SetV0VertexerDCASecondtoPV  ( Double_t lParameter ){ fV0Sels[2] = lParameter; }
  void SetV0VertexerDCAV0Daughters ( Double_t lParameter ){ fV0Sels[3] = lParameter; }
  void SetV0VertexerCosinePA       ( Double_t lParameter ){ fV0Sels[4] = lParameter; }
  void SetV0VertexerMinRadius      ( Double_t lParameter ){ fV0Sels[5] = lParameter; }
  void SetV0VertexerMaxRadius      ( Double_t lParameter ){ fV0Sels[6] = lParameter; }
  //---------------------------------------------------------------------------------------
  void SetDiffractiveOnly ( Bool_t lDiffractiveOnly = kTRUE ) { fDiffractiveOnly = lDiffractiveOnly; }
  void SetEtaRefMult ( Double_t lEtaRefMult = 0.5 ) { fEtaRefMult = lEtaRefMult; }

  
 private:
        // Note : In ROOT, "//!" means "do not stream the data from Master node to Worker node" ...
        // your data member object is created on the worker nodes and streaming is not needed.
        // http://root.cern.ch/download/doc/11InputOutput.pdf, page 14
  TList  *fListHistV0;  //! List of Cascade histograms
  TTree  *fTree;              //! Output Tree, V0

  AliPIDResponse *fPIDResponse;     // PID response object
  AliESDtrackCuts *fESDtrackCuts;   // ESD track cuts used for primary track definition
  AliAnalysisUtils *fUtils;         // analysis utils (for pA vertex selection)


  //Objects Controlling Task Behaviour 
  
  Bool_t fkIsNuclear;   //if true, replace multiplicity est. by centrality (default FALSE) 
  Bool_t fkSwitchINT7 ; //if true, skip FASTOnly (default FALSE)
  Bool_t fkUseOnTheFly; //if true, will use On-the-fly V0s instead of Offline V0s (default FALSE)
  Bool_t fkTakeAllTracks; // if true, no TPC crossed rows and ratio cut
  Double_t fpArapidityShift; //pA rapidity shift (should be 0.465, usually)
  TString fCentralityEstimator; //Centrality Estimator String value (default V0M, DEPRECATED)
  Bool_t fkLightWeight; //if true, skip a number of debugging information branches in TTree
                        //(to make resulting tree output significantly smaller!
  TString fkFastOnly; //"" if no extra selection, "kFastOnly" -> without SDD, "NotkFastOnly" -> With SDD
  Bool_t fkpAVertexSelection; //if true, select vertex with pPb Methods
  Bool_t fkRunV0Vertexer; //if true, re-run vertexer with loose cuts. CARE MUST BE TAKEN in PbPb!
  Bool_t fkRejectPileup; //Reject pileup switch
  Bool_t fkSpecialExecution; //Special Exploratory Execution
  Bool_t fkSkipTrigger; //Skip trigger selection (use SetCollisionCandidates)
  Bool_t fkSaveAssociatedOnly; //Save Only associated V0s for smaller output
  Bool_t fkDoNotCallTPCdEdx; //For running on datasets that don't have BB curves... 
  
  Double_t        fV0Sels[7];                     // Array to store the 7 values for the different selections V0 related

  Bool_t fDiffractiveOnly; //Only look at diffractive generated events
  Bool_t fEtaRefMult; // Ref Mult eta range 

//===========================================================================================
//   Variables for Tree, V0s
//===========================================================================================
   Int_t    fTreeVariablePrimaryStatus;      //!
   Int_t    fTreeVariablePrimaryStatusMother;      //!
   Float_t fTreeVariableChi2V0;             //!
   Float_t fTreeVariableDcaV0Daughters; //!
   Float_t fTreeVariableDcaV0ToPrimVertex; //!
   Float_t fTreeVariableDcaPosToPrimVertex; //!
   Float_t fTreeVariableDcaNegToPrimVertex; //!
   Float_t fTreeVariableDCAV0ToPrimVertex; //!
   Float_t fTreeVariableV0CosineOfPointingAngle; //!
   Float_t fTreeVariableV0Radius; //!
   Float_t fTreeVariablePt; //!
   Float_t fTreeVariablePtMC; //!
   Float_t fTreeVariableRapK0Short; //!
   Float_t fTreeVariableRapLambda; //!
   Float_t fTreeVariableRapMC; //!
   Float_t fTreeVariableInvMassK0s; //!
   Float_t fTreeVariableInvMassLambda; //!
   Float_t fTreeVariableInvMassAntiLambda; //!
   Float_t fTreeVariableAlphaV0; //!
   Float_t fTreeVariablePtArmV0;//!
   Float_t fTreeVariableNegTotMomentum; //!               
   Float_t fTreeVariablePosTotMomentum; //!
   Float_t fTreeVariableNegTransvMomentum; //!   
   Float_t fTreeVariablePosTransvMomentum; //!
   Float_t fTreeVariableNegTransvMomentumMC; //!   
   Float_t fTreeVariablePosTransvMomentumMC; //!
   
   Float_t fTreeVariableNSigmasPosProton; //!
   Float_t fTreeVariableNSigmasPosPion; //! 
   Float_t fTreeVariableNSigmasNegProton; //!
   Float_t fTreeVariableNSigmasNegPion; //! 

   Float_t fTreeVariablePtMother; //!
   Float_t fTreeVariableV0CreationRadius; //!
   Int_t fTreeVariablePID; //!
   Int_t fTreeVariablePIDPositive; //!
   Int_t fTreeVariablePIDNegative; //!
   Int_t fTreeVariablePIDMother; //!
   Int_t fTreeVariableIndexStatus; //!
   Int_t fTreeVariableIndexStatusMother; //!

   Int_t   fTreeVariableRunNumber; //! 
   ULong64_t fTreeVariableEventNumber; //!

   //Note: TDistOverTotMom needs a mass hypothesis to be converted to proper decaylength.
   Float_t fTreeVariableDistOverTotMom;//!

   Float_t fTreeVariablePosEta; //!
   Float_t fTreeVariableNegEta; //!

   Float_t fTreeVariableVertexZ; //!

   Int_t fTreeVariableLeastNbrCrossedRows;//!
   Float_t fTreeVariableLeastRatioCrossedRowsOverFindable;//!
  
  Int_t fTreeVariableMultiplicity;//!
  Int_t fTreeVariableMultiplicityV0A;//!
  Int_t fTreeVariableMultiplicityZNA;//!
  Int_t fTreeVariableMultiplicityTRK;//!
  Int_t fTreeVariableMultiplicitySPD;//!
  
   Int_t fTreeVariableMultiplicityMC;//!

  Float_t fTreeVariableV0x; //!
  Float_t fTreeVariableV0y; //!
  Float_t fTreeVariableV0z; //!

  Float_t fTreeVariableV0Px; //!
  Float_t fTreeVariableV0Py; //!
  Float_t fTreeVariableV0Pz; //!

  Float_t fTreeVariableMCV0x; //!
  Float_t fTreeVariableMCV0y; //!
  Float_t fTreeVariableMCV0z; //!

  Float_t fTreeVariableMCV0Px; //!
  Float_t fTreeVariableMCV0Py; //!
  Float_t fTreeVariableMCV0Pz; //!

  Float_t fTreeVariablePVx; //!
  Float_t fTreeVariablePVy; //!
  Float_t fTreeVariablePVz; //!

  Float_t fTreeVariableMCPVx; //!
  Float_t fTreeVariableMCPVy; //!
  Float_t fTreeVariableMCPVz; //!

  Bool_t fTreeVariableIsNonInjected; //!
  //Decay Length issue debugging: ULong_t with track status
  ULong64_t fTreeVariableNegTrackStatus;
  ULong64_t fTreeVariablePosTrackStatus;
  
  //Physical Primary, Sec-Weak, Sec-Material -- debug only
  Int_t fTreeVariableNegPhysicalStatus;
  Int_t fTreeVariablePosPhysicalStatus;
  
  Float_t fTreeVariableNegPx; //!
  Float_t fTreeVariableNegPy; //!
  Float_t fTreeVariableNegPz; //!
  Float_t fTreeVariablePosPx; //!
  Float_t fTreeVariablePosPy; //!
  Float_t fTreeVariablePosPz; //!
  
//===========================================================================================
//   Histograms
//===========================================================================================

   TH1F      *fHistV0MultiplicityBeforeTrigSel;              //! V0 multiplicity distribution
   TH1F      *fHistV0MultiplicityForTrigEvt;                 //! V0 multiplicity distribution
   TH1F      *fHistV0MultiplicityForSelEvt;                  //! V0 multiplicity distribution
   TH1F      *fHistV0MultiplicityForSelEvtNoTPCOnly;         //! V0 multiplicity distribution
   TH1F      *fHistV0MultiplicityForSelEvtNoTPCOnlyNoPileup; //! V0 multiplicity distribution

  //Default V0M Centrality
   TH1F      *fHistMultiplicityBeforeTrigSel;     //! multiplicity distribution      
   TH1F      *fHistMultiplicityForTrigEvt;        //! multiplicity distribution
   TH1F      *fHistMultiplicity;                  //! multiplicity distribution
   TH1F      *fHistMultiplicityNoTPCOnly;         //! multiplicity distribution
   TH1F      *fHistMultiplicityNoTPCOnlyNoPileup; //! multiplicity distribution

  //V0A Centrality
  TH1F    *fHistMultiplicityV0ABeforeTrigSel; 	        //! multiplicity distribution
	TH1F    *fHistMultiplicityV0AForTrigEvt;  		        //! multiplicity distribution
	TH1F    *fHistMultiplicityV0A;     					        //! multiplicity distribution
	TH1F    *fHistMultiplicityV0ANoTPCOnly;			        //! multiplicity distribution
	TH1F    *fHistMultiplicityV0ANoTPCOnlyNoPileup;			//! multiplicity distribution
  
  //ZNA Centrality
  TH1F    *fHistMultiplicityZNABeforeTrigSel; 	        //! multiplicity distribution
	TH1F    *fHistMultiplicityZNAForTrigEvt;  		        //! multiplicity distribution
	TH1F    *fHistMultiplicityZNA;     					        //! multiplicity distribution
	TH1F    *fHistMultiplicityZNANoTPCOnly;			        //! multiplicity distribution
	TH1F    *fHistMultiplicityZNANoTPCOnlyNoPileup;			//! multiplicity distribution
  
  //TRK Centrality
  TH1F    *fHistMultiplicityTRKBeforeTrigSel; 	        //! multiplicity distribution
	TH1F    *fHistMultiplicityTRKForTrigEvt;  		        //! multiplicity distribution
	TH1F    *fHistMultiplicityTRK;     					        //! multiplicity distribution
	TH1F    *fHistMultiplicityTRKNoTPCOnly;			        //! multiplicity distribution
	TH1F    *fHistMultiplicityTRKNoTPCOnlyNoPileup;			//! multiplicity distribution
  
  //SPD Centrality
  TH1F    *fHistMultiplicitySPDBeforeTrigSel; 	        //! multiplicity distribution
	TH1F    *fHistMultiplicitySPDForTrigEvt;  		        //! multiplicity distribution
	TH1F    *fHistMultiplicitySPD;     					        //! multiplicity distribution
	TH1F    *fHistMultiplicitySPDNoTPCOnly;			        //! multiplicity distribution
	TH1F    *fHistMultiplicitySPDNoTPCOnlyNoPileup;			//! multiplicity distribution
  
  //Raw Data for J/Psi paper Technique
	TH2F    *f2dHistMultiplicityVsTrueBeforeTrigSel; 	        //! multiplicity distribution    
	TH2F    *f2dHistMultiplicityVsTrueForTrigEvt;  		        //! multiplicity distribution
	TH2F    *f2dHistMultiplicityVsTrue;     					        //! multiplicity distribution
	TH2F    *f2dHistMultiplicityVsTrueNoTPCOnly;			        //! multiplicity distribution
	TH2F    *f2dHistMultiplicityVsTrueNoTPCOnlyNoPileup;			//! multiplicity distribution

  //Raw Data for Vertex Z position estimator change
	TH2F    *f2dHistMultiplicityVsVertexZBeforeTrigSel; 	        //! multiplicity distribution    
	TH2F    *f2dHistMultiplicityVsVertexZForTrigEvt;  		        //! multiplicity distribution
	TH2F    *f2dHistMultiplicityVsVertexZ;     					        //! multiplicity distribution
	TH2F    *f2dHistMultiplicityVsVertexZNoTPCOnly;			        //! multiplicity distribution
	TH2F    *f2dHistMultiplicityVsVertexZNoTPCOnlyNoPileup;			//! multiplicity distribution

   TH1F      *fHistGenVertexZBeforeTrigSel;     //! multiplicity distribution      
   TH1F      *fHistGenVertexZForTrigEvt;        //! multiplicity distribution
   TH1F      *fHistGenVertexZ;                  //! multiplicity distribution
   TH1F      *fHistGenVertexZNoTPCOnly;         //! multiplicity distribution
   TH1F      *fHistGenVertexZNoTPCOnlyNoPileup; //! multiplicity distribution

//---> Filled At Analysis Scope

   TH3F      *f3dHistPrimAnalysisPtVsYVsMultLambda;     //! Lambda
   TH3F      *f3dHistPrimAnalysisPtVsYVsMultAntiLambda; //! AntiLambda
   TH3F      *f3dHistPrimAnalysisPtVsYVsMultK0Short;    //! K0Short

   TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultLambda;     //! Lambda
   TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultAntiLambda; //! AntiLambda
   TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultK0Short;    //! K0Short
  
//---> TRUE Multiplicity Containers
  
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultMCLambda;     //! Lambda
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultMCAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultMCK0Short;    //! K0Short
  
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultMCLambda;     //! Lambda
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultMCAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultMCK0Short;    //! K0Short

//V0A containers
  
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultV0ALambda;     //! Lambda
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultV0AAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultV0AK0Short;    //! K0Short
  
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultV0ALambda;     //! Lambda
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultV0AAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultV0AK0Short;    //! K0Short

//Cross-checking histograms: Charged Kaons (to compare with neutral ones at generator level) 
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultV0AKPlus;     //! Added for cross-check of any bias
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultV0AKMinus;    //! Added for cross-check of any bias
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultV0AKPlus;     //! Added for cross-check of any bias
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultV0AKMinus;    //! Added for cross-check of any bias

//ZNA containers
  
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultZNALambda;     //! Lambda
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultZNAAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultZNAK0Short;    //! K0Short
  
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultZNALambda;     //! Lambda
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultZNAAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultZNAK0Short;    //! K0Short
  
//TRK containers
  
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultTRKLambda;     //! Lambda
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultTRKAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultTRKK0Short;    //! K0Short
  
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultTRKLambda;     //! Lambda
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultTRKAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultTRKK0Short;    //! K0Short
  
//SPD containers
  
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultSPDLambda;     //! Lambda
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultSPDAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimAnalysisPtVsYVsMultSPDK0Short;    //! K0Short
  
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultSPDLambda;     //! Lambda
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultSPDAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimAnalysisPtVsYCMSVsMultSPDK0Short;    //! K0Short
  
//---> Containers for monte carlo information for calculating efficiency!

   TH3F      *f3dHistPrimRawPtVsYVsMultLambda;     //! Lambda
   TH3F      *f3dHistPrimRawPtVsYVsMultAntiLambda; //! AntiLambda
   TH3F      *f3dHistPrimRawPtVsYVsMultK0Short;    //! K0Short

   TH3F      *f3dHistPrimRawPtVsYCMSVsMultLambda;     //! Lambda
   TH3F      *f3dHistPrimRawPtVsYCMSVsMultAntiLambda; //! AntiLambda
   TH3F      *f3dHistPrimRawPtVsYCMSVsMultK0Short;    //! K0Short

//V0A Containers
  
  TH3F      *f3dHistPrimRawPtVsYVsMultV0ALambda;     //! Lambda
  TH3F      *f3dHistPrimRawPtVsYVsMultV0AAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimRawPtVsYVsMultV0AK0Short;    //! K0Short
  
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultV0ALambda;     //! Lambda
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultV0AAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultV0AK0Short;    //! K0Short

//ZNA Containers
  
  TH3F      *f3dHistPrimRawPtVsYVsMultZNALambda;     //! Lambda
  TH3F      *f3dHistPrimRawPtVsYVsMultZNAAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimRawPtVsYVsMultZNAK0Short;    //! K0Short
  
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultZNALambda;     //! Lambda
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultZNAAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultZNAK0Short;    //! K0Short
  
//TRK Containers
  
  TH3F      *f3dHistPrimRawPtVsYVsMultTRKLambda;     //! Lambda
  TH3F      *f3dHistPrimRawPtVsYVsMultTRKAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimRawPtVsYVsMultTRKK0Short;    //! K0Short
  
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultTRKLambda;     //! Lambda
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultTRKAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultTRKK0Short;    //! K0Short
  
//SPD Containers
  
  TH3F      *f3dHistPrimRawPtVsYVsMultSPDLambda;     //! Lambda
  TH3F      *f3dHistPrimRawPtVsYVsMultSPDAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimRawPtVsYVsMultSPDK0Short;    //! K0Short
  
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultSPDLambda;     //! Lambda
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultSPDAntiLambda; //! AntiLambda
  TH3F      *f3dHistPrimRawPtVsYCMSVsMultSPDK0Short;    //! K0Short
  
//Miscellaneous checking containers
  
   TH3F      *f3dHistPrimRawPtVsYVsMultNonInjLambda;     //! Non-injected Lambda
   TH3F      *f3dHistPrimRawPtVsYVsMultNonInjAntiLambda; //! Non-injected AntiLambda
   TH3F      *f3dHistPrimRawPtVsYVsMultNonInjK0Short;    //! Non-injected K0Short

   TH3F      *f3dHistPrimRawPtVsYVsMultMCLambda;     //! Lambda
   TH3F      *f3dHistPrimRawPtVsYVsMultMCAntiLambda; //! AntiLambda
   TH3F      *f3dHistPrimRawPtVsYVsMultMCK0Short;    //! K0Short

   TH3F      *f3dHistPrimRawPtVsYVsVertexZLambda;     //! Lambda
   TH3F      *f3dHistPrimRawPtVsYVsVertexZAntiLambda; //! AntiLambda
   TH3F      *f3dHistPrimRawPtVsYVsVertexZK0Short;    //! K0Short

   TH3F      *f3dHistPrimCloseToPVPtVsYVsMultLambda;     //! Lambda
   TH3F      *f3dHistPrimCloseToPVPtVsYVsMultAntiLambda; //! AntiLambda
   TH3F      *f3dHistPrimCloseToPVPtVsYVsMultK0Short;    //! K0Short

//---> Filled vs Decay Length

   TH3F      *f3dHistPrimRawPtVsYVsDecayLengthLambda;     //! Lambda
   TH3F      *f3dHistPrimRawPtVsYVsDecayLengthAntiLambda; //! AntiLambda
   TH3F      *f3dHistPrimRawPtVsYVsDecayLengthK0Short;    //! K0Short

//---> Needed for FeedDown Corrections

   TH3F      *f3dHistGenPtVsYVsMultXiMinus;      //! Generated Xi- Distrib
   TH3F      *f3dHistGenPtVsYVsMultXiPlus;       //! Generated Xi+ Distrib

   TH3F      *f3dHistGenSelectedPtVsYVsMultXiMinus;      //! Generated Xi- Distrib, at event selection level
   TH3F      *f3dHistGenSelectedPtVsYVsMultXiPlus;       //! Generated Xi+ Distrib, at event selection level

   TH3F      *f3dHistGenPtVsYCMSVsMultXiMinus;      //! Generated Xi- Distrib
   TH3F      *f3dHistGenPtVsYCMSVsMultXiPlus;       //! Generated Xi+ Distrib

   TH3F      *f3dHistGenSelectedPtVsYCMSVsMultXiMinus;      //! Generated Xi- Distrib, at event selection level
   TH3F      *f3dHistGenSelectedPtVsYCMSVsMultXiPlus;       //! Generated Xi+ Distrib, at event selection level
  
//V0A Containers

  TH3F      *f3dHistGenPtVsYVsMultV0AXiMinus;      //! Generated Xi- Distrib
  TH3F      *f3dHistGenPtVsYVsMultV0AXiPlus;       //! Generated Xi+ Distrib
  
  TH3F      *f3dHistGenSelectedPtVsYVsMultV0AXiMinus;      //! Generated Xi- Distrib, at event selection level
  TH3F      *f3dHistGenSelectedPtVsYVsMultV0AXiPlus;       //! Generated Xi+ Distrib, at event selection level
  
  TH3F      *f3dHistGenPtVsYCMSVsMultV0AXiMinus;      //! Generated Xi- Distrib
  TH3F      *f3dHistGenPtVsYCMSVsMultV0AXiPlus;       //! Generated Xi+ Distrib
  
  TH3F      *f3dHistGenSelectedPtVsYCMSVsMultV0AXiMinus;      //! Generated Xi- Distrib, at event selection level
  TH3F      *f3dHistGenSelectedPtVsYCMSVsMultV0AXiPlus;       //! Generated Xi+ Distrib, at event selection level

//ZNA Containers
  
  TH3F      *f3dHistGenPtVsYVsMultZNAXiMinus;      //! Generated Xi- Distrib
  TH3F      *f3dHistGenPtVsYVsMultZNAXiPlus;       //! Generated Xi+ Distrib
  
  TH3F      *f3dHistGenSelectedPtVsYVsMultZNAXiMinus;      //! Generated Xi- Distrib, at event selection level
  TH3F      *f3dHistGenSelectedPtVsYVsMultZNAXiPlus;       //! Generated Xi+ Distrib, at event selection level
  
  TH3F      *f3dHistGenPtVsYCMSVsMultZNAXiMinus;      //! Generated Xi- Distrib
  TH3F      *f3dHistGenPtVsYCMSVsMultZNAXiPlus;       //! Generated Xi+ Distrib
  
  TH3F      *f3dHistGenSelectedPtVsYCMSVsMultZNAXiMinus;      //! Generated Xi- Distrib, at event selection level
  TH3F      *f3dHistGenSelectedPtVsYCMSVsMultZNAXiPlus;       //! Generated Xi+ Distrib, at event selection level

//TRK Containers
  
  TH3F      *f3dHistGenPtVsYVsMultTRKXiMinus;      //! Generated Xi- Distrib
  TH3F      *f3dHistGenPtVsYVsMultTRKXiPlus;       //! Generated Xi+ Distrib
  
  TH3F      *f3dHistGenSelectedPtVsYVsMultTRKXiMinus;      //! Generated Xi- Distrib, at event selection level
  TH3F      *f3dHistGenSelectedPtVsYVsMultTRKXiPlus;       //! Generated Xi+ Distrib, at event selection level
  
  TH3F      *f3dHistGenPtVsYCMSVsMultTRKXiMinus;      //! Generated Xi- Distrib
  TH3F      *f3dHistGenPtVsYCMSVsMultTRKXiPlus;       //! Generated Xi+ Distrib
  
  TH3F      *f3dHistGenSelectedPtVsYCMSVsMultTRKXiMinus;      //! Generated Xi- Distrib, at event selection level
  TH3F      *f3dHistGenSelectedPtVsYCMSVsMultTRKXiPlus;       //! Generated Xi+ Distrib, at event selection level
  
//SPD Containers
  
  TH3F      *f3dHistGenPtVsYVsMultSPDXiMinus;      //! Generated Xi- Distrib
  TH3F      *f3dHistGenPtVsYVsMultSPDXiPlus;       //! Generated Xi+ Distrib
  
  TH3F      *f3dHistGenSelectedPtVsYVsMultSPDXiMinus;      //! Generated Xi- Distrib, at event selection level
  TH3F      *f3dHistGenSelectedPtVsYVsMultSPDXiPlus;       //! Generated Xi+ Distrib, at event selection level
  
  TH3F      *f3dHistGenPtVsYCMSVsMultSPDXiMinus;      //! Generated Xi- Distrib
  TH3F      *f3dHistGenPtVsYCMSVsMultSPDXiPlus;       //! Generated Xi+ Distrib
  
  TH3F      *f3dHistGenSelectedPtVsYCMSVsMultSPDXiMinus;      //! Generated Xi- Distrib, at event selection level
  TH3F      *f3dHistGenSelectedPtVsYCMSVsMultSPDXiPlus;       //! Generated Xi+ Distrib, at event selection level
  
  
   TH1F      *fHistPVx;                      //! PVx distrib
   TH1F      *fHistPVy;                      //! PVy distrib
   TH1F      *fHistPVz;                      //! PVz distrib
   TH1F      *fHistPVxAnalysis;                      //! PVx distrib
   TH1F      *fHistPVyAnalysis;                      //! PVy distrib
   TH1F      *fHistPVzAnalysis;                      //! PVz distrib
   TH1F      *fHistPVxAnalysisHasHighPtLambda;                      //! PVx distrib
   TH1F      *fHistPVyAnalysisHasHighPtLambda;                      //! PVy distrib
   TH1F      *fHistPVzAnalysisHasHighPtLambda;                      //! PVz distrib

   TH1F      *fHistSwappedV0Counter;                      //! Swapped v0 counter

   AliAnalysisTaskExtractPerformanceV0(const AliAnalysisTaskExtractPerformanceV0&);            // not implemented
   AliAnalysisTaskExtractPerformanceV0& operator=(const AliAnalysisTaskExtractPerformanceV0&); // not implemented
   
   ClassDef(AliAnalysisTaskExtractPerformanceV0, 11);
};

#endif
 AliAnalysisTaskExtractPerformanceV0.h:1
 AliAnalysisTaskExtractPerformanceV0.h:2
 AliAnalysisTaskExtractPerformanceV0.h:3
 AliAnalysisTaskExtractPerformanceV0.h:4
 AliAnalysisTaskExtractPerformanceV0.h:5
 AliAnalysisTaskExtractPerformanceV0.h:6
 AliAnalysisTaskExtractPerformanceV0.h:7
 AliAnalysisTaskExtractPerformanceV0.h:8
 AliAnalysisTaskExtractPerformanceV0.h:9
 AliAnalysisTaskExtractPerformanceV0.h:10
 AliAnalysisTaskExtractPerformanceV0.h:11
 AliAnalysisTaskExtractPerformanceV0.h:12
 AliAnalysisTaskExtractPerformanceV0.h:13
 AliAnalysisTaskExtractPerformanceV0.h:14
 AliAnalysisTaskExtractPerformanceV0.h:15
 AliAnalysisTaskExtractPerformanceV0.h:16
 AliAnalysisTaskExtractPerformanceV0.h:17
 AliAnalysisTaskExtractPerformanceV0.h:18
 AliAnalysisTaskExtractPerformanceV0.h:19
 AliAnalysisTaskExtractPerformanceV0.h:20
 AliAnalysisTaskExtractPerformanceV0.h:21
 AliAnalysisTaskExtractPerformanceV0.h:22
 AliAnalysisTaskExtractPerformanceV0.h:23
 AliAnalysisTaskExtractPerformanceV0.h:24
 AliAnalysisTaskExtractPerformanceV0.h:25
 AliAnalysisTaskExtractPerformanceV0.h:26
 AliAnalysisTaskExtractPerformanceV0.h:27
 AliAnalysisTaskExtractPerformanceV0.h:28
 AliAnalysisTaskExtractPerformanceV0.h:29
 AliAnalysisTaskExtractPerformanceV0.h:30
 AliAnalysisTaskExtractPerformanceV0.h:31
 AliAnalysisTaskExtractPerformanceV0.h:32
 AliAnalysisTaskExtractPerformanceV0.h:33
 AliAnalysisTaskExtractPerformanceV0.h:34
 AliAnalysisTaskExtractPerformanceV0.h:35
 AliAnalysisTaskExtractPerformanceV0.h:36
 AliAnalysisTaskExtractPerformanceV0.h:37
 AliAnalysisTaskExtractPerformanceV0.h:38
 AliAnalysisTaskExtractPerformanceV0.h:39
 AliAnalysisTaskExtractPerformanceV0.h:40
 AliAnalysisTaskExtractPerformanceV0.h:41
 AliAnalysisTaskExtractPerformanceV0.h:42
 AliAnalysisTaskExtractPerformanceV0.h:43
 AliAnalysisTaskExtractPerformanceV0.h:44
 AliAnalysisTaskExtractPerformanceV0.h:45
 AliAnalysisTaskExtractPerformanceV0.h:46
 AliAnalysisTaskExtractPerformanceV0.h:47
 AliAnalysisTaskExtractPerformanceV0.h:48
 AliAnalysisTaskExtractPerformanceV0.h:49
 AliAnalysisTaskExtractPerformanceV0.h:50
 AliAnalysisTaskExtractPerformanceV0.h:51
 AliAnalysisTaskExtractPerformanceV0.h:52
 AliAnalysisTaskExtractPerformanceV0.h:53
 AliAnalysisTaskExtractPerformanceV0.h:54
 AliAnalysisTaskExtractPerformanceV0.h:55
 AliAnalysisTaskExtractPerformanceV0.h:56
 AliAnalysisTaskExtractPerformanceV0.h:57
 AliAnalysisTaskExtractPerformanceV0.h:58
 AliAnalysisTaskExtractPerformanceV0.h:59
 AliAnalysisTaskExtractPerformanceV0.h:60
 AliAnalysisTaskExtractPerformanceV0.h:61
 AliAnalysisTaskExtractPerformanceV0.h:62
 AliAnalysisTaskExtractPerformanceV0.h:63
 AliAnalysisTaskExtractPerformanceV0.h:64
 AliAnalysisTaskExtractPerformanceV0.h:65
 AliAnalysisTaskExtractPerformanceV0.h:66
 AliAnalysisTaskExtractPerformanceV0.h:67
 AliAnalysisTaskExtractPerformanceV0.h:68
 AliAnalysisTaskExtractPerformanceV0.h:69
 AliAnalysisTaskExtractPerformanceV0.h:70
 AliAnalysisTaskExtractPerformanceV0.h:71
 AliAnalysisTaskExtractPerformanceV0.h:72
 AliAnalysisTaskExtractPerformanceV0.h:73
 AliAnalysisTaskExtractPerformanceV0.h:74
 AliAnalysisTaskExtractPerformanceV0.h:75
 AliAnalysisTaskExtractPerformanceV0.h:76
 AliAnalysisTaskExtractPerformanceV0.h:77
 AliAnalysisTaskExtractPerformanceV0.h:78
 AliAnalysisTaskExtractPerformanceV0.h:79
 AliAnalysisTaskExtractPerformanceV0.h:80
 AliAnalysisTaskExtractPerformanceV0.h:81
 AliAnalysisTaskExtractPerformanceV0.h:82
 AliAnalysisTaskExtractPerformanceV0.h:83
 AliAnalysisTaskExtractPerformanceV0.h:84
 AliAnalysisTaskExtractPerformanceV0.h:85
 AliAnalysisTaskExtractPerformanceV0.h:86
 AliAnalysisTaskExtractPerformanceV0.h:87
 AliAnalysisTaskExtractPerformanceV0.h:88
 AliAnalysisTaskExtractPerformanceV0.h:89
 AliAnalysisTaskExtractPerformanceV0.h:90
 AliAnalysisTaskExtractPerformanceV0.h:91
 AliAnalysisTaskExtractPerformanceV0.h:92
 AliAnalysisTaskExtractPerformanceV0.h:93
 AliAnalysisTaskExtractPerformanceV0.h:94
 AliAnalysisTaskExtractPerformanceV0.h:95
 AliAnalysisTaskExtractPerformanceV0.h:96
 AliAnalysisTaskExtractPerformanceV0.h:97
 AliAnalysisTaskExtractPerformanceV0.h:98
 AliAnalysisTaskExtractPerformanceV0.h:99
 AliAnalysisTaskExtractPerformanceV0.h:100
 AliAnalysisTaskExtractPerformanceV0.h:101
 AliAnalysisTaskExtractPerformanceV0.h:102
 AliAnalysisTaskExtractPerformanceV0.h:103
 AliAnalysisTaskExtractPerformanceV0.h:104
 AliAnalysisTaskExtractPerformanceV0.h:105
 AliAnalysisTaskExtractPerformanceV0.h:106
 AliAnalysisTaskExtractPerformanceV0.h:107
 AliAnalysisTaskExtractPerformanceV0.h:108
 AliAnalysisTaskExtractPerformanceV0.h:109
 AliAnalysisTaskExtractPerformanceV0.h:110
 AliAnalysisTaskExtractPerformanceV0.h:111
 AliAnalysisTaskExtractPerformanceV0.h:112
 AliAnalysisTaskExtractPerformanceV0.h:113
 AliAnalysisTaskExtractPerformanceV0.h:114
 AliAnalysisTaskExtractPerformanceV0.h:115
 AliAnalysisTaskExtractPerformanceV0.h:116
 AliAnalysisTaskExtractPerformanceV0.h:117
 AliAnalysisTaskExtractPerformanceV0.h:118
 AliAnalysisTaskExtractPerformanceV0.h:119
 AliAnalysisTaskExtractPerformanceV0.h:120
 AliAnalysisTaskExtractPerformanceV0.h:121
 AliAnalysisTaskExtractPerformanceV0.h:122
 AliAnalysisTaskExtractPerformanceV0.h:123
 AliAnalysisTaskExtractPerformanceV0.h:124
 AliAnalysisTaskExtractPerformanceV0.h:125
 AliAnalysisTaskExtractPerformanceV0.h:126
 AliAnalysisTaskExtractPerformanceV0.h:127
 AliAnalysisTaskExtractPerformanceV0.h:128
 AliAnalysisTaskExtractPerformanceV0.h:129
 AliAnalysisTaskExtractPerformanceV0.h:130
 AliAnalysisTaskExtractPerformanceV0.h:131
 AliAnalysisTaskExtractPerformanceV0.h:132
 AliAnalysisTaskExtractPerformanceV0.h:133
 AliAnalysisTaskExtractPerformanceV0.h:134
 AliAnalysisTaskExtractPerformanceV0.h:135
 AliAnalysisTaskExtractPerformanceV0.h:136
 AliAnalysisTaskExtractPerformanceV0.h:137
 AliAnalysisTaskExtractPerformanceV0.h:138
 AliAnalysisTaskExtractPerformanceV0.h:139
 AliAnalysisTaskExtractPerformanceV0.h:140
 AliAnalysisTaskExtractPerformanceV0.h:141
 AliAnalysisTaskExtractPerformanceV0.h:142
 AliAnalysisTaskExtractPerformanceV0.h:143
 AliAnalysisTaskExtractPerformanceV0.h:144
 AliAnalysisTaskExtractPerformanceV0.h:145
 AliAnalysisTaskExtractPerformanceV0.h:146
 AliAnalysisTaskExtractPerformanceV0.h:147
 AliAnalysisTaskExtractPerformanceV0.h:148
 AliAnalysisTaskExtractPerformanceV0.h:149
 AliAnalysisTaskExtractPerformanceV0.h:150
 AliAnalysisTaskExtractPerformanceV0.h:151
 AliAnalysisTaskExtractPerformanceV0.h:152
 AliAnalysisTaskExtractPerformanceV0.h:153
 AliAnalysisTaskExtractPerformanceV0.h:154
 AliAnalysisTaskExtractPerformanceV0.h:155
 AliAnalysisTaskExtractPerformanceV0.h:156
 AliAnalysisTaskExtractPerformanceV0.h:157
 AliAnalysisTaskExtractPerformanceV0.h:158
 AliAnalysisTaskExtractPerformanceV0.h:159
 AliAnalysisTaskExtractPerformanceV0.h:160
 AliAnalysisTaskExtractPerformanceV0.h:161
 AliAnalysisTaskExtractPerformanceV0.h:162
 AliAnalysisTaskExtractPerformanceV0.h:163
 AliAnalysisTaskExtractPerformanceV0.h:164
 AliAnalysisTaskExtractPerformanceV0.h:165
 AliAnalysisTaskExtractPerformanceV0.h:166
 AliAnalysisTaskExtractPerformanceV0.h:167
 AliAnalysisTaskExtractPerformanceV0.h:168
 AliAnalysisTaskExtractPerformanceV0.h:169
 AliAnalysisTaskExtractPerformanceV0.h:170
 AliAnalysisTaskExtractPerformanceV0.h:171
 AliAnalysisTaskExtractPerformanceV0.h:172
 AliAnalysisTaskExtractPerformanceV0.h:173
 AliAnalysisTaskExtractPerformanceV0.h:174
 AliAnalysisTaskExtractPerformanceV0.h:175
 AliAnalysisTaskExtractPerformanceV0.h:176
 AliAnalysisTaskExtractPerformanceV0.h:177
 AliAnalysisTaskExtractPerformanceV0.h:178
 AliAnalysisTaskExtractPerformanceV0.h:179
 AliAnalysisTaskExtractPerformanceV0.h:180
 AliAnalysisTaskExtractPerformanceV0.h:181
 AliAnalysisTaskExtractPerformanceV0.h:182
 AliAnalysisTaskExtractPerformanceV0.h:183
 AliAnalysisTaskExtractPerformanceV0.h:184
 AliAnalysisTaskExtractPerformanceV0.h:185
 AliAnalysisTaskExtractPerformanceV0.h:186
 AliAnalysisTaskExtractPerformanceV0.h:187
 AliAnalysisTaskExtractPerformanceV0.h:188
 AliAnalysisTaskExtractPerformanceV0.h:189
 AliAnalysisTaskExtractPerformanceV0.h:190
 AliAnalysisTaskExtractPerformanceV0.h:191
 AliAnalysisTaskExtractPerformanceV0.h:192
 AliAnalysisTaskExtractPerformanceV0.h:193
 AliAnalysisTaskExtractPerformanceV0.h:194
 AliAnalysisTaskExtractPerformanceV0.h:195
 AliAnalysisTaskExtractPerformanceV0.h:196
 AliAnalysisTaskExtractPerformanceV0.h:197
 AliAnalysisTaskExtractPerformanceV0.h:198
 AliAnalysisTaskExtractPerformanceV0.h:199
 AliAnalysisTaskExtractPerformanceV0.h:200
 AliAnalysisTaskExtractPerformanceV0.h:201
 AliAnalysisTaskExtractPerformanceV0.h:202
 AliAnalysisTaskExtractPerformanceV0.h:203
 AliAnalysisTaskExtractPerformanceV0.h:204
 AliAnalysisTaskExtractPerformanceV0.h:205
 AliAnalysisTaskExtractPerformanceV0.h:206
 AliAnalysisTaskExtractPerformanceV0.h:207
 AliAnalysisTaskExtractPerformanceV0.h:208
 AliAnalysisTaskExtractPerformanceV0.h:209
 AliAnalysisTaskExtractPerformanceV0.h:210
 AliAnalysisTaskExtractPerformanceV0.h:211
 AliAnalysisTaskExtractPerformanceV0.h:212
 AliAnalysisTaskExtractPerformanceV0.h:213
 AliAnalysisTaskExtractPerformanceV0.h:214
 AliAnalysisTaskExtractPerformanceV0.h:215
 AliAnalysisTaskExtractPerformanceV0.h:216
 AliAnalysisTaskExtractPerformanceV0.h:217
 AliAnalysisTaskExtractPerformanceV0.h:218
 AliAnalysisTaskExtractPerformanceV0.h:219
 AliAnalysisTaskExtractPerformanceV0.h:220
 AliAnalysisTaskExtractPerformanceV0.h:221
 AliAnalysisTaskExtractPerformanceV0.h:222
 AliAnalysisTaskExtractPerformanceV0.h:223
 AliAnalysisTaskExtractPerformanceV0.h:224
 AliAnalysisTaskExtractPerformanceV0.h:225
 AliAnalysisTaskExtractPerformanceV0.h:226
 AliAnalysisTaskExtractPerformanceV0.h:227
 AliAnalysisTaskExtractPerformanceV0.h:228
 AliAnalysisTaskExtractPerformanceV0.h:229
 AliAnalysisTaskExtractPerformanceV0.h:230
 AliAnalysisTaskExtractPerformanceV0.h:231
 AliAnalysisTaskExtractPerformanceV0.h:232
 AliAnalysisTaskExtractPerformanceV0.h:233
 AliAnalysisTaskExtractPerformanceV0.h:234
 AliAnalysisTaskExtractPerformanceV0.h:235
 AliAnalysisTaskExtractPerformanceV0.h:236
 AliAnalysisTaskExtractPerformanceV0.h:237
 AliAnalysisTaskExtractPerformanceV0.h:238
 AliAnalysisTaskExtractPerformanceV0.h:239
 AliAnalysisTaskExtractPerformanceV0.h:240
 AliAnalysisTaskExtractPerformanceV0.h:241
 AliAnalysisTaskExtractPerformanceV0.h:242
 AliAnalysisTaskExtractPerformanceV0.h:243
 AliAnalysisTaskExtractPerformanceV0.h:244
 AliAnalysisTaskExtractPerformanceV0.h:245
 AliAnalysisTaskExtractPerformanceV0.h:246
 AliAnalysisTaskExtractPerformanceV0.h:247
 AliAnalysisTaskExtractPerformanceV0.h:248
 AliAnalysisTaskExtractPerformanceV0.h:249
 AliAnalysisTaskExtractPerformanceV0.h:250
 AliAnalysisTaskExtractPerformanceV0.h:251
 AliAnalysisTaskExtractPerformanceV0.h:252
 AliAnalysisTaskExtractPerformanceV0.h:253
 AliAnalysisTaskExtractPerformanceV0.h:254
 AliAnalysisTaskExtractPerformanceV0.h:255
 AliAnalysisTaskExtractPerformanceV0.h:256
 AliAnalysisTaskExtractPerformanceV0.h:257
 AliAnalysisTaskExtractPerformanceV0.h:258
 AliAnalysisTaskExtractPerformanceV0.h:259
 AliAnalysisTaskExtractPerformanceV0.h:260
 AliAnalysisTaskExtractPerformanceV0.h:261
 AliAnalysisTaskExtractPerformanceV0.h:262
 AliAnalysisTaskExtractPerformanceV0.h:263
 AliAnalysisTaskExtractPerformanceV0.h:264
 AliAnalysisTaskExtractPerformanceV0.h:265
 AliAnalysisTaskExtractPerformanceV0.h:266
 AliAnalysisTaskExtractPerformanceV0.h:267
 AliAnalysisTaskExtractPerformanceV0.h:268
 AliAnalysisTaskExtractPerformanceV0.h:269
 AliAnalysisTaskExtractPerformanceV0.h:270
 AliAnalysisTaskExtractPerformanceV0.h:271
 AliAnalysisTaskExtractPerformanceV0.h:272
 AliAnalysisTaskExtractPerformanceV0.h:273
 AliAnalysisTaskExtractPerformanceV0.h:274
 AliAnalysisTaskExtractPerformanceV0.h:275
 AliAnalysisTaskExtractPerformanceV0.h:276
 AliAnalysisTaskExtractPerformanceV0.h:277
 AliAnalysisTaskExtractPerformanceV0.h:278
 AliAnalysisTaskExtractPerformanceV0.h:279
 AliAnalysisTaskExtractPerformanceV0.h:280
 AliAnalysisTaskExtractPerformanceV0.h:281
 AliAnalysisTaskExtractPerformanceV0.h:282
 AliAnalysisTaskExtractPerformanceV0.h:283
 AliAnalysisTaskExtractPerformanceV0.h:284
 AliAnalysisTaskExtractPerformanceV0.h:285
 AliAnalysisTaskExtractPerformanceV0.h:286
 AliAnalysisTaskExtractPerformanceV0.h:287
 AliAnalysisTaskExtractPerformanceV0.h:288
 AliAnalysisTaskExtractPerformanceV0.h:289
 AliAnalysisTaskExtractPerformanceV0.h:290
 AliAnalysisTaskExtractPerformanceV0.h:291
 AliAnalysisTaskExtractPerformanceV0.h:292
 AliAnalysisTaskExtractPerformanceV0.h:293
 AliAnalysisTaskExtractPerformanceV0.h:294
 AliAnalysisTaskExtractPerformanceV0.h:295
 AliAnalysisTaskExtractPerformanceV0.h:296
 AliAnalysisTaskExtractPerformanceV0.h:297
 AliAnalysisTaskExtractPerformanceV0.h:298
 AliAnalysisTaskExtractPerformanceV0.h:299
 AliAnalysisTaskExtractPerformanceV0.h:300
 AliAnalysisTaskExtractPerformanceV0.h:301
 AliAnalysisTaskExtractPerformanceV0.h:302
 AliAnalysisTaskExtractPerformanceV0.h:303
 AliAnalysisTaskExtractPerformanceV0.h:304
 AliAnalysisTaskExtractPerformanceV0.h:305
 AliAnalysisTaskExtractPerformanceV0.h:306
 AliAnalysisTaskExtractPerformanceV0.h:307
 AliAnalysisTaskExtractPerformanceV0.h:308
 AliAnalysisTaskExtractPerformanceV0.h:309
 AliAnalysisTaskExtractPerformanceV0.h:310
 AliAnalysisTaskExtractPerformanceV0.h:311
 AliAnalysisTaskExtractPerformanceV0.h:312
 AliAnalysisTaskExtractPerformanceV0.h:313
 AliAnalysisTaskExtractPerformanceV0.h:314
 AliAnalysisTaskExtractPerformanceV0.h:315
 AliAnalysisTaskExtractPerformanceV0.h:316
 AliAnalysisTaskExtractPerformanceV0.h:317
 AliAnalysisTaskExtractPerformanceV0.h:318
 AliAnalysisTaskExtractPerformanceV0.h:319
 AliAnalysisTaskExtractPerformanceV0.h:320
 AliAnalysisTaskExtractPerformanceV0.h:321
 AliAnalysisTaskExtractPerformanceV0.h:322
 AliAnalysisTaskExtractPerformanceV0.h:323
 AliAnalysisTaskExtractPerformanceV0.h:324
 AliAnalysisTaskExtractPerformanceV0.h:325
 AliAnalysisTaskExtractPerformanceV0.h:326
 AliAnalysisTaskExtractPerformanceV0.h:327
 AliAnalysisTaskExtractPerformanceV0.h:328
 AliAnalysisTaskExtractPerformanceV0.h:329
 AliAnalysisTaskExtractPerformanceV0.h:330
 AliAnalysisTaskExtractPerformanceV0.h:331
 AliAnalysisTaskExtractPerformanceV0.h:332
 AliAnalysisTaskExtractPerformanceV0.h:333
 AliAnalysisTaskExtractPerformanceV0.h:334
 AliAnalysisTaskExtractPerformanceV0.h:335
 AliAnalysisTaskExtractPerformanceV0.h:336
 AliAnalysisTaskExtractPerformanceV0.h:337
 AliAnalysisTaskExtractPerformanceV0.h:338
 AliAnalysisTaskExtractPerformanceV0.h:339
 AliAnalysisTaskExtractPerformanceV0.h:340
 AliAnalysisTaskExtractPerformanceV0.h:341
 AliAnalysisTaskExtractPerformanceV0.h:342
 AliAnalysisTaskExtractPerformanceV0.h:343
 AliAnalysisTaskExtractPerformanceV0.h:344
 AliAnalysisTaskExtractPerformanceV0.h:345
 AliAnalysisTaskExtractPerformanceV0.h:346
 AliAnalysisTaskExtractPerformanceV0.h:347
 AliAnalysisTaskExtractPerformanceV0.h:348
 AliAnalysisTaskExtractPerformanceV0.h:349
 AliAnalysisTaskExtractPerformanceV0.h:350
 AliAnalysisTaskExtractPerformanceV0.h:351
 AliAnalysisTaskExtractPerformanceV0.h:352
 AliAnalysisTaskExtractPerformanceV0.h:353
 AliAnalysisTaskExtractPerformanceV0.h:354
 AliAnalysisTaskExtractPerformanceV0.h:355
 AliAnalysisTaskExtractPerformanceV0.h:356
 AliAnalysisTaskExtractPerformanceV0.h:357
 AliAnalysisTaskExtractPerformanceV0.h:358
 AliAnalysisTaskExtractPerformanceV0.h:359
 AliAnalysisTaskExtractPerformanceV0.h:360
 AliAnalysisTaskExtractPerformanceV0.h:361
 AliAnalysisTaskExtractPerformanceV0.h:362
 AliAnalysisTaskExtractPerformanceV0.h:363
 AliAnalysisTaskExtractPerformanceV0.h:364
 AliAnalysisTaskExtractPerformanceV0.h:365
 AliAnalysisTaskExtractPerformanceV0.h:366
 AliAnalysisTaskExtractPerformanceV0.h:367
 AliAnalysisTaskExtractPerformanceV0.h:368
 AliAnalysisTaskExtractPerformanceV0.h:369
 AliAnalysisTaskExtractPerformanceV0.h:370
 AliAnalysisTaskExtractPerformanceV0.h:371
 AliAnalysisTaskExtractPerformanceV0.h:372
 AliAnalysisTaskExtractPerformanceV0.h:373
 AliAnalysisTaskExtractPerformanceV0.h:374
 AliAnalysisTaskExtractPerformanceV0.h:375
 AliAnalysisTaskExtractPerformanceV0.h:376
 AliAnalysisTaskExtractPerformanceV0.h:377
 AliAnalysisTaskExtractPerformanceV0.h:378
 AliAnalysisTaskExtractPerformanceV0.h:379
 AliAnalysisTaskExtractPerformanceV0.h:380
 AliAnalysisTaskExtractPerformanceV0.h:381
 AliAnalysisTaskExtractPerformanceV0.h:382
 AliAnalysisTaskExtractPerformanceV0.h:383
 AliAnalysisTaskExtractPerformanceV0.h:384
 AliAnalysisTaskExtractPerformanceV0.h:385
 AliAnalysisTaskExtractPerformanceV0.h:386
 AliAnalysisTaskExtractPerformanceV0.h:387
 AliAnalysisTaskExtractPerformanceV0.h:388
 AliAnalysisTaskExtractPerformanceV0.h:389
 AliAnalysisTaskExtractPerformanceV0.h:390
 AliAnalysisTaskExtractPerformanceV0.h:391
 AliAnalysisTaskExtractPerformanceV0.h:392
 AliAnalysisTaskExtractPerformanceV0.h:393
 AliAnalysisTaskExtractPerformanceV0.h:394
 AliAnalysisTaskExtractPerformanceV0.h:395
 AliAnalysisTaskExtractPerformanceV0.h:396
 AliAnalysisTaskExtractPerformanceV0.h:397
 AliAnalysisTaskExtractPerformanceV0.h:398
 AliAnalysisTaskExtractPerformanceV0.h:399
 AliAnalysisTaskExtractPerformanceV0.h:400
 AliAnalysisTaskExtractPerformanceV0.h:401
 AliAnalysisTaskExtractPerformanceV0.h:402
 AliAnalysisTaskExtractPerformanceV0.h:403
 AliAnalysisTaskExtractPerformanceV0.h:404
 AliAnalysisTaskExtractPerformanceV0.h:405
 AliAnalysisTaskExtractPerformanceV0.h:406
 AliAnalysisTaskExtractPerformanceV0.h:407
 AliAnalysisTaskExtractPerformanceV0.h:408
 AliAnalysisTaskExtractPerformanceV0.h:409
 AliAnalysisTaskExtractPerformanceV0.h:410
 AliAnalysisTaskExtractPerformanceV0.h:411
 AliAnalysisTaskExtractPerformanceV0.h:412
 AliAnalysisTaskExtractPerformanceV0.h:413
 AliAnalysisTaskExtractPerformanceV0.h:414
 AliAnalysisTaskExtractPerformanceV0.h:415
 AliAnalysisTaskExtractPerformanceV0.h:416
 AliAnalysisTaskExtractPerformanceV0.h:417
 AliAnalysisTaskExtractPerformanceV0.h:418
 AliAnalysisTaskExtractPerformanceV0.h:419
 AliAnalysisTaskExtractPerformanceV0.h:420
 AliAnalysisTaskExtractPerformanceV0.h:421
 AliAnalysisTaskExtractPerformanceV0.h:422
 AliAnalysisTaskExtractPerformanceV0.h:423
 AliAnalysisTaskExtractPerformanceV0.h:424
 AliAnalysisTaskExtractPerformanceV0.h:425
 AliAnalysisTaskExtractPerformanceV0.h:426
 AliAnalysisTaskExtractPerformanceV0.h:427
 AliAnalysisTaskExtractPerformanceV0.h:428
 AliAnalysisTaskExtractPerformanceV0.h:429
 AliAnalysisTaskExtractPerformanceV0.h:430
 AliAnalysisTaskExtractPerformanceV0.h:431
 AliAnalysisTaskExtractPerformanceV0.h:432
 AliAnalysisTaskExtractPerformanceV0.h:433
 AliAnalysisTaskExtractPerformanceV0.h:434
 AliAnalysisTaskExtractPerformanceV0.h:435
 AliAnalysisTaskExtractPerformanceV0.h:436
 AliAnalysisTaskExtractPerformanceV0.h:437
 AliAnalysisTaskExtractPerformanceV0.h:438
 AliAnalysisTaskExtractPerformanceV0.h:439
 AliAnalysisTaskExtractPerformanceV0.h:440
 AliAnalysisTaskExtractPerformanceV0.h:441
 AliAnalysisTaskExtractPerformanceV0.h:442
 AliAnalysisTaskExtractPerformanceV0.h:443
 AliAnalysisTaskExtractPerformanceV0.h:444
 AliAnalysisTaskExtractPerformanceV0.h:445
 AliAnalysisTaskExtractPerformanceV0.h:446
 AliAnalysisTaskExtractPerformanceV0.h:447
 AliAnalysisTaskExtractPerformanceV0.h:448
 AliAnalysisTaskExtractPerformanceV0.h:449
 AliAnalysisTaskExtractPerformanceV0.h:450
 AliAnalysisTaskExtractPerformanceV0.h:451
 AliAnalysisTaskExtractPerformanceV0.h:452
 AliAnalysisTaskExtractPerformanceV0.h:453
 AliAnalysisTaskExtractPerformanceV0.h:454
 AliAnalysisTaskExtractPerformanceV0.h:455
 AliAnalysisTaskExtractPerformanceV0.h:456
 AliAnalysisTaskExtractPerformanceV0.h:457
 AliAnalysisTaskExtractPerformanceV0.h:458
 AliAnalysisTaskExtractPerformanceV0.h:459
 AliAnalysisTaskExtractPerformanceV0.h:460
 AliAnalysisTaskExtractPerformanceV0.h:461
 AliAnalysisTaskExtractPerformanceV0.h:462
 AliAnalysisTaskExtractPerformanceV0.h:463
 AliAnalysisTaskExtractPerformanceV0.h:464
 AliAnalysisTaskExtractPerformanceV0.h:465
 AliAnalysisTaskExtractPerformanceV0.h:466
 AliAnalysisTaskExtractPerformanceV0.h:467
 AliAnalysisTaskExtractPerformanceV0.h:468
 AliAnalysisTaskExtractPerformanceV0.h:469
 AliAnalysisTaskExtractPerformanceV0.h:470
 AliAnalysisTaskExtractPerformanceV0.h:471
 AliAnalysisTaskExtractPerformanceV0.h:472
 AliAnalysisTaskExtractPerformanceV0.h:473
 AliAnalysisTaskExtractPerformanceV0.h:474
 AliAnalysisTaskExtractPerformanceV0.h:475
 AliAnalysisTaskExtractPerformanceV0.h:476
 AliAnalysisTaskExtractPerformanceV0.h:477
 AliAnalysisTaskExtractPerformanceV0.h:478
 AliAnalysisTaskExtractPerformanceV0.h:479
 AliAnalysisTaskExtractPerformanceV0.h:480
 AliAnalysisTaskExtractPerformanceV0.h:481
 AliAnalysisTaskExtractPerformanceV0.h:482
 AliAnalysisTaskExtractPerformanceV0.h:483
 AliAnalysisTaskExtractPerformanceV0.h:484
 AliAnalysisTaskExtractPerformanceV0.h:485
 AliAnalysisTaskExtractPerformanceV0.h:486
 AliAnalysisTaskExtractPerformanceV0.h:487
 AliAnalysisTaskExtractPerformanceV0.h:488
 AliAnalysisTaskExtractPerformanceV0.h:489
 AliAnalysisTaskExtractPerformanceV0.h:490
 AliAnalysisTaskExtractPerformanceV0.h:491
 AliAnalysisTaskExtractPerformanceV0.h:492
 AliAnalysisTaskExtractPerformanceV0.h:493
 AliAnalysisTaskExtractPerformanceV0.h:494
 AliAnalysisTaskExtractPerformanceV0.h:495
 AliAnalysisTaskExtractPerformanceV0.h:496
 AliAnalysisTaskExtractPerformanceV0.h:497
 AliAnalysisTaskExtractPerformanceV0.h:498
 AliAnalysisTaskExtractPerformanceV0.h:499
 AliAnalysisTaskExtractPerformanceV0.h:500
 AliAnalysisTaskExtractPerformanceV0.h:501
 AliAnalysisTaskExtractPerformanceV0.h:502
 AliAnalysisTaskExtractPerformanceV0.h:503
 AliAnalysisTaskExtractPerformanceV0.h:504
 AliAnalysisTaskExtractPerformanceV0.h:505
 AliAnalysisTaskExtractPerformanceV0.h:506
 AliAnalysisTaskExtractPerformanceV0.h:507
 AliAnalysisTaskExtractPerformanceV0.h:508
 AliAnalysisTaskExtractPerformanceV0.h:509
 AliAnalysisTaskExtractPerformanceV0.h:510
 AliAnalysisTaskExtractPerformanceV0.h:511
 AliAnalysisTaskExtractPerformanceV0.h:512
 AliAnalysisTaskExtractPerformanceV0.h:513
 AliAnalysisTaskExtractPerformanceV0.h:514
 AliAnalysisTaskExtractPerformanceV0.h:515
 AliAnalysisTaskExtractPerformanceV0.h:516
 AliAnalysisTaskExtractPerformanceV0.h:517
 AliAnalysisTaskExtractPerformanceV0.h:518
 AliAnalysisTaskExtractPerformanceV0.h:519
 AliAnalysisTaskExtractPerformanceV0.h:520
 AliAnalysisTaskExtractPerformanceV0.h:521
 AliAnalysisTaskExtractPerformanceV0.h:522
 AliAnalysisTaskExtractPerformanceV0.h:523
 AliAnalysisTaskExtractPerformanceV0.h:524