1 #ifndef ALIANALYSISTASKSTRANGE_H
2 #define ALIANALYSISTASKSTRANGE_H
4 /* See cxx source for full Copyright notice */
6 //-----------------------------------------------------------------
7 // AliAnalysisTaskStrange class
8 // This task is for single strange study from ESD/AOD
9 // Origin: H.Ricaud, Helene.Ricaud@IReS.in2p3.fr
10 //-----------------------------------------------------------------
17 #include "AliAnalysisTaskSE.h"
23 class AliAnalysisTaskStrange : public AliAnalysisTaskSE {
25 AliAnalysisTaskStrange();
26 AliAnalysisTaskStrange(const char *name, const char *optCuts);
27 virtual ~AliAnalysisTaskStrange() {}
29 virtual void UserCreateOutputObjects();
30 virtual void UserExec(Option_t *option);
31 virtual void Terminate(Option_t *);
33 void SetCollidingSystems(Short_t collidingSystems = 0) {fCollidingSystems = collidingSystems;}
34 void SetAnalysisType(const char* analysisType) {fAnalysisType = analysisType;}
37 TString fAnalysisType; // ESD or AOD
38 Short_t fCollidingSystems; // Colliding systems 0/1 for pp/PbPb
39 TString fOption; // Option for the selections
40 TList *fListHist; //! List of histograms
41 TH1F *fHistPrimaryVertexPosX; //! Primary vertex position in X
42 TH1F *fHistPrimaryVertexPosY; //! Primary vertex position in Y
43 TH1F *fHistPrimaryVertexPosZ; //! Primary vertex position in Z
44 TH1F *fHistTrackMultiplicity; //! V0 multiplicity distribution
45 TH1F *fHistV0Multiplicity;
47 TH2F *fHistDcaPosToPrimVertex; //! Dca of V0 positive daughter to primary vertex
48 TH2F *fHistDcaNegToPrimVertex; //! Dca of V0 negative daughter to primary vertex
49 TH2F *fHistDcaPosToPrimVertexZoom; //! Zoom
50 TH2F *fHistDcaNegToPrimVertexZoom; //! Zoom
51 TH2F *fHistRadiusV0; //! V0 radial distance distribution
52 TH2F *fHistDecayLengthV0; //! V0 decay length distribution
53 TH2F *fHistDcaV0Daughters; //! Dca between V0 daughters
54 TH2F *fHistChi2; //! V0 chi2 distribution
55 TH2F *fHistCosPointAngle; //! Cosine of V0 pointing angle
56 TH2F *fHistCosPointAngleZoom; //! Zoom
58 // V0 offline distributions
59 TH1F *fHistV0MultiplicityOff; //! V0 multiplicity distribution offline
60 TH2F *fHistPtVsYK0sOff; //! Pt vs.Y with K0s assumption
61 TH2F *fHistPtVsYLambdaOff; //! Pt vs.Y with Lambda assumption
62 TH2F *fHistPtVsYAntiLambdaOff; //! Pt vs.Y with Anti-Lambda assumption
63 TH1F *fHistMassK0sOff; //! Invariant mass of K0s
64 TH1F *fHistMassLambdaOff; //! Invariant mass of Lambda
65 TH1F *fHistMassAntiLambdaOff; //! Invariant mass of Anti-Lambda
66 TH2F *fHistMassVsRadiusK0sOff; //! Invariant mass vs. radius of K0s
67 TH2F *fHistMassVsRadiusLambdaOff; //! Invariant mass vs. radius of Lambda
68 TH2F *fHistMassVsRadiusAntiLambdaOff; //! Invariant mass vs. radius of Anti-Lambda
69 TH2F *fHistPtVsMassK0sOff; //! Pt vs. invariant mass of K0s
70 TH2F *fHistPtVsMassLambdaOff; //! Pt vs. invariant mass of Lambda
71 TH2F *fHistPtVsMassAntiLambdaOff; //! Pt vs. invariant mass of Anti-Lambda
72 TH2F *fHistArmenterosPodolanskiOff; //! Armenteros-Podolanski distribution
74 // V0 on-the-fly distributions
75 TH1F *fHistV0MultiplicityOn; //! V0 multiplicity distribution on-the-fly
76 TH2F *fHistPtVsYK0sOn; //! Pt vs.Y with K0s assumption
77 TH2F *fHistPtVsYLambdaOn; //! Pt vs.Y with Lambda assumption
78 TH2F *fHistPtVsYAntiLambdaOn; //! Pt vs.Y with Anti-Lambda assumption
79 TH1F *fHistMassK0sOn; //! Invariant mass of K0s
80 TH1F *fHistMassLambdaOn; //! Invariant mass of Lambda
81 TH1F *fHistMassAntiLambdaOn; //! Invariant mass of Anti-Lambda
82 TH2F *fHistMassVsRadiusK0sOn; //! Invariant mass vs. radius of K0s
83 TH2F *fHistMassVsRadiusLambdaOn; //! Invariant mass vs. radius of Lambda
84 TH2F *fHistMassVsRadiusAntiLambdaOn; //! Invariant mass vs. radius of Anti-Lambda
85 TH2F *fHistPtVsMassK0sOn; //! Pt vs. invariant mass of K0s
86 TH2F *fHistPtVsMassLambdaOn; //! Pt vs. invariant mass of Lambda
87 TH2F *fHistPtVsMassAntiLambdaOn; //! Pt vs. invariant mass of Anti-Lambda
88 TH2F *fHistArmenterosPodolanskiOn; //! Armenteros-Podolanski distribution
90 AliAnalysisTaskStrange(const AliAnalysisTaskStrange&); // not implemented
91 AliAnalysisTaskStrange& operator=(const AliAnalysisTaskStrange&); // not implemented
93 ClassDef(AliAnalysisTaskStrange, 1);