31 #ifndef ALIEMCALCONTAINER_H 32 #define ALIEMCALCONTAINER_H 41 #include <TClonesArray.h> 43 #if !(defined(__CINT__) || defined(__MAKECINT__)) 248 virtual void SetArray(
const AliVEvent *event);
261 virtual void NextEvent(
const AliVEvent *event);
324 #if !(defined(__CINT__) || defined(__MAKECINT__)) particle not in acceptance in and/or
virtual Bool_t ApplyKinematicCuts(const AliTLorentzVector &mom, UInt_t &rejectionReason) const
Apply kinematical selection to the momentum vector provided.
void SetMassHypothesis(Double_t m)
const AliEmcalIterableContainer all() const
Create an iterable container interface over all objects in the EMCAL container.
Int_t GetNAcceptEntries() const
Count accepted entries in the container.
virtual Bool_t GetNextMomentum(TLorentzVector &mom)=0
Double_t fMinE
Max. cut on particle energy.
Double_t GetAcceptance() const
EMCALIterableContainer::AliEmcalIterableContainerT< TObject, EMCALIterableContainer::operator_star_pair< TObject > > AliEmcalIterableMomentumContainer
Double_t fMinPhi
Min. cut on particle .
Bool_t fIsEmbedding
if true, this container will connect to an external event
Cut on the z of the leading particle in the EMCAL.
Double_t fMaxE
Min. cut on particle energy.
Double_t GetMinPhi() const
void SetName(const char *n)
Set the name of the class of the objets inside the underlying array.
Double_t GetPhiSwing() const
Int_t GetIndexFromLabel(Int_t lab) const
Get the index in the container from a given label.
Cut on the jet area in the EMCAL.
void SetMinE(Double_t min)
Double_t GetMaxEta() const
void SetMaxE(Double_t max)
virtual ~AliEmcalContainer()
Destructor.
static Double_t RelativePhi(Double_t ang1, Double_t ang2)
Calculates the relative phi between two angle values and returns it in [-Pi, +Pi] range...
UInt_t fBitMap
bitmap mask
Double_t GetEtaSwing() const
TString fClassName
name of the class in the TClonesArray
void SetMinPt(Double_t min)
Track too close to the TPC sector boundary.
static UShort_t GetRejectionReasonBitPosition(UInt_t rejectionReason)
Returns the highest bit in the rejection map as reason why the object was rejected.
Double_t fMinPt
Min. cut on particle .
void SetArrayName(const char *n)
void SetEtaLimits(Double_t min, Double_t max)
void SetVertex(Double_t *vtx)
TClass * fLoadedClass
! Class of the objects contained in the TClonesArray
Cell time cut not passed.
virtual void NextEvent(const AliVEvent *event)
Preparation for the next event.
TClass * GetLoadedClass()
void SetMCLabelRange(Int_t min, Int_t max)
const TString & GetClassName() const
Cut on flavour content in the jet.
void SetIsEmbedding(Bool_t b)
Set embedding status.
Bool_t fIsParticleLevel
whether or not it is a particle level object collection
Cluster is exotic cluster.
virtual Bool_t AcceptObject(Int_t i, UInt_t &rejectionReason) const =0
Double_t GetMaxPhi() const
Double_t GetMinEta() const
Double_t GetMinPt() const
const AliEmcalIterableMomentumContainer accepted_momentum() const
Create an iterable container interface over accepted objects in the EMCAL container.
Int_t GetCurrentID() const
EMCALIterableContainer::AliEmcalIterableContainerT< TObject, EMCALIterableContainer::operator_star_object< TObject > > AliEmcalIterableContainer
Bool_t GetIsEmbedding() const
Get embedding status.
Double_t fMaxPhi
Max. cut on particle .
Cut on the z of the leading charged constituent.
TClass * GetClass() const
virtual TObject * operator[](int index) const =0
Index operator.
Base class for container structures within the EMCAL framework.
void SetMaxPt(Double_t max)
void SetMinMCLabel(Int_t s)
virtual Bool_t GetMomentum(TLorentzVector &mom, Int_t i) const =0
TClonesArray * GetArray() const
RejectionReason
Bit definition for the reason a particle was rejected.
Container implementing iterable functionality of the EMCAL containers.
Track did not pass the hybrid track cuts.
AliNamedArrayI * fLabelMap
! Label-Index map
void SetPtLimits(Double_t min, Double_t max)
void SetClassName(const char *clname)
Int_t fMinMCLabel
minimum MC label
const TString & GetArrayName() const
Double_t fMassHypothesis
if < 0 it will use a PID mass when available
Cluster not in the EMCAL.
Double_t fVertex[3]
! event vertex array
const char * GetName() const
Double_t fMaxPt
Max. cut on particle .
AliEmcalContainer & operator=(const AliEmcalContainer &other)
void SetMaxMCLabel(Int_t s)
Cut on the minimum of the leading particle.
Cut on the neutral energy fraction.
static Bool_t SamePart(const AliVParticle *part1, const AliVParticle *part2, Double_t dist=1.e-4)
Helper function to calculate the distance between two jets or a jet and a particle.
Cut on the regions of acceptance with bad sectors.
Double_t fMinEta
Min. cut on particle .
virtual Bool_t GetAcceptMomentum(TLorentzVector &mom, Int_t i) const =0
void SetIsParticleLevel(Bool_t b)
virtual void SetArray(const AliVEvent *event)
void SetELimits(Double_t min, Double_t max)
Particle charge did not match.
TString fBaseClassName
name of the base class that this container can handle
TString fClArrayName
name of branch
Cut on the minimum number of constituents.
Int_t fMaxMCLabel
maximum MC label
Double_t fMaxEta
Max. cut on particle .
const AliEmcalIterableContainer accepted() const
Create an iterable container interface over accepted objects in the EMCAL container.
void GetVertexFromEvent(const AliVEvent *event)
Retrieve the vertex from the given event.
Cut on the maximum cluster .
TClonesArray * fClArray
! Pointer to array in input event
Int_t GetNEntries() const
void SetPhiLimits(Double_t min, Double_t max)
virtual Bool_t GetNextAcceptMomentum(TLorentzVector &mom)=0
Cut on the maximum track .
Int_t fCurrentID
! current ID for automatic loops
Double_t GetMaxPt() const
const AliEmcalIterableMomentumContainer all_momentum() const
Create an iterable container interface over all objects in the EMCAL container.
void ResetCurrentID(Int_t i=-1)
Reset the iterator to a given index.
Bool_t GetIsParticleLevel() const
virtual TString GetDefaultArrayName(const AliVEvent *const ev) const
Handling default Array names.
AliEmcalContainer()
Default constructor.