ROOT logo
AliRoot » PWGHF » VERTEXINGHF » AliAODRecoDecayHF2Prong

class AliAODRecoDecayHF2Prong: public AliAODRecoDecayHF


 Base class for AOD reconstructed heavy-flavour 2-prong decay

 Author: A.Dainese, andrea.dainese@lnl.infn.it

Function Members (Methods)

public:
AliAODRecoDecayHF2Prong()
AliAODRecoDecayHF2Prong(const AliAODRecoDecayHF2Prong& source)
AliAODRecoDecayHF2Prong(AliAODVertex* vtx2, Double_t* d0, Double_t* d0err, Float_t dca)
AliAODRecoDecayHF2Prong(AliAODVertex* vtx2, Double_t* px, Double_t* py, Double_t* pz, Double_t* d0, Double_t* d0err, Float_t dca)
virtual~AliAODRecoDecayHF2Prong()
voidTObject::AbstractMethod(const char* method) const
Double_tAliAODRecoDecay::Alpha() const
virtual voidTObject::AppendPad(Option_t* option = "")
AliKFParticle*AliAODRecoDecayHF::ApplyVertexingKF(Int_t* iprongs, Int_t nprongs, Int_t* pdgs, Bool_t topoCostraint, Double_t bzkG, Double_t* mass) const
virtual voidTObject::Browse(TBrowser* b)
virtual Short_tAliAODRecoDecay::Charge() const
Short_tAliAODRecoDecay::ChargeProng(Int_t ip) const
voidAliAODRecoDecayHF::CheckOwnPrimaryVtx() const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tAliVParticle::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
Double_tAliAODRecoDecayHF::CosPointingAngle() const
Double_tAliAODRecoDecayHF::CosPointingAngleXY() const
Double_tAliAODRecoDecay::CosThetaStar(Int_t ip, UInt_t pdgvtx, UInt_t pdgprong0, UInt_t pdgprong1) const
Double_tCosThetaStarD0() const
voidCosThetaStarD0(Double_t& ctsD0, Double_t& ctsD0bar) const
Double_tCosThetaStarD0bar() const
Double_tCosThetaStarJPSI() const
Double_tAliAODRecoDecayHF::Ct(UInt_t pdg) const
Double_tCtD0() const
Double_tCtD0(Double_t* point) const
Double_tCtD0(AliAODVertex* vtx1) const
Double_tCtJPSI() const
Double_tCtJPSI(Double_t* point) const
Double_tCtJPSI(AliAODVertex* vtx1) const
Bool_tAliAODRecoDecayHF::DaughterHasPointOnITSLayer(Int_t dg, Int_t l) const
Double_tAliAODRecoDecayHF::DecayLength() const
Double_tAliAODRecoDecayHF::DecayLength2() const
Double_tAliAODRecoDecayHF::DecayLengthError() const
Double_tAliAODRecoDecay::DecayLengthError2(AliAODVertex* vtx1) const
Double_tAliAODRecoDecayHF::DecayLengthXY() const
Double_tAliAODRecoDecayHF::DecayLengthXYError() const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual Double_tAliAODRecoDecay::E() const
Double_tAliAODRecoDecay::E(UInt_t pdg) const
Double_tAliAODRecoDecay::E2(UInt_t pdg) const
Double_tAliAODRecoDecay::E2Prong(Int_t ip, UInt_t pdg) const
Double_tED0() const
Double_tEJPSI() const
Double_tAliAODRecoDecay::EProng(Int_t ip, UInt_t pdg) const
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual Double_tAliAODRecoDecay::Eta() const
Double_tAliAODRecoDecay::EtaProng(Int_t ip) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual voidAliVTrack::GetBxByBz(Double_t* b) const
virtual Double_tAliVTrack::GetBz() const
Short_tAliAODRecoDecay::GetCharge() const
virtual Bool_tAliAODRecoDecay::GetCovarianceXYZPxPyPz(Double_t* cv) const
AliRDHFCuts*AliAODRecoDecayHF::GetCuts(const char* name) const
Double_tAliAODRecoDecayHF::Getd0errProng(Int_t ip) const
Double_tAliAODRecoDecay::Getd0Prong(Int_t ip) const
TObject*AliAODRecoDecay::GetDaughter(Int_t i) const
Double_tAliAODRecoDecay::GetDCA(Int_t i = 0) const
virtual const AliDetectorPID*AliVTrack::GetDetectorPID() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual Int_tAliVTrack::GetEMCALcluster() const
virtual const AliVEvent*AliVTrack::GetEvent() const
Int_tAliAODRecoDecay::GetEventNumber() const
virtual Int_tAliVParticle::GetFirstDaughter() const
virtual Short_tAliVParticle::GetGeneratorIndex() const
virtual Int_tAliVTrack::GetHMPIDcluIdx() const
virtual voidAliVTrack::GetHMPIDmip(Float_t&, Float_t&, Int_t&, Int_t&) const
virtual Double_tAliVTrack::GetHMPIDoccupancy() const
virtual voidAliVTrack::GetHMPIDpid(Double_t*) const
virtual Double_tAliVTrack::GetHMPIDsignal() const
virtual voidAliVTrack::GetHMPIDtrk(Float_t&, Float_t&, Float_t&, Float_t&) const
virtual const char*TObject::GetIconName() const
virtual Int_tAliAODRecoDecay::GetID() const
virtual const AliExternalTrackParam*AliVTrack::GetInnerParam() const
virtual Double_tAliVTrack::GetIntegratedLength() const
virtual voidAliVTrack::GetIntegratedTimes(Double_t*, Int_t nspec = AliPID::kSPECIESC) const
virtual UChar_tAliAODRecoDecay::GetITSClusterMap() const
virtual voidAliVTrack::GetITSdEdxSamples(Double_t* s) const
virtual Double_tAliVTrack::GetITSsignal() const
virtual Int_tAliAODRecoDecay::GetLabel() const
virtual Int_tAliVParticle::GetLastDaughter() const
TList*AliAODRecoDecayHF::GetListOfCuts() const
virtual Int_tAliVParticle::GetMother() const
virtual const char*TObject::GetName() const
virtual Int_tAliVTrack::GetNcls(Int_t) const
Int_tAliAODRecoDecay::GetNDaughters() const
Int_tAliAODRecoDecay::GetNProngs() const
virtual Int_tAliVTrack::GetNumberOfTRDslices() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual Bool_tAliVTrack::GetOuterHmpPxPyPz(Double_t*) const
virtual const AliExternalTrackParam*AliVTrack::GetOuterParam() const
AliAODVertex*AliAODRecoDecayHF::GetOwnPrimaryVtx() const
voidAliAODRecoDecayHF::GetOwnPrimaryVtx(Double_t* vtx) const
AliAODVertex*AliAODRecoDecay::GetOwnSecondaryVtx() const
virtual Int_tAliVTrack::GetPHOScluster() const
Double_t*AliAODRecoDecay::GetPID() const
virtual Int_tAliVTrack::GetPIDForTracking() const
voidAliAODRecoDecay::GetPIDProng(Int_t ip, Double_t* pid) const
AliAODVertex*AliAODRecoDecayHF::GetPrimaryVtx() const
AliAODVertex*AliAODRecoDecayHF::GetPrimaryVtxRef() const
UShort_tAliAODRecoDecayHF::GetProngID(Int_t ip) const
virtual Bool_tAliVTrack::GetPxPyPz(Double_t*) const
Double_tAliAODRecoDecay::GetReducedChi2() const
Int_tAliAODRecoDecay::GetRunNumber() const
AliAODVertex*AliAODRecoDecay::GetSecondaryVtx() const
voidAliAODRecoDecay::GetSecondaryVtx(Double_t* vtx) const
Double_tAliAODRecoDecay::GetSecVtxX() const
Double_tAliAODRecoDecay::GetSecVtxY() const
Double_tAliAODRecoDecay::GetSecVtxZ() const
ULong_tAliAODRecoDecayHF::GetSelectionMap() const
virtual ULong_tAliAODRecoDecay::GetStatus() const
virtual const char*TObject::GetTitle() const
virtual Int_tAliVTrack::GetTOFBunchCrossing(Double_t = 0, Bool_t = kFALSE) const
virtual const AliTOFHeader*AliVTrack::GetTOFHeader() const
virtual Double_tAliVTrack::GetTOFsignal() const
virtual Double_tAliVTrack::GetTOFsignalTunedOnData() const
virtual Float_tAliVTrack::GetTPCClusterInfo(Int_t, Int_t, Int_t = 0, Int_t = 159, Int_t = 0) const
virtual const TBits*AliVTrack::GetTPCClusterMapPtr() const
virtual AliTPCdEdxInfo*AliVTrack::GetTPCdEdxInfo() const
virtual const TBits*AliVTrack::GetTPCFitMapPtr() const
virtual Double_tAliVTrack::GetTPCmomentum() const
virtual UShort_tAliVTrack::GetTPCNcls() const
virtual UShort_tAliVTrack::GetTPCNclsF() const
virtual const TBits*AliVTrack::GetTPCSharedMapPtr() const
virtual Double_tAliVTrack::GetTPCsignal() const
virtual UShort_tAliVTrack::GetTPCsignalN() const
virtual Double_tAliVTrack::GetTPCsignalTunedOnData() const
virtual Double_tAliVTrack::GetTPCTgl() const
virtual Double_tAliVTrack::GetTrackEtaOnEMCal() const
virtual Double_tAliVTrack::GetTrackPhiOnEMCal() const
virtual Double_tAliVTrack::GetTrackPOnEMCal() const
virtual Double_tAliVTrack::GetTrackPtOnEMCal() const
virtual Double_tAliVTrack::GetTRDchi2() const
virtual Double_tAliVTrack::GetTRDmomentum(Int_t, Double_t* = 0x0) const
virtual UChar_tAliVTrack::GetTRDncls() const
virtual UChar_tAliVTrack::GetTRDntrackletsPID() const
virtual Double_tAliVTrack::GetTRDsignal() const
virtual Double_tAliVTrack::GetTRDslice(Int_t, Int_t) const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tAliAODRecoDecay::GetXYZ(Double_t* p) const
virtual Bool_tAliVTrack::GetXYZAt(Double_t, Double_t, Double_t*) const
Bool_tAliVParticle::Global2LocalMomentum(Double_t* p, Short_t charge, Double_t& alpha) const
Bool_tAliVParticle::Global2LocalPosition(Double_t* r, Double_t alpha) const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
Bool_tAliAODRecoDecayHF::HasBadDaughters() const
virtual ULong_tTObject::Hash() const
Bool_tAliAODRecoDecayHF::HasSelectionBit(Int_t i) const
Double_tAliAODRecoDecayHF::ImpParXY() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
Double_tAliAODRecoDecay::InvMass(Int_t npdg, UInt_t* pdg) const
Double_tAliAODRecoDecay::InvMass2(Int_t npdg, UInt_t* pdg) const
Double_tAliAODRecoDecay::InvMass2Prongs(Int_t ip1, Int_t ip2, UInt_t pdg1, UInt_t pdg2) const
Double_tInvMassD0() const
voidInvMassD0(Double_t& mD0, Double_t& mD0bar) const
Double_tInvMassD0bar() const
Double_tInvMassJPSIee() const
virtual TClass*IsA() const
virtual Bool_tAliVTrack::IsEMCAL() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tAliVTrack::IsExtrapolatedToEMCAL() const
virtual Bool_tTObject::IsFolder() const
Bool_tAliAODRecoDecayHF::IsLikeSign() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tAliVTrack::IsPHOS() const
virtual Bool_tAliVParticle::IsSortable() const
Bool_tTObject::IsZombie() const
Bool_tAliVParticle::Local2GlobalMomentum(Double_t* p, Double_t alpha) const
Bool_tAliVParticle::Local2GlobalPosition(Double_t* r, Double_t alpha) const
virtual voidTObject::ls(Option_t* option = "") const
virtual Double_tAliAODRecoDecay::M() const
Int_tAliAODRecoDecay::MatchToMC(Int_t pdgabs, TClonesArray* mcArray, Int_t ndgCk = 0, const Int_t* pdgDg = 0) const
voidTObject::MayNotUse(const char* method) const
voidAliAODRecoDecayHF::Misalign(TString misal = "null")
Double_tAliAODRecoDecayHF::Normalizedd0Prong(Int_t ip) const
Double_tAliAODRecoDecayHF::NormalizedDecayLength() const
Double_tAliAODRecoDecayHF::NormalizedDecayLength2() const
Double_tAliAODRecoDecayHF::NormalizedDecayLengthXY() const
virtual Bool_tTObject::Notify()
Int_tAliAODRecoDecayHF::NumberOfFakeDaughters() const
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
virtual Double_tAliAODRecoDecay::OneOverPt() const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
AliAODRecoDecayHF2Prong&operator=(const AliAODRecoDecayHF2Prong& source)
virtual Double_tAliAODRecoDecay::P() const
Double_tAliAODRecoDecay::P2() const
Double_tAliAODRecoDecay::P2Prong(Int_t ip) const
virtual voidTObject::Paint(Option_t* option = "")
Bool_tAliAODRecoDecay::PassInvMassCut(Int_t pdgMom, Int_t npdgDg, UInt_t* pdgDg, Double_t cut) const
virtual Int_tAliAODRecoDecay::PdgCode() const
virtual Double_tAliAODRecoDecay::Phi() const
Double_tAliAODRecoDecay::PhiProng(Int_t ip) const
virtual const Double_t*AliAODRecoDecay::PID() const
virtual voidTObject::Pop()
Double_tAliAODRecoDecay::PProng(Int_t ip) const
virtual voidAliAODRecoDecay::Print(Option_t* option = "") const
Double_tProdd0d0() const
Double_tAliAODRecoDecay::ProngsRelAngle(Int_t ip1 = 0, Int_t ip2 = 1) const
virtual Bool_tAliAODRecoDecay::PropagateToDCA(const AliVVertex* vtx, Double_t b, Double_t maxd, Double_t* dz, Double_t* covar)
virtual Double_tAliAODRecoDecay::Pt() const
Double_tAliAODRecoDecay::Pt2() const
Double_tAliAODRecoDecay::Pt2Prong(Int_t ip) const
Double_tAliAODRecoDecay::PtProng(Int_t ip) const
virtual Double_tAliAODRecoDecay::Px() const
Double_tAliAODRecoDecay::PxProng(Int_t ip) const
virtual Bool_tAliAODRecoDecay::PxPyPz(Double_t* p) const
virtual Double_tAliAODRecoDecay::Py() const
Double_tAliAODRecoDecay::PyProng(Int_t ip) const
virtual Double_tAliAODRecoDecay::Pz() const
Double_tAliAODRecoDecay::PzProng(Int_t ip) const
Double_tAliAODRecoDecay::QlProng(Int_t ip) const
Double_tAliAODRecoDecayHF::QlProngFlightLine(Int_t ip) const
Double_tAliAODRecoDecay::QtProng(Int_t ip = 0) const
Double_tAliAODRecoDecayHF::QtProngFlightLine(Int_t ip) const
Double_tAliAODRecoDecay::RadiusSecVtx() const
virtual Int_tTObject::Read(const char* name)
voidAliAODRecoDecayHF::RecalculateImpPars(AliAODVertex* vtxAODNew, AliAODEvent* aod)
virtual voidTObject::RecursiveRemove(TObject* obj)
AliAODVertex*AliAODRecoDecayHF::RemoveDaughtersFromPrimaryVtx(AliAODEvent* aod)
voidTObject::ResetBit(UInt_t f)
virtual voidAliVTrack::ResetStatus(ULong_t)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
Bool_tSelectBtoJPSI(const Double_t* cuts, Int_t& okB) const
Bool_tSelectD0(const Double_t* cuts, Int_t& okD0, Int_t& okD0bar) const
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidAliAODRecoDecay::SetCharge(Short_t charge = 0)
voidAliAODRecoDecayHF::Setd0errProngs(Int_t nprongs, Double_t* d0err)
voidAliAODRecoDecay::Setd0Prongs(Int_t nprongs, Double_t* d0)
voidAliAODRecoDecay::SetDCA(Double_t dca)
voidAliAODRecoDecay::SetDCAs(Int_t nDCA, Double_t* dca)
virtual voidAliVTrack::SetDetectorPID(const AliDetectorPID*)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidAliVTrack::SetEMCALcluster(Int_t)
voidAliAODRecoDecay::SetEventRunNumbers(Int_t en, Int_t rn)
virtual voidAliVParticle::SetGeneratorIndex(Short_t)
virtual voidAliVTrack::SetID(Short_t)
voidAliAODRecoDecayHF::SetListOfCutsRef(TObject* obj)
static voidTObject::SetObjectStat(Bool_t stat)
voidAliAODRecoDecayHF::SetOwnPrimaryVtx(const AliAODVertex* vtx)
voidAliAODRecoDecay::SetOwnSecondaryVtx(AliAODVertex* vtx2)
virtual voidAliVTrack::SetPHOScluster(Int_t)
voidAliAODRecoDecay::SetPID(Int_t nprongs, Double_t* pid)
virtual voidAliVTrack::SetPIDForTracking(Int_t)
voidAliAODRecoDecayHF::SetPrimaryVtxRef(TObject* vtx)
voidAliAODRecoDecayHF::SetProngIDs(Int_t nIDs, UShort_t* id)
voidAliAODRecoDecay::SetPxPyPzProngs(Int_t nprongs, Double_t* px, Double_t* py, Double_t* pz)
voidAliAODRecoDecay::SetSecondaryVtx(AliAODVertex* vtx2)
voidAliAODRecoDecayHF::SetSelectionBit(Int_t i)
virtual voidAliVTrack::SetStatus(ULong_t)
virtual voidAliVTrack::SetTrackPhiEtaPtOnEMCal(Double_t, Double_t, Double_t = -999)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual Double_tAliAODRecoDecay::Theta() const
Double_tAliAODRecoDecay::ThetaProng(Int_t ip) const
voidAliAODRecoDecayHF::UnsetOwnPrimaryVtx()
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
virtual Double_tAliAODRecoDecay::Xv() const
virtual Bool_tAliAODRecoDecay::XvYvZv(Double_t* x) const
virtual Double_tAliAODRecoDecay::Y() const
Double_tAliAODRecoDecay::Y(UInt_t pdg) const
Double_tYD0() const
Double_tYJPSI() const
Double_tAliAODRecoDecay::YProng(Int_t ip, UInt_t pdg) const
virtual Double_tAliAODRecoDecay::Yv() const
virtual Double_tAliAODRecoDecay::Zv() const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
Int_tAliAODRecoDecay::MatchToMC(Int_t pdgabs, TClonesArray* mcArray, Int_t* dgLabels) const
Int_tAliAODRecoDecay::MatchToMC(Int_t pdgabs, TClonesArray* mcArray, Int_t* dgLabels, Int_t ndg, Int_t ndgCk = 0, const Int_t* pdgDg = 0) const

