1 #ifndef ALIAODRECOCASCADEHF_H
2 #define ALIAODRECOCASCADEHF_H
3 /* Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 //***********************************************************
7 // Class AliAODRecoCascadeHF
8 // base class for AOD reconstructed heavy-flavour cascade decays
10 // The convention is: prong 0 is the bachelor, prong 1 is the "V0"
12 // Author: X-M. Zhang, zhangxm@iopp.ccnu.edu.cn
13 //***********************************************************
16 #include <TRefArray.h>
17 #include "AliAODVertex.h"
18 #include "AliAODRecoDecayHF2Prong.h"
20 class AliAODRecoCascadeHF : public AliAODRecoDecayHF2Prong {
24 AliAODRecoCascadeHF();
25 AliAODRecoCascadeHF(AliAODVertex *vtx2, Short_t charge,
26 Double_t *px, Double_t *py, Double_t *pz,
27 Double_t *d0, Double_t *d0err, Double_t dca);
28 AliAODRecoCascadeHF(AliAODVertex *vtx2, Short_t charge,
29 Double_t *d0, Double_t *d0err, Double_t dca);
30 virtual ~AliAODRecoCascadeHF();
32 AliAODRecoCascadeHF(const AliAODRecoCascadeHF& source);
33 AliAODRecoCascadeHF& operator=(const AliAODRecoCascadeHF& source);
35 // 2prong (D0 for Dstar)
36 AliAODRecoDecayHF2Prong* Get2Prong() const {return (AliAODRecoDecayHF2Prong*)GetDaughter(1);}
38 // Bachelor (soft pion for Dstar)
39 AliAODTrack* GetBachelor() const {return (AliAODTrack*)GetDaughter(0);}
42 Double_t EDstar() const {return E(413);}
43 Double_t YDstar() const {return Y(413);}
44 Bool_t SelectDstar(const Double_t *cutsDstar,const Double_t *cutsD0,Bool_t testD0=kTRUE) const;
45 Double_t InvMassD0() const {return (Charge()>0 ? Get2Prong()->InvMassD0() : Get2Prong()->InvMassD0bar());}
46 Double_t InvMassDstarKpipi() const;
47 Double_t DeltaInvMass() const {return (InvMassDstarKpipi()-InvMassD0());}
51 ClassDef(AliAODRecoCascadeHF, 2); // heavy-flavour cascade class