]>
Commit | Line | Data |
---|---|---|
3244eeed | 1 | #ifndef ALIAODRECODECAYHF4PRONG_H |
2 | #define ALIAODRECODECAYHF4PRONG_H | |
3 | /* Copyright(c) 1998-2006, ALICE Experiment at CERN, All rights reserved. * | |
4 | * See cxx source for full Copyright notice */ | |
5 | ||
27de2dfb | 6 | /* $Id$ */ |
7 | ||
3244eeed | 8 | //*********************************************************** |
9 | // Class AliAODRecoDecayHF4Prong | |
10 | // base class for AOD reconstructed 4-prong heavy-flavour decays | |
11 | // (D0->Kpipipi, etc...) | |
12 | // Authors: G.E.Bruno Giuseppe.Bruno@ba.infn.it, R.Romita Rossella.Romita@ba.infn.it | |
13 | //*********************************************************** | |
14 | ||
15 | #include "AliAODRecoDecay.h" | |
16 | #include "AliAODRecoDecayHF.h" | |
17 | ||
18 | class AliAODRecoDecayHF4Prong : public AliAODRecoDecayHF { | |
19 | ||
20 | public: | |
21 | ||
22 | AliAODRecoDecayHF4Prong(); | |
23 | AliAODRecoDecayHF4Prong(AliAODVertex *vtx2, | |
24 | Double_t *px,Double_t *py,Double_t *pz, | |
25 | Double_t *d0,Double_t *d0err, | |
26 | Double_t *dca, //Double_t sigvert, | |
721c0b8f | 27 | Double_t dist12,Double_t dist3, |
28 | Double_t dist4, | |
3244eeed | 29 | Short_t charge); |
30 | AliAODRecoDecayHF4Prong(AliAODVertex *vtx2, | |
31 | Double_t *d0,Double_t *d0err, | |
32 | Double_t *dca, //Double_t sigvert, | |
721c0b8f | 33 | Double_t dist12,Double_t dist3, |
34 | Double_t dist4, | |
3244eeed | 35 | Short_t charge); |
36 | ||
37 | AliAODRecoDecayHF4Prong(const AliAODRecoDecayHF4Prong& source); | |
38 | AliAODRecoDecayHF4Prong& operator=(const AliAODRecoDecayHF4Prong& source); | |
39 | ||
40 | virtual ~AliAODRecoDecayHF4Prong() {} | |
41 | ||
6185d025 | 42 | void GetDCAs(Double_t dca[6]) const |
721c0b8f | 43 | {for(Int_t i=0;i<6;i++) dca[i]=GetDCA(i);} |
44 | // convention:fDCA[0]=p0p1,fDCA[1]=p0p2,fDCA[2]=p0p3,fDCA[3]=p1p2... | |
49103adc | 45 | Double_t GetDist12toPrim() const {return fDist12toPrim;} |
721c0b8f | 46 | Double_t GetDist3toPrim() const {return fDist3toPrim;} |
47 | Double_t GetDist4toPrim() const {return fDist4toPrim;} | |
3244eeed | 48 | |
49 | // D0->pi+K- pipi and D0bar->K+pi- pipi (in the order given) | |
50 | Double_t ED0() const {return E(421);} | |
51 | Double_t YD0() const {return Y(421);} | |
52 | Double_t CtD0() const {return Ct(421);} | |
53 | Double_t CtD0(Double_t point[3]) const {return AliAODRecoDecay::Ct(421,point);} | |
54 | Double_t CtD0(AliAODVertex *vtx1) const {return AliAODRecoDecay::Ct(421,vtx1);} | |
721c0b8f | 55 | Double_t InvMassRho(Int_t i,Int_t j) const {return InvMass2Prongs(i,j,211,211);} |
56 | Bool_t CutRhoMass(Double_t massD0[2],Double_t massD0bar[2],Double_t CutMass,Double_t CutRho) const; | |
3244eeed | 57 | |
721c0b8f | 58 | void InvMassD0(Double_t mD0[2]) const; |
59 | void InvMassD0bar(Double_t mD0bar[2]) const; | |
3244eeed | 60 | |
61 | Bool_t SelectD0(const Double_t* cuts,Int_t &okD0,Int_t &okD0bar) const; | |
62 | ||
3244eeed | 63 | private: |
64 | ||
65 | //Double_t fSigmaVert; // track dispersion around the secondary vertex | |
66 | Double_t fDist12toPrim; //distance prim vert - 2 opposite sign track vertex | |
721c0b8f | 67 | Double_t fDist3toPrim; //distance prim vert - 3 track vertex |
68 | Double_t fDist4toPrim; //distance prim vert - 4 track vertex | |
3244eeed | 69 | //Double_t fDist123toPrim; //distance |
721c0b8f | 70 | |
3244eeed | 71 | |
721c0b8f | 72 | ClassDef(AliAODRecoDecayHF4Prong,2) // base class for AOD reconstructed |
3244eeed | 73 | // heavy-flavour 3-prong decays |
74 | }; | |
75 | ||
76 | #endif |