]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGCF/FEMTOSCOPY/AliFemto/AliFemtoV0.h
updates in macros for Femto QA in train
[u/mrichter/AliRoot.git] / PWGCF / FEMTOSCOPY / AliFemto / AliFemtoV0.h
CommitLineData
76ce4b5b 1///////////////////////////////////////////////////////////////////////////
2// //
3// AliFemtoV0: special type of particle desling with the specifics //
4// of the V0 type of particle
5// //
6///////////////////////////////////////////////////////////////////////////
7#ifndef ALIFEMTOV0_H
8#define ALIFEMTOV0_H
9
10#include "AliFemtoTypes.h" //same as in AliFemtoTrack.h
11#include "AliFmPhysicalHelixD.h" // Gael 12 Sept 02
973a91f8 12#include "AliFemtoThreeVector.h"
13#include "TBits.h"
76ce4b5b 14#ifdef __ROOT__
15#ifndef __NO_STAR_DEPENDENCE_ALLOWED__
16#include "StStrangeMuDstMaker/StV0MuDst.h"
17#endif
18#endif
19/* Th stuff */
20#include "AliFemtoHiddenInfo.h"
21/***/
22
23class AliFemtoV0 {
24public:
25 AliFemtoV0();
26 AliFemtoV0(const AliFemtoV0& v); // copy constructor
27#ifdef __ROOT__
28#ifndef __NO_STAR_DEPENDENCE_ALLOWED__
29 AliFemtoV0( StV0MuDst&); // from strangeness V0 micro dst structure
30#endif
31#endif
32 virtual ~AliFemtoV0(){if(fHiddenInfo) delete fHiddenInfo;}
33 AliFemtoV0& operator=(const AliFemtoV0& aV0);
34
35
36 float DecayLengthV0() const; // 3-d decay distance
37 AliFemtoThreeVector DecayVertexV0() const; // Coordinates of decay vertex
38 AliFemtoThreeVector PrimaryVertex() const; // Coordinates of primary vertex
39 float DecayVertexV0X() const; // Coordinates of decay vertex
40 float DecayVertexV0Y() const; // Coordinates of decay vertex
41 float DecayVertexV0Z() const; // Coordinates of decay vertex
42 float DcaV0Daughters() const; // DCA of v0 daughters at Decay vertex
43 float DcaV0ToPrimVertex() const; // DCA of v0 to primary vertex
44 float DcaPosToPrimVertex() const; // DCA of pos v0 daughter to pri vertex
45 float DcaNegToPrimVertex() const; // DCA of neg v0 daughter to pri vertex
46 AliFemtoThreeVector MomPos() const; // Momentum components of pos. daughter
47 float MomPosX() const; // Momentum components of pos. daughter
48 float MomPosY() const; // Momentum components of pos. daughter
49 float MomPosZ() const; // Momentum components of pos. daughter
50 AliFemtoThreeVector MomNeg() const; // Momentum components of neg. daughter
51 float MomNegX() const; // Momentum components of neg. daughter
52 float MomNegY() const; // Momentum components of neg. daughter
53 float MomNegZ() const; // Momentum components of neg. daughter
973a91f8 54
55 float EtaPos() const;//Pseudorapidity V0
56 float EtaNeg() const; //Pseudorapidity V0
57 int TPCNclsPos() const;
58 int TPCNclsNeg() const;
59 const TBits& TPCclustersPos() const;
60 const TBits& TPCclustersNeg() const;
61 const TBits& TPCsharingPos() const;
62 const TBits& TPCsharingNeg() const;
63 int NdofPos() const;
64 int NdofNeg() const;
0dd2e4ee 65 unsigned long StatusPos() const;
66 unsigned long StatusNeg() const;
7eb9f5d0 67
973a91f8 68
76ce4b5b 69 int TpcHitsPos() const; // Number of TPC hits on pos. daughter
70 int TpcHitsNeg() const; // Number of TPC hits on neg. daughter
71 unsigned long TrackTopologyMapPos(unsigned int word) const;
72 unsigned long TrackTopologyMapNeg(unsigned int word) const;
73
973a91f8 74 AliFemtoThreeVector MomV0() const ; // Momentum components of V0
75 double EtaV0() const ;// Pseudorapidity V0
76 double PhiV0() const ;// Phi V0
77
78 double YV0() const;
76ce4b5b 79 float MomV0X() const ; // Momentum components of V0
80 float MomV0Y() const ; // Momentum components of V0
81 float MomV0Z() const ; // Momentum components of V0
82 float AlphaV0() const ; // Armenteros-Podolanski variable
83 float PtArmV0() const ; // Armenteros-Podolanski variable
84 float ELambda() const ; // Energy assuming lambda hypothesis
85 float EK0Short() const ; // Energy assuming k-short hypothesis
86 float EPosProton() const ; // Energy of pos. daughter assuming proton
87 float EPosPion() const ; // Energy of pos. daughter assuming pion
88 float ENegProton() const ; // Energy of neg. daughter assuming antiproton
89 float ENegPion() const ; // Energy of neg. daughter assuming pion
90 float MassLambda() const ; // Mass assuming lambda hypothesis
91 float MassAntiLambda() const ; // Mass assuming antilambda hypothesis
92 float MassK0Short() const ; // Mass assuming k-short hypothesis
93 float RapLambda() const ; // Rapidity assuming (anti) constlambda
94 float RapK0Short() const ; // Rapidity assuming k-short
95 float CTauLambda() const ; // Lifetime (ctau) const assuming (anti) constlambda
96 float CTauK0Short() const ; // Lifetime (ctau) const assuming k-short
97 float PtV0() const ; // Transverse momentum
973a91f8 98 float PtotV0() const ; // Total momentum
99 double CosPointingAngle() const;
76ce4b5b 100 float PtPos() const ; // Transverse momentum of pos. daughter
101 float PtotPos() const ; // Total momentum of pos. daughter
102 float DedxPos() const; // dedx of Positive track
103 float NumdedxPos() const;
104// number of hits in dE/dX track of pos. daughter--Gael04Fev 2002
105 float ErrdedxPos() const;
106// error on dedx of Positive track--Gael04Fev 2002
107 float LendedxPos() const;
108// Length of dE/dX track of pos. daughter--Gael04Fev 2002
109 float PseudoRapPos() const;
110// Length of dE/dX track of neg. daughter--Gael04Fev 2002
111
112 float PtNeg() const ; // Transverse momentum of neg. daughter
113 float PtotNeg() const ; // Total momentum of neg. daughter
114 float DedxNeg() const; // dedx of Negative track
115 float NumdedxNeg() const;
116// number of hits in dE/dX track of neg. daughter--Gael04Fev 2002
117 float ErrdedxNeg() const;
118// error on dedx of Negative track--Gael04Fev 2002
119 float LendedxNeg() const;
120// Length of dE/dX track of neg. daughter--Gael04Fev 2002
121 float PseudoRapNeg() const;
122// Length of dE/dX track of neg. daughter--Gael04Fev 2002
123
973a91f8 124 int IdNeg() const; // Id of negative track
125 int IdPos() const; // Id of positive track
126 int KeyNeg() const; // Id of negative track
127 int KeyPos() const; // Id of positive track
128
129 float PosNSigmaTPCK() const ;
130 float PosNSigmaTPCPi() const ;
131 float PosNSigmaTPCP() const ;
132 float NegNSigmaTPCK() const ;
133 float NegNSigmaTPCPi() const ;
134 float NegNSigmaTPCP() const ;
135
136 float PosNSigmaTOFK() const ;
137 float PosNSigmaTOFPi() const ;
138 float PosNSigmaTOFP() const ;
139 float NegNSigmaTOFK() const ;
140 float NegNSigmaTOFPi() const ;
141 float NegNSigmaTOFP() const ;
142
143
144
145 bool OnFlyStatusV0() const;
76ce4b5b 146
147 const AliFmPhysicalHelixD& HelixPos() const; // Gael 12 Sept 02
973a91f8 148 const AliFmPhysicalHelixD& HelixNeg() const; // Gael 12 Sept 02
149
150
151 AliFemtoThreeVector NominalTpcEntrancePointPos() const;
ce7b3d98 152 AliFemtoThreeVector NominalTpcPointPos(int i);
973a91f8 153 AliFemtoThreeVector NominalTpcExitPointPos() const;
154 AliFemtoThreeVector NominalTpcEntrancePointNeg() const;
ce7b3d98 155 AliFemtoThreeVector NominalTpcPointNeg(int i);
973a91f8 156 AliFemtoThreeVector NominalTpcExitPointNeg() const;
76ce4b5b 157
158 void UpdateV0(); // Fills derived info
159 void SetdecayLengthV0(const float x);
160 void SetdecayVertexV0(const AliFemtoThreeVector v);
161 void SetdecayVertexV0X(const float x);
162 void SetdecayVertexV0Y(const float x);
163 void SetdecayVertexV0Z(const float x);
164 void SetdcaV0Daughters(const float x);
165 void SetdcaV0ToPrimVertex(const float x);
166 void SetdcaPosToPrimVertex(const float x);
167 void SetdcaNegToPrimVertex(const float x);
168 void SetmomPos(const AliFemtoThreeVector v);
169 void SetmomPosX(const float x);
170 void SetmomPosY(const float x);
171 void SetmomPosZ(const float x);
172 void SetmomNeg(const AliFemtoThreeVector v);
173 void SetmomNegX(const float x);
174 void SetmomNegY(const float x);
175 void SetmomNegZ(const float x);
176
973a91f8 177 void SetEtaPos(const float x);
178 void SetEtaNeg(const float x);
179 void SetTPCNclsPos(const int x);
180 void SetTPCNclsNeg(const int x);
181 void SetTPCclustersPos(const TBits& x);
182 void SetTPCclustersNeg(const TBits& x);
183 void SetTPCsharingPos(const TBits& x);
184 void SetTPCsharingNeg(const TBits& x);
185 void SetNdofPos(const int x);
186 void SetNdofNeg(const int x);
0dd2e4ee 187 void SetStatusPos(const unsigned long x);
188 void SetStatusNeg(const unsigned long x);
973a91f8 189
76ce4b5b 190 void SettpcHitsPos(const int& i);
191 void SettpcHitsNeg(const int& i);
192
193 void SetTrackTopologyMapPos(unsigned int word, const unsigned long& m);
194 void SetTrackTopologyMapNeg(unsigned int word, const unsigned long& m);
195
196 void SetmomV0( AliFemtoThreeVector v);
973a91f8 197 void SetEtaV0 (double x);
198 void SetPhiV0 (double x);
199 void SetYV0(double x);
76ce4b5b 200 void SetmomV0X( float x);
201 void SetmomV0Y( float x);
202 void SetmomV0Z( float x);
203 void SetalphaV0( float x);
204 void SetptArmV0( float x);
205 void SeteLambda( float x);
206 void SeteK0Short( float x);
207 void SetePosProton( float x);
208 void SetePosPion( float x);
209 void SeteNegProton( float x);
210 void SeteNegPion( float x);
211 void SetmassLambda( float x);
212 void SetmassAntiLambda( float x);
213 void SetmassK0Short( float x);
214 void SetrapLambda( float x);
215 void SetrapK0Short( float x);
216 void SetcTauLambda( float x);
217 void SetcTauK0Short( float x);
218 void SetptV0( float x);
219 void SetptotV0( float x);
220 void SetptPos( float x);
221 void SetptotPos( float x);
222 void SetptNeg( float x);
223 void SetptotNeg( float x);
973a91f8 224 void SetidNeg(const int& i);
225 void SetidPos(const int& i);
76ce4b5b 226 void SetdedxNeg(float x);
227 void SeterrdedxNeg(float x);//Gael 04Fev2002
228 void SetlendedxNeg(float x);//Gael 04Fev2002
229 void SetpseudoRapNeg(float x);//Gael 04Fev2002
230 void SetdedxPos(float x);
231 void SeterrdedxPos(float x);//Gael 04Fev2002
232 void SetlendedxPos(float x);//Gael 04Fev2002
233 void SetpseudoRapPos(float x);//Gael 04Fev2002
973a91f8 234 void SetkeyNeg(const int& i);
235 void SetkeyPos(const int& i);
236 void SetCosPointingAngle(double x);
76ce4b5b 237
973a91f8 238 void SetOnFlyStatusV0(bool x);
76ce4b5b 239 void SetHelixPos(const AliFmPhysicalHelixD& h); // Gael 12 Sept 02
240 void SetHelixNeg(const AliFmPhysicalHelixD& h); // Gael 12 Sept 02
241
973a91f8 242 void SetPosNSigmaTPCK(float x);
243 void SetPosNSigmaTPCPi(float x);
244 void SetPosNSigmaTPCP(float x);
245 void SetNegNSigmaTPCK(float x);
246 void SetNegNSigmaTPCPi(float x);
247 void SetNegNSigmaTPCP(float x);
248
249 void SetPosNSigmaTOFK(float x);
250 void SetPosNSigmaTOFPi(float x);
251 void SetPosNSigmaTOFP(float x);
252 void SetNegNSigmaTOFK(float x);
253 void SetNegNSigmaTOFPi(float x);
254 void SetNegNSigmaTOFP(float x);
255
256 void SetNominalTpcEntrancePointPos(AliFemtoThreeVector x);
ce7b3d98 257 void SetNominalTpcPointPos(AliFemtoThreeVector *x);
973a91f8 258 void SetNominalTpcExitPointPos(AliFemtoThreeVector x);
259 void SetNominalTpcEntrancePointNeg(AliFemtoThreeVector x);
ce7b3d98 260 void SetNominalTpcPointNeg(AliFemtoThreeVector *x);
973a91f8 261 void SetNominalTpcExitPointNeg(AliFemtoThreeVector x);
262
ce7b3d98 263 void SetTPCMomentumPos(double x);
264 void SetTPCMomentumNeg(double x);
265 double GetTPCMomentumPos() const;
266 double GetTPCMomentumNeg() const;
267
268 void SetTOFProtonTimePos(double x);
269 void SetTOFPionTimePos(double x);
270 void SetTOFKaonTimePos(double x);
271 double TOFProtonTimePos() const;
272 double TOFPionTimePos() const;
273 double TOFKaonTimePos() const;
274
275 void SetTOFProtonTimeNeg(double x);
276 void SetTOFPionTimeNeg(double x);
277 void SetTOFKaonTimeNeg(double x);
278 double TOFProtonTimeNeg() const;
279 double TOFPionTimeNeg() const;
280 double TOFKaonTimeNeg() const;
281
7eb9f5d0 282 void SetImpactDprimPos(const float& x);
283 void SetImpactDweakPos(const float& x);
284 void SetImpactDmatPos(const float& x);
285 float ImpactDprimPos()const;
286 float ImpactDweakPos()const;
287 float ImpactDmatPos()const;
288 void SetImpactDprimNeg(const float& x);
289 void SetImpactDweakNeg(const float& x);
290 void SetImpactDmatNeg(const float& x);
291 float ImpactDprimNeg()const;
292 float ImpactDweakNeg()const;
293 float ImpactDmatNeg()const;
ce7b3d98 294
76ce4b5b 295 void SetprimaryVertex(const AliFemtoThreeVector v);//Gael 24 Sept 02
296 /* Th stuff */
297 void SetHiddenInfo(AliFemtoHiddenInfo* aHiddenInfo);
298 bool ValidHiddenInfo() const;
299 // Fab private : (official : const AliFemtoHiddenInfo* HiddenInfo() const;
300 AliFemtoHiddenInfo* GetHiddenInfo() const;
301 /***/
302
303protected:
76ce4b5b 304 float fDecayLengthV0; // 3-d decay distance \\ V0 decay length
305 AliFemtoThreeVector fDecayVertexV0; // Coordinates of decay vertex
306 AliFemtoThreeVector fPrimaryVertex; // Coordinates of primary vertex
307 float fDcaV0Daughters; // DCA of v0 daughters at Decay vertex
308 float fDcaV0ToPrimVertex; // DCA of v0 to primary vertex
309 float fDcaPosToPrimVertex; // DCA of pos v0 daughter to pri vertex
310 float fDcaNegToPrimVertex; // DCA of neg v0 daughter to pri vertex
311 AliFemtoThreeVector fMomPos; // Momentum components of pos. daughter
312 AliFemtoThreeVector fMomNeg; // Momentum components of neg. daughter
313
314 unsigned long fTrackTopologyMapPos[2]; // Topology map for positive daughter
315 unsigned long fTrackTopologyMapNeg[2]; // Topology map for negative daughter
316
317 int fTpcHitsPos; // Number of TPC hits for positive daughter
318 int fTpcHitsNeg; // Number of TPC hits for negative daughter
319
973a91f8 320 bool fOnFlyStatusV0;
76ce4b5b 321 float fChi2V0; // Fit quality for V0
322 float fClV0; // Confidence level for V0
323 float fChi2Pos; // Fit quality for positive daughter
324 float fClPos; // Confidence level for positive daughter
325 float fChi2Neg; // Fit quality for negative daughter
326 float fClNeg; // Confidence level for negative daughter
973a91f8 327 double fCosPointingAngle;
76ce4b5b 328
329 float fDedxPos; // dEdx positive daughter
330 float fErrDedxPos; // dEdx error positive daughter
331 float fLenDedxPos; // dEdx length positive daughter
332
333 float fDedxNeg; // dEdx negative daughter
334 float fErrDedxNeg; // dEdx error negative daughter
335 float fLenDedxNeg; // dEdx length negative daughter
336
337 unsigned short fNufDedxPos; // Number of dEdx points positive
338 unsigned short fNufDedxNeg; // Number of dEdx points negative
339
340 AliFmPhysicalHelixD fHelixPos; // Helix for positive
341 AliFmPhysicalHelixD fHelixNeg; // Helix for negative
342
343 AliFemtoThreeVector fMomV0; // Momentum of the V0
973a91f8 344 double fEtaV0; // Pseudorapidity of the V0
345 double fPhiV0; // Phi angle of the V0
346 double fYV0; // Rapidity of the V0;
76ce4b5b 347 float fAlphaV0; // Armenteros-Podolanski variable
348 float fPtArmV0; // Armenteros-Podolanski variable
349 float fELambda; // Energy assuming lambda hypothesis
350 float fEK0Short; // Energy assuming k-short hypothesis
351 float fEPosProton; // Energy of pos. daughter assuming proton
352 float fEPosPion; // Energy of pos. daughter assuming pion
353 float fENegProton; // Energy of neg. daughter assuming antiproton
354 float fENegPion; // Energy of neg. daughter assuming pion
355 float fMassLambda; // Mass assuming lambda hypothesis
356 float fMassAntiLambda; // Mass assuming antilambda hypothesis
357 float fMassK0Short; // Mass assuming k-short hypothesis
358 float fRapLambda; // Rapidity assuming (anti) constlambda
359 float fRapK0Short; // Rapidity assuming k-short
360 float fCTauLambda; // Lifetime (ctau) assuming (anti)lambda
361 float fCTauK0Short; // Lifetime (ctau) assuming k-short
362 float fPtV0; // Total momentum
363 float fPtotV0; // Transverse momentum
364 float fPtPos; // Transverse momentum of pos. daughter
365 float fPtotPos; // Total momentum of pos. daughter
366 float fPtNeg; // Transverse momentum of neg. daughter
973a91f8 367 float fPtotNeg; // Total momentum of neg. daughter
368
369 float fEtaPos; // Eta of positive daughter
370 float fEtaNeg; // Eta of neg. daughter
371 int fTPCNclsPos; // No. of cls of pos daughter
372 int fTPCNclsNeg; // No. of cls of neg daughter
373 TBits fClustersPos;
374 TBits fClustersNeg;
375 TBits fSharingPos;
376 TBits fSharingNeg;
377 int fNdofPos; // No. of degrees of freedom of the pos. daughter track
378 int fNdofNeg; // No. of degrees of freedom of the neg. daughter track
379 unsigned long fStatusPos; // Status (tpc refit, its refit...)
380 unsigned long fStatusNeg; // Status (tpc refit, its refit...)
381
382 float fPosNSigmaTPCK;
383 float fPosNSigmaTPCPi;
384 float fPosNSigmaTPCP;
385 float fNegNSigmaTPCK;
386 float fNegNSigmaTPCPi;
387 float fNegNSigmaTPCP;
388
389 float fPosNSigmaTOFK;
390 float fPosNSigmaTOFPi;
391 float fPosNSigmaTOFP;
392 float fNegNSigmaTOFK;
393 float fNegNSigmaTOFPi;
394 float fNegNSigmaTOFP;
76ce4b5b 395
973a91f8 396 int fKeyNeg; // Unique key negative
397 int fKeyPos; // Unique key positive
398
399 AliFemtoThreeVector fNominalTpcEntrancePointPos; // Nominal positive daugther track entrance point into TPC
ce7b3d98 400 AliFemtoThreeVector fNominalTpcPointsPos[9];
973a91f8 401 AliFemtoThreeVector fNominalTpcExitPointPos; // Nominal positive daughter track exit point from TPC
402 AliFemtoThreeVector fNominalTpcEntrancePointNeg; // Nominal positive daugther track entrance point into TPC
ce7b3d98 403 AliFemtoThreeVector fNominalTpcPointsNeg[9];
973a91f8 404 AliFemtoThreeVector fNominalTpcExitPointNeg; // Nominal positive daughter track exit point from TPC
405
ce7b3d98 406 double fTPCMomentumPos;
407 double fTPCMomentumNeg;
408
409 double fTOFProtonTimePos;
410 double fTOFPionTimePos;
411 double fTOFKaonTimePos;
412 double fTOFProtonTimeNeg;
413 double fTOFPionTimeNeg;
414 double fTOFKaonTimeNeg;
973a91f8 415
7eb9f5d0 416
417 float fImpactDprimPos; //impact parameter in xy plane
418 float fImpactDweakPos; //impact parameter in xy plane
419 float fImpactDmatPos; //impact parameter in xy plane
420 float fImpactDprimNeg; //impact parameter in xy plane
421 float fImpactDweakNeg; //impact parameter in xy plane
422 float fImpactDmatNeg; //impact parameter in xy plane
423
76ce4b5b 424 /* Th stuff */
425 // Fab private : add mutable
426 mutable AliFemtoHiddenInfo* fHiddenInfo; //! Hidden info
427 /***/
428
429
430};
431
432inline float AliFemtoV0::DecayLengthV0() const { return fDecayLengthV0; }
433inline AliFemtoThreeVector AliFemtoV0::DecayVertexV0() const { return fDecayVertexV0; }
434inline AliFemtoThreeVector AliFemtoV0::PrimaryVertex() const { return fPrimaryVertex; }
435inline float AliFemtoV0::DecayVertexV0X() const { return fDecayVertexV0.x(); }
436inline float AliFemtoV0::DecayVertexV0Y() const { return fDecayVertexV0.y(); }
437inline float AliFemtoV0::DecayVertexV0Z() const { return fDecayVertexV0.z(); }
438inline float AliFemtoV0::DcaV0Daughters() const { return fDcaV0Daughters; }
439inline float AliFemtoV0::DcaV0ToPrimVertex() const { return fDcaV0ToPrimVertex; }
440inline float AliFemtoV0::DcaPosToPrimVertex() const { return fDcaPosToPrimVertex; }
441inline float AliFemtoV0::DcaNegToPrimVertex() const { return fDcaNegToPrimVertex; }
442inline AliFemtoThreeVector AliFemtoV0::MomPos() const { return fMomPos; }
443inline float AliFemtoV0::MomPosX() const { return fMomPos.x(); }
444inline float AliFemtoV0::MomPosY() const { return fMomPos.y(); }
445inline float AliFemtoV0::MomPosZ() const { return fMomPos.z(); }
446inline AliFemtoThreeVector AliFemtoV0::MomNeg() const { return fMomNeg; }
447inline float AliFemtoV0::MomNegX() const { return fMomNeg.x(); }
448inline float AliFemtoV0::MomNegY() const { return fMomNeg.y(); }
449inline float AliFemtoV0::MomNegZ() const { return fMomNeg.z(); }
450inline AliFemtoThreeVector AliFemtoV0::MomV0() const { return fMomV0; }
973a91f8 451inline double AliFemtoV0::EtaV0() const {return fEtaV0;}
452inline double AliFemtoV0::PhiV0() const {return fPhiV0;}
453inline double AliFemtoV0::YV0() const {return fYV0;}
454inline double AliFemtoV0::CosPointingAngle() const {return fCosPointingAngle;}
76ce4b5b 455inline float AliFemtoV0::MomV0X() const { return fMomV0.x(); }
456inline float AliFemtoV0::MomV0Y() const { return fMomV0.y(); }
457inline float AliFemtoV0::MomV0Z() const { return fMomV0.z(); }
458inline float AliFemtoV0::AlphaV0() const { return fAlphaV0; }
459inline float AliFemtoV0::PtArmV0() const {return fPtArmV0;}
460inline float AliFemtoV0::ELambda() const {return fELambda;}
461inline float AliFemtoV0::EK0Short() const {return fEK0Short;}
462inline float AliFemtoV0::EPosProton() const {return fEPosProton;}
463inline float AliFemtoV0::EPosPion() const {return fEPosPion;}
464inline float AliFemtoV0::ENegProton() const {return fENegProton;}
465inline float AliFemtoV0::ENegPion() const {return fENegPion;}
466inline float AliFemtoV0::MassLambda() const {return fMassLambda;}
467inline float AliFemtoV0::MassAntiLambda() const {return fMassAntiLambda;}
468inline float AliFemtoV0::MassK0Short() const {return fMassK0Short;}
469inline float AliFemtoV0::RapLambda() const {return fRapLambda;}
470inline float AliFemtoV0::RapK0Short() const {return fRapK0Short;}
471inline float AliFemtoV0::CTauLambda() const {return fCTauLambda;}
472inline float AliFemtoV0::CTauK0Short() const {return fCTauK0Short;}
473inline float AliFemtoV0::PtV0() const {return fPtV0;}
474inline float AliFemtoV0::PtotV0() const {return fPtotV0;}
475inline float AliFemtoV0::PtPos() const {return fPtPos;}
476inline float AliFemtoV0::PtotPos() const {return fPtotPos;}
477inline float AliFemtoV0::PtNeg() const {return fPtNeg;}
478inline float AliFemtoV0::PtotNeg() const {return fPtotNeg;}
479inline int AliFemtoV0::TpcHitsPos() const { return fTpcHitsPos; }
480inline int AliFemtoV0::TpcHitsNeg() const { return fTpcHitsNeg; }
481inline float AliFemtoV0::DedxNeg() const {return fDedxNeg;}
482inline float AliFemtoV0::NumdedxNeg() const {return fNufDedxNeg;} //Gael 04Fev2002
483inline float AliFemtoV0::ErrdedxNeg() const {return fErrDedxNeg;} //Gael 04Fev2002
484inline float AliFemtoV0::LendedxNeg() const {return fLenDedxNeg;} //Gael 04Fev2002
485inline float AliFemtoV0::PseudoRapNeg() const {return fMomNeg.PseudoRapidity();} //Gael 04Fev2002
486inline float AliFemtoV0::DedxPos() const {return fDedxPos;}
487inline float AliFemtoV0::NumdedxPos() const {return fNufDedxPos;} //Gael 04Fev2002
488inline float AliFemtoV0::ErrdedxPos() const {return fErrDedxPos;} //Gael 04Fev2002
489inline float AliFemtoV0::LendedxPos() const {return fLenDedxPos;} //Gael 04Fev2002
490inline float AliFemtoV0::PseudoRapPos() const {return fMomPos.PseudoRapidity();} //Gael 04Fev2002
973a91f8 491inline float AliFemtoV0::EtaPos() const {return fEtaPos;}
492inline float AliFemtoV0::EtaNeg() const {return fEtaNeg;}
493inline int AliFemtoV0::TPCNclsPos() const {return fTPCNclsPos;}
494inline int AliFemtoV0::TPCNclsNeg() const {return fTPCNclsNeg;}
495inline const TBits& AliFemtoV0::TPCclustersPos() const {return fClustersPos;}
496inline const TBits& AliFemtoV0::TPCclustersNeg() const {return fClustersNeg;}
497inline const TBits& AliFemtoV0::TPCsharingPos() const {return fSharingPos;}
498inline const TBits& AliFemtoV0::TPCsharingNeg() const {return fSharingNeg;}
499inline int AliFemtoV0::NdofPos() const {return fNdofPos;}
500inline int AliFemtoV0::NdofNeg() const {return fNdofNeg;}
501inline unsigned long AliFemtoV0::StatusPos() const {return fStatusPos;}
502inline unsigned long AliFemtoV0::StatusNeg() const {return fStatusNeg;}
76ce4b5b 503
504inline unsigned long AliFemtoV0::TrackTopologyMapPos(unsigned int word) const { return fTrackTopologyMapPos[word]; }
505inline unsigned long AliFemtoV0::TrackTopologyMapNeg(unsigned int word) const { return fTrackTopologyMapNeg[word]; }
973a91f8 506inline int AliFemtoV0::IdNeg() const { return fKeyNeg; }
507inline int AliFemtoV0::KeyNeg() const { return fKeyNeg; }
508inline int AliFemtoV0::IdPos() const { return fKeyPos; }
509inline int AliFemtoV0::KeyPos() const { return fKeyPos; }
510inline bool AliFemtoV0::OnFlyStatusV0() const {return fOnFlyStatusV0;}
511inline float AliFemtoV0::PosNSigmaTPCK() const { return fPosNSigmaTPCK; }
512inline float AliFemtoV0::PosNSigmaTPCPi() const { return fPosNSigmaTPCPi; }
513inline float AliFemtoV0::PosNSigmaTPCP() const { return fPosNSigmaTPCP; }
514inline float AliFemtoV0::NegNSigmaTPCK() const { return fNegNSigmaTPCK; }
515inline float AliFemtoV0::NegNSigmaTPCPi() const { return fNegNSigmaTPCPi; }
516inline float AliFemtoV0::NegNSigmaTPCP() const { return fNegNSigmaTPCP; }
517
518inline float AliFemtoV0::PosNSigmaTOFK() const { return fPosNSigmaTOFK; }
519inline float AliFemtoV0::PosNSigmaTOFPi() const { return fPosNSigmaTOFPi; }
520inline float AliFemtoV0::PosNSigmaTOFP() const { return fPosNSigmaTOFP; }
521inline float AliFemtoV0::NegNSigmaTOFK() const { return fNegNSigmaTOFK; }
522inline float AliFemtoV0::NegNSigmaTOFPi() const { return fNegNSigmaTOFPi; }
523inline float AliFemtoV0::NegNSigmaTOFP() const { return fNegNSigmaTOFP; }
524
525inline AliFemtoThreeVector AliFemtoV0::NominalTpcEntrancePointPos() const {return fNominalTpcEntrancePointPos;}
526inline AliFemtoThreeVector AliFemtoV0::NominalTpcExitPointPos() const {return fNominalTpcExitPointPos;}
527inline AliFemtoThreeVector AliFemtoV0::NominalTpcEntrancePointNeg() const {return fNominalTpcEntrancePointNeg;}
528inline AliFemtoThreeVector AliFemtoV0::NominalTpcExitPointNeg() const {return fNominalTpcExitPointNeg;}
76ce4b5b 529
530inline void AliFemtoV0::SetdecayLengthV0(const float x){ fDecayLengthV0= x;}
531inline void AliFemtoV0::SetdecayVertexV0X(const float x){ fDecayVertexV0.SetX(x);}
532inline void AliFemtoV0::SetdecayVertexV0Y(const float x){ fDecayVertexV0.SetY(x);}
533inline void AliFemtoV0::SetdecayVertexV0Z(const float x){ fDecayVertexV0.SetZ(x);}
534inline void AliFemtoV0::SetdecayVertexV0(const AliFemtoThreeVector v){ fDecayVertexV0 = v; }
535inline void AliFemtoV0::SetdcaV0Daughters(const float x){fDcaV0Daughters= x;}
536inline void AliFemtoV0::SetdcaV0ToPrimVertex(const float x){fDcaV0ToPrimVertex= x;}
537inline void AliFemtoV0::SetdcaPosToPrimVertex(const float x){fDcaPosToPrimVertex = x;}
538inline void AliFemtoV0::SetdcaNegToPrimVertex(const float x){fDcaNegToPrimVertex = x;}
539inline void AliFemtoV0::SetmomPos(const AliFemtoThreeVector v){fMomPos = v; }
973a91f8 540inline void AliFemtoV0::SetEtaV0(const double x){fEtaV0=x;}
541inline void AliFemtoV0::SetPhiV0(const double x){fPhiV0=x;}
542inline void AliFemtoV0::SetYV0(const double x){fYV0=x;}
543inline void AliFemtoV0::SetCosPointingAngle(const double x){fCosPointingAngle = x;}
76ce4b5b 544inline void AliFemtoV0::SetmomPosX(const float x){fMomPos.SetX(x);}
545inline void AliFemtoV0::SetmomPosY(const float x){fMomPos.SetY(x);}
546inline void AliFemtoV0::SetmomPosZ(const float x){fMomPos.SetZ(x);}
547inline void AliFemtoV0::SetmomNeg(const AliFemtoThreeVector v){fMomNeg = v; }
548inline void AliFemtoV0::SetmomNegX(const float x){fMomNeg.SetX(x);}
549inline void AliFemtoV0::SetmomNegY(const float x){fMomNeg.SetY(x);}
550inline void AliFemtoV0::SetmomNegZ(const float x){fMomNeg.SetZ(x);}
551inline void AliFemtoV0::SetTrackTopologyMapPos(unsigned int word, const unsigned long& m){fTrackTopologyMapPos[word]=m;}
552inline void AliFemtoV0::SetTrackTopologyMapNeg(unsigned int word, const unsigned long& m){fTrackTopologyMapNeg[word]=m;}
553inline void AliFemtoV0::SetmomV0(AliFemtoThreeVector v){fMomV0= v; }
554inline void AliFemtoV0::SetmomV0X(const float x){fMomV0.SetX(x);}
555inline void AliFemtoV0::SetmomV0Y(const float x){fMomV0.SetY(x);}
556inline void AliFemtoV0::SetmomV0Z(const float x){fMomV0.SetZ(x);}
557
558inline void AliFemtoV0::SetalphaV0( float x){fAlphaV0= x;}
559inline void AliFemtoV0::SetptArmV0( float x){fPtArmV0 = x;}
560inline void AliFemtoV0::SeteLambda( float x){fELambda= x;}
561inline void AliFemtoV0::SeteK0Short( float x){fEK0Short= x;}
562inline void AliFemtoV0::SetePosProton( float x){fEPosProton= x;}
563inline void AliFemtoV0::SetePosPion( float x){fEPosPion= x;}
564inline void AliFemtoV0::SeteNegProton( float x){fENegProton= x;}
565inline void AliFemtoV0::SeteNegPion( float x){fENegPion= x;}
566inline void AliFemtoV0::SetmassLambda( float x){fMassLambda = x;}
567inline void AliFemtoV0::SetmassAntiLambda( float x){fMassAntiLambda= x;}
568inline void AliFemtoV0::SetmassK0Short( float x){fMassK0Short= x;}
569inline void AliFemtoV0::SetrapLambda( float x){fRapLambda= x;}
570inline void AliFemtoV0::SetrapK0Short( float x){fRapK0Short = x;}
571inline void AliFemtoV0::SetcTauLambda( float x){fCTauLambda = x;}
572inline void AliFemtoV0::SetcTauK0Short( float x){fCTauK0Short = x;}
573inline void AliFemtoV0::SetptV0( float x){fPtV0 = x;}
574inline void AliFemtoV0::SetptotV0( float x){fPtotV0 = x;}
575inline void AliFemtoV0::SetptPos( float x){fPtPos = x;}
576inline void AliFemtoV0::SetptotPos( float x){fPtotPos = x;}
577inline void AliFemtoV0::SetptNeg( float x){ fPtNeg= x;}
578inline void AliFemtoV0::SetptotNeg( float x){ fPtotNeg= x;}
973a91f8 579inline void AliFemtoV0::SetidNeg(const int& s){ fKeyNeg= s;}
580inline void AliFemtoV0::SetidPos(const int& s){ fKeyPos= s;}
581inline void AliFemtoV0::SetkeyNeg(const int& s){ fKeyNeg= s;}
582inline void AliFemtoV0::SetkeyPos(const int& s){ fKeyPos= s;}
76ce4b5b 583inline void AliFemtoV0::SettpcHitsPos(const int& i){fTpcHitsPos=i;}
584inline void AliFemtoV0::SettpcHitsNeg(const int& i){fTpcHitsNeg=i;}
585inline void AliFemtoV0::SetdedxNeg(float x){fDedxNeg=x;}
586inline void AliFemtoV0::SeterrdedxNeg(float x){fErrDedxNeg=x;}//Gael 04Fev2002
587inline void AliFemtoV0::SetlendedxNeg(float x){fLenDedxNeg=x;}//Gael 04Fev2002
588inline void AliFemtoV0::SetdedxPos(float x){fDedxPos=x;}
589inline void AliFemtoV0::SeterrdedxPos(float x){fErrDedxPos=x;}//Gael 04Fev2002
590inline void AliFemtoV0::SetlendedxPos(float x){fLenDedxPos=x;}//Gael 04Fev2002
591inline void AliFemtoV0::SetprimaryVertex(const AliFemtoThreeVector v) { fPrimaryVertex = v; }//Gael 24 Sept 02
973a91f8 592
593inline void AliFemtoV0::SetEtaPos(float x) {fEtaPos=x;}
594inline void AliFemtoV0::SetEtaNeg(float x) {fEtaNeg=x;}
595inline void AliFemtoV0::SetTPCNclsPos(int x) {fTPCNclsPos=x;}
596inline void AliFemtoV0::SetTPCNclsNeg(int x) {fTPCNclsNeg=x;}
597inline void AliFemtoV0::SetTPCclustersPos(const TBits& x) {fClustersPos=x;}
598inline void AliFemtoV0::SetTPCclustersNeg(const TBits& x) {fClustersNeg=x;}
599inline void AliFemtoV0::SetTPCsharingPos(const TBits& x) {fSharingPos=x;}
600inline void AliFemtoV0::SetTPCsharingNeg(const TBits& x) {fSharingNeg=x;}
601inline void AliFemtoV0::SetNdofPos(int x) {fNdofPos=x;}
602inline void AliFemtoV0::SetNdofNeg(int x) {fNdofNeg=x;}
603inline void AliFemtoV0::SetStatusPos(unsigned long x) {fStatusPos=x;}
604inline void AliFemtoV0::SetStatusNeg(unsigned long x) {fStatusNeg=x;}
605inline void AliFemtoV0::SetOnFlyStatusV0(bool x) {fOnFlyStatusV0=x;}
606
607inline void AliFemtoV0::SetPosNSigmaTPCK(float x){ fPosNSigmaTPCK = x; }
608inline void AliFemtoV0::SetPosNSigmaTPCPi(float x){ fPosNSigmaTPCPi = x; }
609inline void AliFemtoV0::SetPosNSigmaTPCP(float x) { fPosNSigmaTPCP = x; }
610inline void AliFemtoV0::SetNegNSigmaTPCK(float x) { fNegNSigmaTPCK = x; }
611inline void AliFemtoV0::SetNegNSigmaTPCPi(float x){ fNegNSigmaTPCPi = x; }
612inline void AliFemtoV0::SetNegNSigmaTPCP(float x) { fNegNSigmaTPCP = x; }
613
614inline void AliFemtoV0::SetPosNSigmaTOFK(float x) { fPosNSigmaTOFK = x; }
615inline void AliFemtoV0::SetPosNSigmaTOFPi(float x) { fPosNSigmaTOFPi = x; }
616inline void AliFemtoV0::SetPosNSigmaTOFP(float x) { fPosNSigmaTOFP = x; }
617inline void AliFemtoV0::SetNegNSigmaTOFK(float x) { fNegNSigmaTOFK = x; }
618inline void AliFemtoV0::SetNegNSigmaTOFPi(float x) {fNegNSigmaTOFPi = x; }
619inline void AliFemtoV0::SetNegNSigmaTOFP(float x) { fNegNSigmaTOFP = x; }
620
621inline void AliFemtoV0::SetNominalTpcEntrancePointPos(AliFemtoThreeVector x) {fNominalTpcEntrancePointPos=x;}
ce7b3d98 622inline void AliFemtoV0::SetNominalTpcPointPos(AliFemtoThreeVector *x) {for(int i=0;i<9;i++) fNominalTpcPointsPos[i]=x[i];}
973a91f8 623inline void AliFemtoV0::SetNominalTpcExitPointPos(AliFemtoThreeVector x) {fNominalTpcExitPointPos=x;}
624inline void AliFemtoV0::SetNominalTpcEntrancePointNeg(AliFemtoThreeVector x) {fNominalTpcEntrancePointNeg=x;}
ce7b3d98 625inline void AliFemtoV0::SetNominalTpcPointNeg(AliFemtoThreeVector *x) {for(int i=0;i<9;i++) fNominalTpcPointsNeg[i]=x[i];}
973a91f8 626inline void AliFemtoV0::SetNominalTpcExitPointNeg(AliFemtoThreeVector x) {fNominalTpcExitPointNeg=x;}
627
ce7b3d98 628inline void AliFemtoV0::SetTPCMomentumPos(double x) {fTPCMomentumPos = x;}
629inline void AliFemtoV0::SetTPCMomentumNeg(double x) {fTPCMomentumNeg = x;}
630inline double AliFemtoV0::GetTPCMomentumPos() const {return fTPCMomentumPos;}
631inline double AliFemtoV0::GetTPCMomentumNeg() const {return fTPCMomentumNeg;}
632
633inline void AliFemtoV0::SetTOFProtonTimePos(double x) {fTOFProtonTimePos = x;}
634inline void AliFemtoV0::SetTOFPionTimePos(double x) {fTOFPionTimePos = x;}
635inline void AliFemtoV0::SetTOFKaonTimePos(double x) {fTOFKaonTimePos = x;}
636inline double AliFemtoV0::TOFProtonTimePos() const {return fTOFProtonTimePos;}
637inline double AliFemtoV0::TOFPionTimePos() const {return fTOFPionTimePos;}
638inline double AliFemtoV0::TOFKaonTimePos() const {return fTOFKaonTimePos;}
639
640inline void AliFemtoV0::SetTOFProtonTimeNeg(double x) {fTOFProtonTimeNeg = x;}
641inline void AliFemtoV0::SetTOFPionTimeNeg(double x) {fTOFPionTimeNeg = x;}
642inline void AliFemtoV0::SetTOFKaonTimeNeg(double x) {fTOFKaonTimeNeg = x;}
643inline double AliFemtoV0::TOFProtonTimeNeg() const {return fTOFProtonTimeNeg;}
644inline double AliFemtoV0::TOFPionTimeNeg() const {return fTOFPionTimeNeg;}
645inline double AliFemtoV0::TOFKaonTimeNeg() const {return fTOFKaonTimeNeg;}
646
7eb9f5d0 647inline void AliFemtoV0::SetImpactDprimPos(const float& x) {fImpactDprimPos = x;}
648inline void AliFemtoV0::SetImpactDweakPos(const float& x) {fImpactDweakPos = x;}
649inline void AliFemtoV0::SetImpactDmatPos(const float& x) {fImpactDmatPos = x;}
650inline float AliFemtoV0::ImpactDprimPos() const {return fImpactDprimPos;}
651inline float AliFemtoV0::ImpactDweakPos() const {return fImpactDweakPos;}
652inline float AliFemtoV0::ImpactDmatPos() const {return fImpactDmatPos;}
653
654inline void AliFemtoV0::SetImpactDprimNeg(const float& x) {fImpactDprimNeg = x;}
655inline void AliFemtoV0::SetImpactDweakNeg(const float& x) {fImpactDweakNeg = x;}
656inline void AliFemtoV0::SetImpactDmatNeg(const float& x) {fImpactDmatNeg = x;}
657inline float AliFemtoV0::ImpactDprimNeg() const {return fImpactDprimNeg;}
658inline float AliFemtoV0::ImpactDweakNeg() const {return fImpactDweakNeg;}
659inline float AliFemtoV0::ImpactDmatNeg() const {return fImpactDmatNeg;}
660
76ce4b5b 661#endif
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679