]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG2/SPECTRA/AliAnalysisTaskESDDedx.h
Coverity fixes for BUFFER_SIZE
[u/mrichter/AliRoot.git] / PWG2 / SPECTRA / AliAnalysisTaskESDDedx.h
CommitLineData
1c751881 1#ifndef AliAnalysisTaskESDDedx_cxx
2#define AliAnalysisTaskESDDedx_cxx
3
4/* See cxx source for full Copyright notice */
5
6//-----------------------------------------------------------------
7// AliAnalysisTaskESDDedx class
8// This task is for QAing the dE/dx from the ESD
9// Origin: B.H. Nov2007, hippolyt@in2p3.fr
10//-----------------------------------------------------------------
11
12class TList;
13class TH1F;
14class TH2F;
15class AliESDEvent;
16
17#include "AliAnalysisTask.h"
18
19class AliAnalysisTaskESDDedx : public AliAnalysisTask {
20 public:
21 AliAnalysisTaskESDDedx(const char *rName = "AliAnalysisTaskESDDedx",
5fda52f1 22 const Bool_t rAllConstrainedFlag = kFALSE,
23 const Bool_t rMidPseudoRapidityFlag = kFALSE,
24 const Bool_t rSelTrackRemoveKink = kTRUE,
25 const Bool_t rSelTrackWithOnTheFlyV0 = kFALSE,
1c751881 26 const Int_t rSelTrackMinClustersTPC = 50,
27 const Int_t rSelTrackMinClustersITS = 0,
28 const Float_t rSelTrackMaxChi2PerClusterTPC = 3.5,
29 const Float_t rSelTrackMaxChi2PerClusterITS = 10,
30 const Double_t rSelTrackMaxCov11 = 2.0,
31 const Double_t rSelTrackMaxCov22 = 2.0,
32 const Double_t rSelTrackMaxCov33 = 0.5,
33 const Double_t rSelTrackMaxCov44 = 0.5,
5fda52f1 34 const Double_t rSelTrackMaxCov55 = 2.0,
35 const Double_t rSelV0MaxDcaDaughters = 0.5,
36 const Double_t rSelV0MinDecayLength = 0.0);
37
1c751881 38 virtual ~AliAnalysisTaskESDDedx() {}
39
40 virtual void ConnectInputData(Option_t *);
41 virtual void CreateOutputObjects();
42 virtual void Exec(Option_t *option);
43 virtual void Terminate(Option_t *);
44
45 private:
46
47 Bool_t IsAccepted(AliESDtrack *track);
48 // Float_t GetSigmaToVertex(AliESDtrack* esdTrack);
49
50 AliESDEvent *fESD; //! ESD object
51 TList *fListHist; //! List of histograms
52 TH1F *fHistPtot; //! Ptot spectrum
53
54 TH1F *fHistMultiplicity; //! Multiplicity distribution
55 TH2F *fHistTPCDedxVsMomentum; //! TPC dE/dx vs momemtum
56 TH2F *fHistITSDedxVsMomentum; //! ITS dE/dx vs momemtum
57 TH1F *fHistMassK0; //! Invariant Mass of K0s
58 TH1F *fHistMassLambda; //! Invariant Mass of Lambda
59 TH1F *fHistMassAntiLambda; //! Invariant Mass of Anti-Lambda
60 TH2F *fHistTPCDedxVsMomPosK0; //! TPC dE/dx vs momemtum for K0 positive daughter
61 TH2F *fHistTPCDedxVsMomNegK0; //! TPC dE/dx vs momemtum for K0 negative daughter
5fda52f1 62 TH2F *fHistTPCDedxVsMomPosLambda; //! TPC dE/dx vs momemtum for Lambda positive daughter
63 TH2F *fHistTPCDedxVsMomNegLambda; //! TPC dE/dx vs momemtum for Lambda negative daughter
64 TH2F *fHistTPCDedxVsMomPosAntiLambda; //! TPC dE/dx vs momemtum for Anti-Lambda positive daughter
65 TH2F *fHistTPCDedxVsMomNegAntiLambda; //! TPC dE/dx vs momemtum for Anti-Lambda negative daughter
1c751881 66 TH1F *fHistDiffInOutMomentum; //! Difference between inner and outer TPC momenta
67 TH1F *fHistDiffPrimOutMomentum; //! Difference between primary and outer TPC momenta
68 TH1F *fHistDiffPrimMeanMomentum; //! Difference between primary and (inner+outer)/2 TPC momenta
69 TH1F *fHistPercPrimMeanMomentum; //! Percentage between primary and (inner+outer)/2 TPC momenta
70 TH1F *fHistPrimEta; //! Pseudorapidity distribution
71 TH2F *fHistPercPrimMeanMomentumVsEta; //! Same as fHistDiffPrimMeanMomentum but vs pseudorapidity
72 TH2F *fHistPercPrimMeanMomentumVsPrim; //! Same as fHistDiffPrimMeanMomentum but vs primary momentum
73
74 TH1F *fHistMultiplicityCuts; //! Same as above but once primary track cuts applied
75 TH2F *fHistTPCDedxVsMomentumCuts; //!
76 TH2F *fHistITSDedxVsMomentumCuts; //!
77 TH1F *fHistMassK0Cuts; //!
78 TH1F *fHistMassLambdaCuts; //!
79 TH1F *fHistMassAntiLambdaCuts; //!
80 TH2F *fHistTPCDedxVsMomPosK0Cuts; //!
81 TH2F *fHistTPCDedxVsMomNegK0Cuts; //!
5fda52f1 82 TH2F *fHistTPCDedxVsMomPosLambdaCuts; //!
83 TH2F *fHistTPCDedxVsMomNegLambdaCuts; //!
84 TH2F *fHistTPCDedxVsMomPosAntiLambdaCuts; //!
85 TH2F *fHistTPCDedxVsMomNegAntiLambdaCuts; //!
1c751881 86 TH1F *fHistDiffInOutMomentumCuts; //!
87 TH1F *fHistDiffPrimOutMomentumCuts; //!
88 TH1F *fHistDiffPrimMeanMomentumCuts; //!
89 TH1F *fHistPercPrimMeanMomentumCuts; //!
90 TH1F *fHistPrimEtaCuts; //!
91 TH2F *fHistPercPrimMeanMomentumVsEtaCuts; //!
92 TH2F *fHistPercPrimMeanMomentumVsPrimCuts; //!
93
582f16a7 94 Bool_t fAllConstrainedFlag; // Primary vertex constrain requirement
95 Bool_t fMidPseudoRapidityFlag; // Mid-eta requirement
1c751881 96
582f16a7 97 // Track selections: streaming allowed and needed !
5fda52f1 98 Bool_t fSelTrackRemoveKink; // Remove kink candidates
99 Bool_t fSelTrackWithOnTheFlyV0; // Select daughter tracks from on-the-fly V0s
582f16a7 100 Int_t fSelTrackMinClustersTPC; // Minimum number of cluster in the TPC
101 Int_t fSelTrackMinClustersITS; // Minimum number of cluster in the ITS
102 Float_t fSelTrackMaxChi2PerClusterTPC; // Maximum chisq per cluster in the TPC
103 Float_t fSelTrackMaxChi2PerClusterITS; // Maximum chisq per cluster in the ITS
104 Double_t fSelTrackMaxCov11; // Maximum value for cov.mat. diag. element
105 Double_t fSelTrackMaxCov22; // Maximum value for cov.mat. diag. element
106 Double_t fSelTrackMaxCov33; // Maximum value for cov.mat. diag. element
107 Double_t fSelTrackMaxCov44; // Maximum value for cov.mat. diag. element
108 Double_t fSelTrackMaxCov55; // Maximum value for cov.mat. diag. element
5fda52f1 109 Double_t fSelV0MaxDcaDaughters; // Maximum value for DCA between V0 daughter tracks
110 Double_t fSelV0MinDecayLength; // Minimum value for V0 decay length
1c751881 111
112 AliAnalysisTaskESDDedx(const AliAnalysisTaskESDDedx&); // not implemented
113 AliAnalysisTaskESDDedx& operator=(const AliAnalysisTaskESDDedx&); // not implemented
114
115 ClassDef(AliAnalysisTaskESDDedx, 1);
116};
117
118#endif