Data Members

protected:
Short_tAliAODRecoDecay::fChargecharge, use this convention for prongs charges:
Double32_t*AliAODRecoDecay::fDCA[fNDCA] prong-to-prong DCA [cm]
Int_tAliAODRecoDecay::fEventNumber
TRefAliAODRecoDecayHF::fEventPrimaryVtxref to primary vertex of the event
TRefAliAODRecoDecayHF::fListOfCutsref to the list of analysis cuts
Int_tAliAODRecoDecay::fNDCAnumber of dca's
Int_tAliAODRecoDecay::fNPIDnumber of PID probabilities
Int_tAliAODRecoDecay::fNProngsnumber of prongs
AliAODVertex*AliAODRecoDecayHF::fOwnPrimaryVtxprimary vertex for this candidate
AliAODVertex*AliAODRecoDecay::fOwnSecondaryVtxtemporary solution (to work outside AliAODEvent)
Double32_t*AliAODRecoDecay::fPID[fNPID] combined pid
UShort_t*AliAODRecoDecayHF::fProngID[fNProngs] track ID of daughters
Double32_t*AliAODRecoDecay::fPx[fNProngs] px of tracks at the vertex [GeV/c]
Double32_t*AliAODRecoDecay::fPy[fNProngs] py of tracks at the vertex [GeV/c]
Double32_t*AliAODRecoDecay::fPz[fNProngs] pz of tracks at the vertex [GeV/c]
Int_tAliAODRecoDecay::fRunNumber
TRefAliAODRecoDecay::fSecondaryVtxdecay vertex
ULong_tAliAODRecoDecayHF::fSelectionMapused to store outcome of selection in AliAnalysisVertexingHF
Double32_t*AliAODRecoDecay::fd0[fNProngs] rphi impact params w.r.t. Primary Vtx [cm]
Double_t*AliAODRecoDecayHF::fd0err[fNProngs] error on prongs rphi impact param [cm]

