6 #include <TClonesArray.h>
23 fMCFlag(AliAODMCParticle::kPhysicalPrim)
25 fBaseClassName =
"AliAODMCParticle";
26 SetClassName(
"AliAODMCParticle");
35 fMCFlag(AliAODMCParticle::kPhysicalPrim)
37 fBaseClassName =
"AliAODMCParticle";
38 SetClassName(
"AliAODMCParticle");
48 Int_t i = GetIndexFromLabel(lab);
59 Int_t i = GetIndexFromLabel(lab);
70 if (i == -1) i = fCurrentID;
71 if (i < 0 || i >= fClArray->GetEntriesFast())
return 0;
72 AliAODMCParticle *vp =
static_cast<AliAODMCParticle*
>(fClArray->At(i));
85 UInt_t rejectionReason = 0;
86 if (i == -1) i = fCurrentID;
91 AliDebug(2,
"Particle not accepted.");
103 const Int_t n = GetNEntries();
104 AliAODMCParticle *p = 0;
107 if (fCurrentID >= n)
break;
123 const Int_t n = GetNEntries();
124 AliAODMCParticle *p = 0;
127 if (fCurrentID >= n)
break;
147 if (!r)
return kFALSE;
168 if (!r)
return kFALSE;
190 rejectionReason |= kMCFlag;
241 static TString trackString;
243 if (GetMinPt() == 0) {
244 trackString = TString::Format(
"%s_pT0000", GetArrayName().
Data());
246 else if (GetMinPt() < 1.0) {
247 trackString = TString::Format(
"%s_pT0%3.0f", GetArrayName().
Data(), GetMinPt()*1000.0);
250 trackString = TString::Format(
"%s_pT%4.0f", GetArrayName().
Data(), GetMinPt()*1000.0);
253 return trackString.Data();
virtual AliAODMCParticle * GetMCParticle(Int_t i=-1) const
virtual Bool_t GetMomentum(TLorentzVector &mom, Int_t i) const
const AliMCParticleIterableMomentumContainer accepted_momentum() const
virtual AliAODMCParticle * GetNextMCParticle()
Declaration of class AliTLorentzVector.
virtual AliAODMCParticle * GetAcceptMCParticle(Int_t i=-1) const
virtual Bool_t ApplyParticleCuts(const AliVParticle *vp, UInt_t &rejectionReason) const
virtual Bool_t ApplyMCParticleCuts(const AliAODMCParticle *vp, UInt_t &rejectionReason) const
const AliMCParticleIterableContainer all() const
UInt_t fMCFlag
select MC particles with flags
Container for particles within the EMCAL framework.
virtual Bool_t AcceptMCParticle(const AliAODMCParticle *vp, UInt_t &rejectionReason) const
virtual AliAODMCParticle * GetAcceptMCParticleWithLabel(Int_t lab)
virtual AliAODMCParticle * GetNextAcceptMCParticle()
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)
const AliMCParticleIterableMomentumContainer all_momentum() const
ClassImp(AliAnalysisTaskCRC) AliAnalysisTaskCRC
virtual Bool_t GetMomentumFromParticle(TLorentzVector &mom, const AliVParticle *part, Double_t mass) const
virtual Bool_t ApplyKinematicCuts(const AliTLorentzVector &mom, UInt_t &rejectionReason) const
EMCALIterableContainer::AliEmcalIterableContainerT< AliAODMCParticle, EMCALIterableContainer::operator_star_object< AliAODMCParticle > > AliMCParticleIterableContainer
Container for MC-true particles within the EMCAL framework.
virtual AliAODMCParticle * GetMCParticleWithLabel(Int_t lab) const
const AliMCParticleIterableContainer accepted() const
EMCALIterableContainer::AliEmcalIterableContainerT< AliAODMCParticle, EMCALIterableContainer::operator_star_pair< AliAODMCParticle > > AliMCParticleIterableMomentumContainer