AliPhysics  ed43440 (ed43440)
AliAODRecoCascadeHF3Prong.h
Go to the documentation of this file.
1 #ifndef ALIAODRECOCASCADEHF3PRONG_H
2 #define ALIAODRECOCASCADEHF3PRONG_H
3 /* Copyright(c) 1998-2008, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 /* $Id$ */
7 
16 
17 #include <TRef.h>
18 #include <TRefArray.h>
19 #include <TClonesArray.h>
20 #include <TClass.h>
21 #include "AliAODVertex.h"
22 #include "AliAODcascade.h"
23 #include "AliAODv0.h"
25 
27 
28  public:
29 
31  AliAODRecoCascadeHF3Prong(AliAODVertex *vtx2, Short_t charge,
32  Double_t *px, Double_t *py, Double_t *pz,
33  Double_t *d0, Double_t *d0err,
34  Double_t *dca, Double_t sigvert,
35  Double_t dist12,Double_t dist23);
37 
40 
41  AliAODTrack* GetBachelor1() const {return (AliAODTrack*)GetDaughter(0);}
42  AliAODTrack* GetBachelor2() const {return (AliAODTrack*)GetDaughter(2);}
43  AliAODcascade* GetCascade() const {
44  if ( ! ((AliAODRecoDecay*)GetDaughter(1))->IsA()->InheritsFrom("AliAODcascade") ){
45  AliWarning("Object is not of type cascade");
46  return 0;
47  }
48  return (AliAODcascade*)GetDaughter(1);
49  }
50 
51  AliAODTrack* GetCascadePositiveTrack() const { return (AliAODTrack*)GetCascade()->GetDaughter(0); }
52  AliAODTrack* GetCascadeNegativeTrack() const { return (AliAODTrack*)GetCascade()->GetDaughter(1); }
53  AliAODTrack* GetCascadeBachelorTrack() const { return (AliAODTrack*)GetCascade()->GetDecayVertexXi()->GetDaughter(0); }
54 
57  UInt_t pdg[3]={211,3312,211}; return InvMass(3,pdg);
58  }
59 
60  Int_t MatchToMC(Int_t pdgabs,Int_t pdgabscasc, Int_t *pdgDg,Int_t *pdgDgcasc, Int_t *pdgDgv0,TClonesArray *mcArray) const;
61  Int_t MatchToMCCascade(AliAODcascade *casc, Int_t pdgabscasc, Int_t *pdgDgcasc,Int_t *pdgDgv0, TClonesArray *mcArray) const;
62  Int_t MatchToMCXicPlus(Int_t pdgabs,TClonesArray *mcArray,Int_t dgLabels[10],Int_t ndg,Int_t ndgCk, const Int_t *pdgDg) const;
63 
66  Double_t CascDecayLength() const;
74  Double_t CascMassXi() const;
75  Double_t CascMassLambda() const;
77 
80 
81  protected:
82 
84  ClassDef(AliAODRecoCascadeHF3Prong, 2);
85 };
87 
88 #endif
Int_t charge
Double_t InvMassPiXiPi() const
Xic invariant mass.
Int_t pdg
AliAODTrack * GetBachelor2() const
double Double_t
Definition: External.C:58
Int_t MatchToMCCascade(AliAODcascade *casc, Int_t pdgabscasc, Int_t *pdgDgcasc, Int_t *pdgDgv0, TClonesArray *mcArray) const
void InvMass(Int_t icalo, TString particle, TString fileName)
AliAODcascade * GetCascade() const
AliAODRecoCascadeHF3Prong & operator=(const AliAODRecoCascadeHF3Prong &source)
Int_t MatchToMCXicPlus(Int_t pdgabs, TClonesArray *mcArray, Int_t dgLabels[10], Int_t ndg, Int_t ndgCk, const Int_t *pdgDg) const
int Int_t
Definition: External.C:63
unsigned int UInt_t
Definition: External.C:33
AliAODTrack * GetBachelor1() const
short Short_t
Definition: External.C:23
Int_t MatchToMC(Int_t pdgabs, Int_t pdgabscasc, Int_t *pdgDg, Int_t *pdgDgcasc, Int_t *pdgDgv0, TClonesArray *mcArray) const
AliAODTrack * GetCascadePositiveTrack() const
AliAODTrack * GetCascadeNegativeTrack() const
AliAODTrack * GetCascadeBachelorTrack() const