Class Charts

Inheritance Chart:
TObject
AliVParticle
AliVTrack
AliAODRecoDecay
AliAODRecoDecayHF
AliAODRecoDecayHF2Prong
AliAODRecoCascadeHF

Function documentation

AliAODRecoDecayHF2Prong()
 Default Constructor

AliAODRecoDecayHF2Prong(AliAODVertex* vtx2, Double_t* px, Double_t* py, Double_t* pz, Double_t* d0, Double_t* d0err, Float_t dca)
 Constructor with AliAODVertex for decay vertex

AliAODRecoDecayHF2Prong(AliAODVertex* vtx2, Double_t* d0, Double_t* d0err, Float_t dca)
 Constructor with AliAODVertex for decay vertex and without prongs momenta

AliAODRecoDecayHF2Prong(const AliAODRecoDecayHF2Prong& source)
 Copy constructor

AliAODRecoDecayHF2Prong & operator=(const AliAODRecoDecayHF2Prong& source)
 assignment operator

Bool_t SelectD0(const Double_t *cuts,Int_t &okD0,Int_t &okD0bar)
 This function compares the D0 with a set of cuts:

 cuts[0] = inv. mass half width [GeV]
 cuts[1] = dca [cm]
 cuts[2] = cosThetaStar
 cuts[3] = pTK [GeV/c]
 cuts[4] = pTPi [GeV/c]
 cuts[5] = d0K [cm]   upper limit!
 cuts[6] = d0Pi [cm]  upper limit!
 cuts[7] = d0d0 [cm^2]
 cuts[8] = cosThetaPoint

 If the D0/D0bar doesn't pass the cuts it sets the weights to 0
 If neither D0 nor D0bar pass the cuts return kFALSE

