]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG1/AliAnalysisTaskV0QA.h
Bug fix
[u/mrichter/AliRoot.git] / PWG1 / AliAnalysisTaskV0QA.h
CommitLineData
d38f1e88 1#include "TH1.h"
2#include "THnSparse.h"
3#include "TList.h"
4#include "AliESDEvent.h"
5#include "AliESD.h"
6#include "TLorentzVector.h"
7
8#include "AliAnalysisTask.h"
9#include "AliAnalysisManager.h"
10#include "AliAnalysisDataContainer.h"
11#include "AliESDtrackCuts.h"
12class AliESDtrackCuts;
13class TChain;
14
15class AliAnalysisTaskV0QA : public AliAnalysisTask {
16 public:
17 // AliAnalysisTaskV0QA() : AliAnalysisTask(), fESD(0), fChain(0) {}
18 AliAnalysisTaskV0QA(const char *name);
19 virtual ~AliAnalysisTaskV0QA();
20
21 virtual void ConnectInputData(Option_t *);
22 virtual void CreateOutputObjects();
23 virtual void Exec(Option_t *option);
24 virtual void Terminate(Option_t *);
25
26 void InspectListOfChargedParticles();
27 void InspectListOfV0s();
28 void FillHnSparseGamma();
29 void FillHnSparseK0();
30 void FillHnSparseL();
31 void FillHnSparseAL();
32
33 // void getPID(AliESDtrack *esdTrack, Stat_t &fpid, Stat_t &fweight);
34
35
36 // AliESDtrackCuts* fEsdTrackCuts; // Object containing the parameters of the esd track cuts
37 // void SetESDtrackCuts();
38
39
40
41
42 Int_t GetTPCReference(Int_t label);
43
44
45
46
47 private:
48
49
50
51 AliESDEvent *fESD; //ESD object
52 AliStack * stack;
53 AliMCEventHandler* mctruth;
54
55 TChain * fChain;
56 TList * fOutputContainer; // ! output data container
57
58 THnSparse *fSparseV0;
59 THnSparse *fSparseK0;
60 THnSparse *fSparseL;
61 THnSparse *fSparseAL;
62
63 //////////////////////////////////
64
65 Int_t nEv;
66
67 Int_t nConvGamGeant;
68
69 Int_t * gConvGamGeantIndex;
70 Int_t * eNegConvGamGeantIndex;
71 Int_t * ePosConvGamGeantIndex;
72 Float_t * eNegConvGamGeantLength;
73 Float_t * ePosConvGamGeantLength;
74
75
76 Int_t * eNegConvGamSingleRecIndex;
77 Int_t * ePosConvGamSingleRecIndex;
78 Int_t * eNegConvGamV0RecIndex;
79 Int_t * ePosConvGamV0RecIndex;
80 Int_t * ConvGamV0RecIndexPos;
81 Int_t * ConvGamV0RecIndexNeg;
82
83
84 Int_t gDim;
85 // Lambda
86 Int_t nDecayLGeant;
87 Int_t * lDecayLGeantIndex;
88 Int_t * piNegDecayLGeantIndex;
89 Int_t * pPosDecayLGeantIndex;
90 Float_t * piNegDecayLGeantLength;
91 Float_t * pPosDecayLGeantLength;
92
93 Int_t * piNegDecayLSingleRecIndex;
94 Int_t * pPosDecayLSingleRecIndex;
95 Int_t * piNegDecayLV0RecIndex;
96 Int_t * pPosDecayLV0RecIndex;
97 Int_t * DecayLV0RecIndexPos;
98 Int_t * DecayLV0RecIndexNeg;
99
100
101 // AntiLambda
102 Int_t nDecayALGeant;
103 Int_t * alDecayALGeantIndex;
104 Int_t * piPosDecayALGeantIndex;
105 Int_t * apNegDecayALGeantIndex;
106 Float_t * piPosDecayALGeantLength;
107 Float_t * apNegDecayALGeantLength;
108
109 Int_t * piPosDecayALSingleRecIndex;
110 Int_t * apNegDecayALSingleRecIndex;
111 Int_t * piPosDecayALV0RecIndex;
112 Int_t * apNegDecayALV0RecIndex;
113 Int_t * DecayALV0RecIndexPos;
114 Int_t * DecayALV0RecIndexNeg;
115
116
117 // K0S
118 Int_t nDecayK0Geant;
119 Int_t * K0DecayK0GeantIndex;
120 Int_t * piNegDecayK0GeantIndex;
121 Int_t * piPosDecayK0GeantIndex;
122 Float_t * piNegDecayK0GeantLength;
123 Float_t * piPosDecayK0GeantLength;
124
125 Int_t * piNegDecayK0SingleRecIndex;
126 Int_t * piPosDecayK0SingleRecIndex;
127 Int_t * piNegDecayK0V0RecIndex;
128 Int_t * piPosDecayK0V0RecIndex;
129 Int_t * DecayK0V0RecIndexPos;
130 Int_t * DecayK0V0RecIndexNeg;
131
132 Int_t piPosK0Index;
133 Int_t piNegK0Index;
134
135
136 Int_t nTracksPrim;
137
138
139 Int_t tpcRefit;
140 Int_t itsRefit;
141 Int_t trdRefit;
142 Int_t trdOut;
143
144
145
146
147 Double_t probabilityPos[AliPID::kSPECIES];
148 Double_t probabilityNeg[AliPID::kSPECIES];
149
150 Double_t * fValueL;
151 Double_t * fValueAL;
152 Double_t * fValueK0;
153 Double_t * fValueV0;
154
155 Double_t * xminV0;
156 Double_t * xmaxV0;
157 Int_t * binsV0;
158 Int_t fDim;
159
160
161
162 TObjArray* fRefTPC;
163 int fLabelsTPC[100000];
164
165
166 TClonesArray *clRefsN;
167 TClonesArray *clRefsP;
168
169 // MC variables
170
171 AliAnalysisTaskV0QA (const AliAnalysisTaskV0QA & v0QA );
172 AliAnalysisTaskV0QA & operator=(const AliAnalysisTaskV0QA & v0QA);
173
174
175
176 ClassDef(AliAnalysisTaskV0QA, 1); // example of analysis
177};