]>
Commit | Line | Data |
---|---|---|
e23730c7 | 1 | #ifndef ALIESDV0_H |
2 | #define ALIESDV0_H | |
3 | ||
4 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * | |
5 | * See cxx source for full Copyright notice */ | |
6 | ||
4f679a16 | 7 | /* $Id$ */ |
8 | ||
e23730c7 | 9 | //------------------------------------------------------------------------- |
10 | // ESD V0 Vertex Class | |
4f679a16 | 11 | // This class is part of the Event Summary Data set of classes |
e23730c7 | 12 | // Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch |
13 | //------------------------------------------------------------------------- | |
14 | ||
15 | #include <TObject.h> | |
16 | #include <TPDGCode.h> | |
17 | ||
c7bafca9 | 18 | class AliExternalTrackParam; |
e23730c7 | 19 | |
20 | class AliESDv0 : public TObject { | |
21 | public: | |
22 | AliESDv0(); | |
c7bafca9 | 23 | AliESDv0(const AliExternalTrackParam &t1, Int_t i1, |
24 | const AliExternalTrackParam &t2, Int_t i2); | |
e23730c7 | 25 | |
c028b974 | 26 | AliESDv0(const AliESDv0&); |
27 | virtual ~AliESDv0(); | |
28 | AliESDv0& operator=(const AliESDv0&); | |
29 | ||
e23730c7 | 30 | Double_t ChangeMassHypothesis(Int_t code=kK0Short); |
31 | ||
c028b974 | 32 | Int_t GetPdgCode() const {return fPdgCode;} |
e23730c7 | 33 | Double_t GetEffMass() const {return fEffMass;} |
c028b974 | 34 | Double_t GetChi2V0() const {return fChi2V0;} |
35 | void GetPxPyPz(Double_t &px, Double_t &py, Double_t &pz) const; | |
36 | void GetNPxPyPz(Double_t &px, Double_t &py, Double_t &pz) const; | |
37 | void GetPPxPyPz(Double_t &px, Double_t &py, Double_t &pz) const; | |
38 | void GetXYZ(Double_t &x, Double_t &y, Double_t &z) const; | |
e23730c7 | 39 | Double_t GetD(Double_t x0=0.,Double_t y0=0.,Double_t z0=0.) const; |
c028b974 | 40 | Int_t GetNindex() const {return fNidx;} |
41 | Int_t GetPindex() const {return fPidx;} | |
42 | void SetESDindexes(Int_t ip, Int_t im){fNidx=ip;fPidx=im;} | |
43 | void SetDcaV0Daughters(Double_t rDcaV0Daughters=0.); | |
44 | Double_t GetDcaV0Daughters() {return fDcaV0Daughters;} | |
45 | Double_t GetV0CosineOfPointingAngle(Double_t&, Double_t&, Double_t&) const; | |
46 | ||
e23730c7 | 47 | protected: |
c028b974 | 48 | Int_t fPdgCode; // reconstructed V0's type (PDG code) |
e23730c7 | 49 | Double_t fEffMass; // reconstructed V0's effective mass |
c028b974 | 50 | Double_t fDcaV0Daughters; // dca between V0's daughters |
51 | Double_t fChi2V0; // V0's chi2 value | |
e23730c7 | 52 | Double_t fPos[3]; // V0's position (global) |
53 | Double_t fPosCov[6]; // covariance matrix of the vertex position | |
54 | ||
c028b974 | 55 | Int_t fNidx; // index of the negative daughter |
e23730c7 | 56 | Double_t fNmom[3]; // momentum of the negative daughter (global) |
57 | Double_t fNmomCov[6]; // covariance matrix of the negative daughter mom. | |
58 | ||
c028b974 | 59 | Int_t fPidx; // index of the positive daughter |
e23730c7 | 60 | Double_t fPmom[3]; // momentum of the positive daughter (global) |
61 | Double_t fPmomCov[6]; // covariance matrix of the positive daughter mom. | |
62 | ||
63 | ClassDef(AliESDv0,1) // ESD V0 vertex | |
64 | }; | |
65 | ||
66 | inline | |
67 | void AliESDv0::GetNPxPyPz(Double_t &px, Double_t &py, Double_t &pz) const { | |
68 | px=fNmom[0]; py=fNmom[1]; pz=fNmom[2]; | |
69 | } | |
70 | ||
71 | inline | |
72 | void AliESDv0::GetPPxPyPz(Double_t &px, Double_t &py, Double_t &pz) const { | |
73 | px=fPmom[0]; py=fPmom[1]; pz=fPmom[2]; | |
74 | } | |
75 | ||
dfbf942c | 76 | inline |
c028b974 | 77 | void AliESDv0::SetDcaV0Daughters(Double_t rDcaV0Daughters){ |
78 | fDcaV0Daughters=rDcaV0Daughters; | |
dfbf942c | 79 | } |
80 | ||
e23730c7 | 81 | #endif |