]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/SPECTRA/AliAnalysisTaskCheckV0.h
Changes in the dca binning
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / AliAnalysisTaskCheckV0.h
1 #ifndef ALIANALYSISTASKCHECKV0_H
2 #define ALIANALYSISTASKCHECKV0_H
3
4 /*  See cxx source for full Copyright notice */
5
6 //-----------------------------------------------------------------
7 //                 AliAnalysisTaskCheckV0 class
8 //            This task is for QAing the V0s from ESD/AOD
9 //              Origin: B.H. Nov2007, hippolyt@in2p3.fr
10 //-----------------------------------------------------------------
11
12 class TString;
13 class TList;
14 class TH1F;
15 class TH2F;
16
17 #include "AliAnalysisTaskSE.h"
18
19 class AliESDEvent;
20 class AliESDVertex;
21 class AliAODEvent;
22
23 class AliAnalysisTaskCheckV0 : public AliAnalysisTaskSE {
24  public:
25   AliAnalysisTaskCheckV0();
26   AliAnalysisTaskCheckV0(const char *name);
27  ~AliAnalysisTaskCheckV0();
28   
29   virtual void   UserCreateOutputObjects();
30   virtual void   UserExec(Option_t *option);
31   virtual void   Terminate(Option_t *);
32
33   void   SetCollidingSystems(Short_t collidingSystems = 0) {fCollidingSystems = collidingSystems;}
34   void   SetUsePhysicsSelection(Bool_t usePhysicsSelection = 0) {fUsePhysicsSelection = usePhysicsSelection;}
35   void   SetAnalysisType(const char* analysisType) {fAnalysisType = analysisType;}
36   void   SetMaxPrimaryVtxPosZ(const Float_t maxPrimaryVtxPosZ = 100.) {fMaxPrimaryVtxPosZ = maxPrimaryVtxPosZ;}
37   void   SetMinV0Pt(const Float_t minV0Pt =   0.) {fMinV0Pt = minV0Pt;}
38   void   SetMaxV0Pt(const Float_t maxV0Pt = 100.) {fMaxV0Pt = maxV0Pt;}
39   void   SetMaxV0Rapidity(const Float_t maxV0Rapidity = 1.) {fMaxV0Rapidity = maxV0Rapidity;}
40   void   SetMinDaughterTpcClusters(const Int_t minDaughterTpcClusters = 80) {fMinDaughterTpcClusters = minDaughterTpcClusters;}
41   
42  private:
43   TString      fAnalysisType;                   //  ESD or AOD
44   Short_t      fCollidingSystems;               //  Colliding systems 0/1 for pp/PbPb
45   Bool_t       fUsePhysicsSelection;            //  Delegate event selection to AliPhysicsSelectionTask
46   Float_t      fMaxPrimaryVtxPosZ;              //  Primary vertex selection in Z
47   Float_t      fMinV0Pt;                        //  Minimum pt selection for the V0
48   Float_t      fMaxV0Pt;                        //  Maximum pt selection for the V0
49   Float_t      fMaxV0Rapidity;                  //  Maximum rapidity selection for the V0
50   Int_t        fMinDaughterTpcClusters;         //  Minimum number of TPC clusters for the both daughter tracks of the V0
51   TList       *fListHist;                       //! List of histograms
52   TH1F        *fHistPrimaryVertexPosX;          //! Primary vertex position in X
53   TH1F        *fHistPrimaryVertexPosY;          //! Primary vertex position in Y
54   TH1F        *fHistPrimaryVertexPosZ;          //! Primary vertex position in Z
55   TH1F        *fHistKeptPrimaryVertexPosX;      //! Primary vertex position in X after event selection
56   TH1F        *fHistKeptPrimaryVertexPosY;      //! Primary vertex position in Y after event selection
57   TH1F        *fHistKeptPrimaryVertexPosZ;      //! Primary vertex position in Z after event selection
58   TH1F        *fHistTrackMultiplicity;          //! Track multiplicity distribution
59   TH1F        *fHistV0Multiplicity;             //! V0 multiplicity distribution
60   TH1F        *fHistV0OnFlyStatus;              //! V0 on fly status distribution
61
62               // V0 offline distributions
63   TH1F        *fHistV0MultiplicityOff;          //! V0 multiplicity distribution offline
64   TH1F        *fHistV0Chi2Off;                  //! V0 chi2 distribution
65   TH1F        *fHistDcaV0DaughtersOff;          //! Dca between V0 daughters
66   TH1F        *fHistV0CosineOfPointingAngleOff; //! Cosine of V0 pointing angle
67   TH1F        *fHistV0RadiusOff;                //! V0 radial distance distribution
68   TH1F        *fHistDcaV0ToPrimVertexOff;       //! Dca of V0 to primary vertex
69   TH1F        *fHistDcaPosToPrimVertexOff;      //! Dca of V0 positive daughter to primary vertex
70   TH1F        *fHistDcaNegToPrimVertexOff;      //! Dca of V0 negative daughter to primary vertex
71
72   TH1F        *fHistMassK0sOff;                 //! Invariant mass of K0s
73   TH1F        *fHistMassLambdaOff;              //! Invariant mass of Lambda
74   TH1F        *fHistMassAntiLambdaOff;          //! Invariant mass of Anti-Lambda
75   TH2F        *fHistMassK0sOffVsPt;             //! Invariant mass of K0s
76   TH2F        *fHistMassLambdaOffVsPt;          //! Invariant mass of Lambda
77   TH2F        *fHistMassAntiLambdaOffVsPt;      //! Invariant mass of Anti-Lambda
78   TH2F        *fHistArmenterosPodolanskiOff;    //! Armenteros-Podolanski distribution       
79
80               // V0 on-the-fly distributions
81   TH1F        *fHistV0MultiplicityOn;           //! V0 multiplicity distribution on-the-fly
82   TH1F        *fHistV0Chi2On;                   //! V0 chi2 distribution
83   TH1F        *fHistDcaV0DaughtersOn;           //! Dca between V0 daughters
84   TH1F        *fHistV0CosineOfPointingAngleOn;  //! Cosine of V0 pointing angle
85   TH1F        *fHistV0RadiusOn;                 //! V0 radial distance distribution
86   TH1F        *fHistDcaV0ToPrimVertexOn;        //! Dca of V0 to primary vertex
87   TH1F        *fHistDcaPosToPrimVertexOn;       //! Dca of V0 positive daughter to primary vertex
88   TH1F        *fHistDcaNegToPrimVertexOn;       //! Dca of V0 negative daughter to primary vertex
89
90   TH1F        *fHistMassK0sOn;                  //! Invariant mass of K0s
91   TH1F        *fHistMassLambdaOn;               //! Invariant mass of Lambda
92   TH1F        *fHistMassAntiLambdaOn;           //! Invariant mass of Anti-Lambda
93   TH2F        *fHistMassK0sOnVsPt;              //! Invariant mass of K0s
94   TH2F        *fHistMassLambdaOnVsPt;           //! Invariant mass of Lambda
95   TH2F        *fHistMassAntiLambdaOnVsPt;       //! Invariant mass of Anti-Lambda
96   TH2F        *fHistArmenterosPodolanskiOn;     //! Armenteros-Podolanski distribution       
97    
98   AliAnalysisTaskCheckV0(const AliAnalysisTaskCheckV0&);            // not implemented
99   AliAnalysisTaskCheckV0& operator=(const AliAnalysisTaskCheckV0&); // not implemented
100   
101   ClassDef(AliAnalysisTaskCheckV0, 1);
102 };
103
104 #endif