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