1 #ifndef AliParticleContainer_H
2 #define AliParticleContainer_H
9 #include "AliEmcalContainer.h"
11 class AliParticleContainer : public AliEmcalContainer {
13 AliParticleContainer();
14 AliParticleContainer(const char *name);
15 virtual ~AliParticleContainer(){;}
17 Bool_t AcceptParticle(AliVParticle *vp) const;
18 Double_t GetParticlePtCut() const { return fParticlePtCut; }
19 Double_t GetParticleEtaMin() const { return fParticleMinEta; }
20 Double_t GetParticleEtaMax() const { return fParticleMaxEta; }
21 Double_t GetParticlePhiMin() const { return fParticleMinPhi; }
22 Double_t GetParticlePhiMax() const { return fParticleMaxPhi; }
23 AliVParticle *GetLeadingParticle(const char* opt="") ;
24 AliVParticle *GetParticle(Int_t i) const;
25 AliVParticle *GetAcceptParticle(Int_t i) const;
26 AliVParticle *GetParticleWithLabel(Int_t lab) const;
27 AliVParticle *GetAcceptParticleWithLabel(Int_t lab) const;
28 AliVParticle *GetNextAcceptParticle(Int_t i=-1) ;
29 AliVParticle *GetNextParticle(Int_t i=-1) ;
30 void GetMomentum(TLorentzVector &mom, Int_t i) const;
31 Int_t GetNParticles() const {return GetNEntries();}
32 Int_t GetNAcceptedParticles() ;
33 void SetClassName(const char *clname);
34 void SetMCTrackBitMap(UInt_t m) { fMCTrackBitMap = m ; }
35 void SetMinMCLabel(Int_t s) { fMinMCLabel = s ; }
36 void SetParticlePtCut(Double_t cut) { fParticlePtCut = cut ; }
37 void SetParticleEtaLimits(Double_t min, Double_t max) { fParticleMaxEta = max ; fParticleMinEta = min ; }
38 void SetParticlePhiLimits(Double_t min, Double_t max) { fParticleMaxPhi = max ; fParticleMinPhi = min ; }
39 void SetTrackBitMap(UInt_t m) { fTrackBitMap = m ; }
42 Double_t fParticlePtCut; // cut on particle pt
43 Double_t fParticleMinEta; // cut on particle eta
44 Double_t fParticleMaxEta; // cut on particle eta
45 Double_t fParticleMinPhi; // cut on particle phi
46 Double_t fParticleMaxPhi; // cut on particle phi
47 UInt_t fTrackBitMap; // bit map of accepted tracks (non MC)
48 UInt_t fMCTrackBitMap; // bit map of accepted MC tracks
49 Int_t fMinMCLabel; // minimum MC label value for the tracks/clusters being considered MC particles
52 AliParticleContainer(const AliParticleContainer& obj); // copy constructor
53 AliParticleContainer& operator=(const AliParticleContainer& other); // assignment
55 ClassDef(AliParticleContainer,1);