1 #ifndef AliAnalysisV0LamCutProcessing_cxx
2 #define AliAnalysisV0LamCutProcessing_cxx
4 #include "AliAnalysisV0LamEventCollection.h"
10 class AliAnalysisV0LamCut
13 AliAnalysisV0LamCut(std::vector<double> variableCutValues, bool isUpperBound);
14 ~AliAnalysisV0LamCut();
15 int fNumberOfCutValues;
16 bool fIsAnUpperLimit; //if this is false, the cut is a lower limit
17 std::vector<double> fCutValues;
20 class AliAnalysisV0LamCutProcessing
22 //created and used in AliAnalysisV0Lam::init
24 AliAnalysisV0LamCutProcessing(TList *const outputList);
25 ~AliAnalysisV0LamCutProcessing();
26 void CheckIfV0PassesCuts(AliReconstructedV0 *v0);
27 void DoV0Histogramming(AliReconstructedV0 *v0);
28 int GetNumberOfVariableCutValues() const {return fNumberOfVariableCutValues;}
29 void SetCentralityBin(int centBin) {fCurrentCentralityBin = centBin;}
30 int GetVariableCutIndex() {return fDefaultVariableCutIndex;}
32 void InitHistograms();
33 void SortAndFillCutHistograms(AliReconstructedV0 *v0, bool isLambda);
34 void ProcessCut(AliReconstructedV0 *v0, int index, bool isLambdaCandidate);
35 void DetermineIfTrueV0(AliReconstructedV0 *v0, bool isLambda);
36 void FillHist(AliReconstructedV0 *v0, int cutTypeIndex, int variableCutIndex, bool isLambda);
37 AliAnalysisV0LamCut* fCuts[10];
38 int fNumberOfCutTypes;
39 int fNumberOfVariableCutValues;
40 int fCurrentCentralityBin;
41 int fDefaultVariableCutIndex;
42 TList *fOutputList; //! Compact output list where histograms are written
43 //These hists are filled during the V0 reconstruction process
44 TH2F *fHistDaughterPosDcaToPrimLam;
45 TH2F *fHistDaughterPosDcaToPrimALam;
46 TH2F *fHistDaughterNegDcaToPrimLam;
47 TH2F *fHistDaughterNegDcaToPrimALam;
48 TH2F *fHistDaughtersDcaLam;
49 TH2F *fHistDaughtersDcaALam;
50 TH2F *fHistDecayLengthLam;
51 TH2F *fHistDecayLengthALam;
52 TH2F *fHistProperDecayLengthLam;
53 TH2F *fHistProperDecayLengthALam;
56 TH2F *fHistCosPointingLam;
57 TH2F *fHistCosPointingALam;
64 TH3F *fHistMassCentralityLam;
65 TH3F *fHistMassCentralityALam;