6 #include <TClonesArray.h>
11 #include "AliTLorentzVector.h"
19 fMCFlag(AliAODMCParticle::kPhysicalPrim)
23 fClassName =
"AliAODMCParticle";
29 fMCFlag(AliAODMCParticle::kPhysicalPrim)
60 if (i < 0 || i >=
fClArray->GetEntriesFast())
return 0;
61 AliAODMCParticle *vp =
static_cast<AliAODMCParticle*
>(
fClArray->At(i));
75 AliDebug(2,
"Particle not accepted.");
89 AliAODMCParticle *p = 0;
107 AliAODMCParticle *p = 0;
121 if (mass < 0) mass = part->M();
122 mom.SetPtEtaPhiM(part->Pt(), part->Eta(), part->Phi(),
mass);
126 mom.SetPtEtaPhiM(0, 0, 0, 0);
147 if (mass < 0) mass = vp->M();
148 mom.SetPtEtaPhiM(vp->Pt(), vp->Eta(), vp->Phi(),
mass);
152 mom.SetPtEtaPhiM(0, 0, 0, 0);
166 if (mass < 0) mass = vp->M();
167 mom.SetPtEtaPhiM(vp->Pt(), vp->Eta(), vp->Phi(),
mass);
171 mom.SetPtEtaPhiM(0, 0, 0, 0);
186 if (mass < 0) mass = vp->M();
187 mom.SetPtEtaPhiM(vp->Pt(), vp->Eta(), vp->Phi(),
mass);
191 mom.SetPtEtaPhiM(0, 0, 0, 0);
205 if (mass < 0) mass = vp->M();
206 mom.SetPtEtaPhiM(vp->Pt(), vp->Eta(), vp->Phi(),
mass);
210 mom.SetPtEtaPhiM(0, 0, 0, 0);
220 if (!r)
return kFALSE;
222 AliTLorentzVector mom;
240 if (!r)
return kFALSE;
242 AliTLorentzVector mom;
271 if (cls.InheritsFrom(
"AliAODMCParticle"))
fClassName = clname;
272 else AliError(Form(
"Unable to set class name %s for a AliMCParticleContainer, it must inherits from AliAODMCParticle!",clname));
278 static TString trackString;
290 return trackString.Data();
virtual AliAODMCParticle * GetNextMCParticle(Int_t i=-1)
virtual AliAODMCParticle * GetMCParticle(Int_t i=-1) const
Int_t GetIndexFromLabel(Int_t lab) const
virtual Bool_t GetAcceptMomentum(TLorentzVector &mom, Int_t i)
virtual Bool_t ApplyMCParticleCuts(const AliAODMCParticle *vp)
virtual Bool_t ApplyParticleCuts(const AliVParticle *vp)
virtual Bool_t GetNextMomentum(TLorentzVector &mom, Int_t i=-1)
UInt_t fRejectionReason
event vertex array
Double_t GetMinPt() const
virtual AliAODMCParticle * GetAcceptMCParticleWithLabel(Int_t lab)
const char * GetTitle() const
Bool_t Data(TH1F *h, Double_t *rangefit, Bool_t writefit, Double_t &sgn, Double_t &errsgn, Double_t &bkg, Double_t &errbkg, Double_t &sgnf, Double_t &errsgnf, Double_t &sigmafit, Int_t &status)
virtual Bool_t GetNextAcceptMomentum(TLorentzVector &mom, Int_t i=-1)
ClassImp(AliParticleContainer) AliMCParticleContainer
const TString & GetArrayName() const
virtual Bool_t ApplyKinematicCuts(const AliTLorentzVector &mom)
virtual AliAODMCParticle * GetNextAcceptMCParticle(Int_t i=-1)
virtual Bool_t AcceptMCParticle(const AliAODMCParticle *vp)
void SetClassName(const char *clname)
virtual Bool_t GetMomentum(TLorentzVector &mom, const AliAODMCParticle *part, Double_t mass)
Int_t GetNEntries() const
Int_t fCurrentID
TClonesArray.
virtual AliAODMCParticle * GetMCParticleWithLabel(Int_t lab) const
virtual AliAODMCParticle * GetAcceptMCParticle(Int_t i=-1)