]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/SPECTRA/AliAnalysisTaskCheckV0.h
Important update for the task CheckV0 (B.Hippolyte)
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / AliAnalysisTaskCheckV0.h
CommitLineData
c2c631b3 1#ifndef ALIANALYSISTASKCHECKV0_H
2#define ALIANALYSISTASKCHECKV0_H
96cad837 3
4/* See cxx source for full Copyright notice */
5
6//-----------------------------------------------------------------
c8eada4f 7// AliAnalysisTaskCheckV0 class
8// This task is for QAing the V0s from ESD/AOD
96cad837 9// Origin: B.H. Nov2007, hippolyt@in2p3.fr
10//-----------------------------------------------------------------
11
c8eada4f 12class TString;
96cad837 13class TList;
14class TH1F;
50b713dc 15class TH2F;
96cad837 16
c8eada4f 17#include "AliAnalysisTaskSE.h"
96cad837 18
c2c631b3 19class AliESDEvent;
20class AliESDVertex;
21class AliAODEvent;
22
c8eada4f 23class AliAnalysisTaskCheckV0 : public AliAnalysisTaskSE {
96cad837 24 public:
b638d7f5 25 AliAnalysisTaskCheckV0();
26 AliAnalysisTaskCheckV0(const char *name);
c8eada4f 27 virtual ~AliAnalysisTaskCheckV0() {}
96cad837 28
976dc218 29 virtual void UserCreateOutputObjects();
30 virtual void UserExec(Option_t *option);
96cad837 31 virtual void Terminate(Option_t *);
c8eada4f 32
83db4a5d 33 void SetCollidingSystems(Short_t collidingSystems = 0) {fCollidingSystems = collidingSystems;}
7285f641 34 void SetUsePhysicsSelection(Bool_t usePhysicsSelection = 0) {fUsePhysicsSelection = usePhysicsSelection;}
c8eada4f 35 void SetAnalysisType(const char* analysisType) {fAnalysisType = analysisType;}
7285f641 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;}
96cad837 41
42 private:
c8eada4f 43 TString fAnalysisType; // ESD or AOD
83db4a5d 44 Short_t fCollidingSystems; // Colliding systems 0/1 for pp/PbPb
7285f641 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
96cad837 51 TList *fListHist; //! List of histograms
b638d7f5 52 TH1F *fHistPrimaryVertexPosX; //! Primary vertex position in X
53 TH1F *fHistPrimaryVertexPosY; //! Primary vertex position in Y
54 TH1F *fHistPrimaryVertexPosZ; //! Primary vertex position in Z
7285f641 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
96cad837 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
9ea746fc 72 TH1F *fHistMassK0sOff; //! Invariant mass of K0s
73 TH1F *fHistMassLambdaOff; //! Invariant mass of Lambda
74 TH1F *fHistMassAntiLambdaOff; //! Invariant mass of Anti-Lambda
7285f641 75 TH2F *fHistMassK0sOffVsPt; //! Invariant mass of K0s
76 TH2F *fHistMassLambdaOffVsPt; //! Invariant mass of Lambda
77 TH2F *fHistMassAntiLambdaOffVsPt; //! Invariant mass of Anti-Lambda
50b713dc 78 TH2F *fHistArmenterosPodolanskiOff; //! Armenteros-Podolanski distribution
96cad837 79
80 // V0 on-the-fly distributions
9ea746fc 81 TH1F *fHistV0MultiplicityOn; //! V0 multiplicity distribution on-the-fly
96cad837 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
9ea746fc 90 TH1F *fHistMassK0sOn; //! Invariant mass of K0s
91 TH1F *fHistMassLambdaOn; //! Invariant mass of Lambda
92 TH1F *fHistMassAntiLambdaOn; //! Invariant mass of Anti-Lambda
7285f641 93 TH2F *fHistMassK0sOnVsPt; //! Invariant mass of K0s
94 TH2F *fHistMassLambdaOnVsPt; //! Invariant mass of Lambda
95 TH2F *fHistMassAntiLambdaOnVsPt; //! Invariant mass of Anti-Lambda
50b713dc 96 TH2F *fHistArmenterosPodolanskiOn; //! Armenteros-Podolanski distribution
96cad837 97
c8eada4f 98 AliAnalysisTaskCheckV0(const AliAnalysisTaskCheckV0&); // not implemented
99 AliAnalysisTaskCheckV0& operator=(const AliAnalysisTaskCheckV0&); // not implemented
96cad837 100
976dc218 101 ClassDef(AliAnalysisTaskCheckV0, 1);
96cad837 102};
103
104#endif