]>
Commit | Line | Data |
---|---|---|
3244eeed | 1 | #ifndef ALIAODRECODECAYHF2PRONG_H |
2 | #define ALIAODRECODECAYHF2PRONG_H | |
3 | /* Copyright(c) 1998-2006, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
6 | //*********************************************************** | |
7 | // Class AliAODRecoDecayHF2Prong | |
8 | // base class for AOD reconstructed 2-prong heavy-flavour decays | |
9 | // (D0->Kpi, J/psi->ee, ...) | |
10 | // Author: A.Dainese, andrea.dainese@lnl.infn.it | |
11 | // G.E.Bruno, giuseppe.bruno@ba.infn.it | |
12 | //*********************************************************** | |
13 | ||
14 | #include "AliAODRecoDecay.h" | |
15 | #include "AliAODRecoDecayHF.h" | |
16 | ||
17 | class AliAODRecoDecayHF2Prong : public AliAODRecoDecayHF { | |
18 | ||
19 | public: | |
20 | ||
21 | AliAODRecoDecayHF2Prong(); | |
22 | AliAODRecoDecayHF2Prong(AliAODVertex *vtx2, | |
23 | Double_t *px,Double_t *py,Double_t *pz, | |
24 | Double_t *d0,Double_t *d0err,Float_t dca); | |
25 | AliAODRecoDecayHF2Prong(AliAODVertex *vtx2, | |
26 | Double_t *d0,Double_t *d0err,Float_t dca); | |
27 | AliAODRecoDecayHF2Prong(const AliAODRecoDecayHF2Prong& source); | |
28 | AliAODRecoDecayHF2Prong& operator=(const AliAODRecoDecayHF2Prong& source); | |
29 | ||
30 | virtual ~AliAODRecoDecayHF2Prong() {} | |
31 | ||
32 | Double_t Prodd0d0() const {return AliAODRecoDecay::Prodd0d0(0,1);} | |
33 | ||
34 | // D0->Kpi | |
35 | Double_t ED0() const {return E(421);} | |
36 | Double_t YD0() const {return Y(421);} | |
37 | ||
38 | Double_t CtD0() const {return Ct(421);} | |
39 | Double_t CtD0(Double_t point[3]) const {return AliAODRecoDecay::Ct(421,point);} | |
40 | Double_t CtD0(AliAODVertex *vtx1) const {return AliAODRecoDecay::Ct(421,vtx1);} | |
41 | ||
42 | Double_t CosThetaStarD0() const {return CosThetaStar(1,421,211,321);} // angle of K | |
43 | Double_t CosThetaStarD0bar() const {return CosThetaStar(0,421,321,211);} // angle of K | |
44 | void CosThetaStarD0(Double_t &ctsD0,Double_t &ctsD0bar) const | |
45 | {ctsD0=CosThetaStarD0();ctsD0bar=CosThetaStarD0bar();return;} | |
46 | ||
47 | Double_t InvMassD0() const {UInt_t pdg[2]={211,321};return InvMass(2,pdg);} | |
48 | Double_t InvMassD0bar() const {UInt_t pdg[2]={321,211};return InvMass(2,pdg);} | |
49 | void InvMassD0(Double_t &mD0,Double_t &mD0bar) const | |
50 | {mD0=InvMassD0();mD0bar=InvMassD0bar();return;} | |
51 | ||
52 | Bool_t SelectD0(const Double_t* cuts,Int_t &okD0,Int_t &okD0bar) const; | |
53 | ||
54 | // Jpsi (from B) -> ee | |
55 | Double_t EJPSI() const {return E(443);} | |
56 | Double_t YJPSI() const {return Y(443);} | |
57 | ||
58 | Double_t CtJPSI() const {return Ct(443);} | |
59 | Double_t CtJPSI(Double_t point[3]) const {return AliAODRecoDecay::Ct(443,point);} | |
60 | Double_t CtJPSI(AliAODVertex *vtx1) const {return AliAODRecoDecay::Ct(443,vtx1);} | |
61 | ||
62 | Double_t CosThetaStarJPSI() const {return CosThetaStar(1,443,11,11);} // angle of e- | |
63 | ||
64 | Double_t InvMassJPSIee() const {UInt_t pdg[2]={11,11};return InvMass(2,pdg);} | |
65 | ||
66 | Bool_t SelectBtoJPSI(const Double_t* cuts,Int_t &okB) const; | |
67 | ||
68 | ||
69 | private: | |
70 | ||
71 | ClassDef(AliAODRecoDecayHF2Prong,1) // base class for AOD reconstructed | |
72 | // heavy-flavour 2-prong decays | |
73 | }; | |
74 | ||
75 | #endif |