Bool_t SelectBtoJPSI(const Double_t *cuts,Int_t &okB)
 This function compares the Secondary JPSI candidates with a set of cuts:

 cuts[0] = inv. mass half width [GeV]
 cuts[1] = dca [cm]
 cuts[2] = cosThetaStar (negative electron)
 cuts[3] = pTP [GeV/c]
 cuts[4] = pTN [GeV/c]
 cuts[5] = d0P [cm]   upper limit!
 cuts[6] = d0N [cm]  upper limit!
 cuts[7] = d0d0 [cm^2]
 cuts[8] = cosThetaPoint

 If the candidate doesn't pass the cuts it sets the weight to 0
 and return kFALSE

virtual ~AliAODRecoDecayHF2Prong()
{}
Double_t Prodd0d0() const
{return AliAODRecoDecay::Prodd0d0(0,1);}
Double_t ED0() const
 D0->Kpi
{return E(421);}
Double_t YD0() const
{return Y(421);}
Double_t CtD0() const
{return Ct(421);}
Double_t CtD0(Double_t point[3])
{return AliAODRecoDecay::Ct(421,point);}
Double_t CtD0(AliAODVertex* vtx1) const
{return AliAODRecoDecay::Ct(421,vtx1);}
Double_t CosThetaStarD0() const
{return CosThetaStar(1,421,211,321);}
Double_t CosThetaStarD0bar() const
{return CosThetaStar(0,421,321,211);}
void CosThetaStarD0(Double_t& ctsD0, Double_t& ctsD0bar) const
{ctsD0=CosThetaStarD0();ctsD0bar=CosThetaStarD0bar();return;}
Double_t InvMassD0() const
Double_t InvMassD0bar() const
void InvMassD0(Double_t& mD0, Double_t& mD0bar) const
{mD0=InvMassD0();mD0bar=InvMassD0bar();return;}
Double_t EJPSI() const
 Jpsi (from B) -> ee
{return E(443);}
Double_t YJPSI() const
{return Y(443);}
Double_t CtJPSI() const
{return Ct(443);}
Double_t CtJPSI(Double_t point[3])
{return AliAODRecoDecay::Ct(443,point);}
Double_t CtJPSI(AliAODVertex* vtx1) const
{return AliAODRecoDecay::Ct(443,vtx1);}
Double_t CosThetaStarJPSI() const
{return CosThetaStar(1,443,11,11);}
Double_t InvMassJPSIee() const