]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWGCF/FEMTOSCOPY/V0LamAnalysis/AliAnalysisV0LamCutProcessing.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / V0LamAnalysis / AliAnalysisV0LamCutProcessing.h
1 #ifndef AliAnalysisV0LamCutProcessing_cxx
2 #define AliAnalysisV0LamCutProcessing_cxx
3
4 #include "AliAnalysisV0LamEventCollection.h"
5 #include "TH1F.h"
6 #include "TH2F.h"
7 #include "TH3F.h"
8 #include "TList.h"
9
10 class AliAnalysisV0LamCut
11 {
12  public:
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;
18 };
19
20 class AliAnalysisV0LamCutProcessing
21 {
22   //created and used in AliAnalysisV0Lam::init
23 public:
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;}
31 private:
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;
54   TH2F *fHistEtaLam;
55   TH2F *fHistEtaALam;
56   TH2F *fHistCosPointingLam;
57   TH2F *fHistCosPointingALam;
58   TH2F *fHistDcaLam;
59   TH2F *fHistDcaALam;
60   TH2F *fHistPtLam;
61   TH2F *fHistPtALam;
62   TH2F *fHistMassLam; 
63   TH2F *fHistMassALam;
64   TH3F *fHistMassCentralityLam;
65   TH3F *fHistMassCentralityALam;
66 };
67
68 #endif