AliPhysics  0df82bd (0df82bd)
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
AliEmcalContainer Class Referenceabstract

Base class for container structures within the EMCAL framework. More...

#include <AliEmcalContainer.h>

Inheritance diagram for AliEmcalContainer:

Public Types

enum  RejectionReason {
  kNullObject = 1<<0, kPtCut = 1<<1, kAcceptanceCut = 1<<2, kMCLabelCut = 1<<3,
  kBitMapCut = 1<<4, kHFCut = 1<<5, kNotHybridTrack = 1<<7, kMCFlag = 1<<8,
  kMCGeneratorCut = 1<<9, kChargeCut = 1<<10, kMinDistanceTPCSectorEdgeCut = 1<<11, kIsEMCalCut = 1<<13,
  kTimeCut = 1<<14, kEnergyCut = 1<<15, kExoticCut = 1<<16, kAreaCut = 1<<18,
  kAreaEmcCut = 1<<19, kZLeadingChCut = 1<<20, kZLeadingEmcCut = 1<<21, kNEFCut = 1<<22,
  kMinLeadPtCut = 1<<23, kMaxTrackPtCut = 1<<24, kMaxClusterPtCut = 1<<25, kFlavourCut = 1<<26,
  kTagStatus = 1<<27, kMinNConstituents = 1<<28
}
 Bit definition for the reason a particle was rejected. More...
 

Public Member Functions

 AliEmcalContainer ()
 
 AliEmcalContainer (const char *name)
 
virtual ~AliEmcalContainer ()
 
virtual Bool_t ApplyKinematicCuts (const AliTLorentzVector &mom)
 
TClonesArray * GetArray () const
 
const TString & GetArrayName () const
 
const TString & GetClassName () const
 
Double_t GetMinE () const
 
Double_t GetMaxE () const
 
Double_t GetMinPt () const
 
Double_t GetMaxPt () const
 
Double_t GetMinEta () const
 
Double_t GetMaxEta () const
 
Double_t GetMinPhi () const
 
Double_t GetMaxPhi () const
 
Int_t GetCurrentID () const
 
Bool_t GetIsParticleLevel () const
 
Int_t GetIndexFromLabel (Int_t lab) const
 
Int_t GetNEntries () const
 
virtual Bool_t GetMomentum (TLorentzVector &mom, Int_t i)=0
 
virtual Bool_t GetAcceptMomentum (TLorentzVector &mom, Int_t i)=0
 
virtual Bool_t GetNextMomentum (TLorentzVector &mom)=0
 
virtual Bool_t GetNextAcceptMomentum (TLorentzVector &mom)=0
 
virtual Bool_t AcceptObject (Int_t i)=0
 
virtual Bool_t AcceptObject (const TObject *obj)=0
 
void ResetCurrentID (Int_t i=-1)
 
virtual void SetArray (AliVEvent *event)
 
void SetArrayName (const char *n)
 
void SetBitMap (UInt_t m)
 
void SetIsParticleLevel (Bool_t b)
 
void SortArray ()
 
UInt_t GetRejectionReason () const
 
UInt_t TestRejectionReason (UInt_t rs) const
 
UShort_t GetRejectionReasonBitPosition () const
 
TClass * GetLoadedClass ()
 
virtual void NextEvent ()
 
void SetMinMCLabel (Int_t s)
 
void SetMaxMCLabel (Int_t s)
 
void SetMCLabelRange (Int_t min, Int_t max)
 
void SetELimits (Double_t min, Double_t max)
 
void SetMinE (Double_t min)
 
void SetMaxE (Double_t max)
 
void SetPtLimits (Double_t min, Double_t max)
 
void SetMinPt (Double_t min)
 
void SetMaxPt (Double_t max)
 
void SetEtaLimits (Double_t min, Double_t max)
 
void SetPhiLimits (Double_t min, Double_t max)
 
void SetMassHypothesis (Double_t m)
 
const char * GetName () const
 
void SetName (const char *n)
 

Static Public Member Functions

static Bool_t SamePart (const AliVParticle *part1, const AliVParticle *part2, Double_t dist=1.e-4)
 

Protected Attributes

TString fName
 
TString fClArrayName
 object name More...
 
TString fClassName
 name of branch More...
 
Bool_t fIsParticleLevel
 name of the class in the TClonesArray More...
 
UInt_t fBitMap
 whether or not it is a particle level object collection More...
 
Double_t fMinPt
 bitmap mask More...
 
Double_t fMaxPt
 cut on particle pt More...
 
Double_t fMaxE
 cut on particle pt More...
 
Double_t fMinE
 cut on particle energy More...
 
Double_t fMinEta
 cut on particle energy More...
 
Double_t fMaxEta
 cut on particle eta More...
 
Double_t fMinPhi
 cut on particle eta More...
 
Double_t fMaxPhi
 cut on particle phi More...
 
Int_t fMinMCLabel
 cut on particle phi More...
 
Int_t fMaxMCLabel
 minimum MC label More...
 
Double_t fMassHypothesis
 maximum MC label More...
 
TClonesArray * fClArray
 if < 0 it will use a PID mass when available More...
 
Int_t fCurrentID
 !current ID for automatic loops More...
 
AliNamedArrayI * fLabelMap
 !Label-Index map More...
 
Double_t fVertex [3]
 !event vertex array More...
 
UInt_t fRejectionReason
 !reject reason bit map for the last call to an accept object function More...
 
TClass * fLoadedClass
 !Class of teh objects contained in the TClonesArray More...
 

Private Member Functions

 AliEmcalContainer (const AliEmcalContainer &obj)
 
AliEmcalContaineroperator= (const AliEmcalContainer &other)
 

Detailed Description

Base class for container structures within the EMCAL framework.

Author
M. Verweij

This class is the base class for container object used in the EMCAL framework. The main purpose is to connect this to objects stored as list objects in the input event, among them particles, EMCAL clusters, or jets. The core of the container is a pointer to a TClonesArray representing the the content in the input event.

Containers can be connected. For example, jet containers need access to the track container and the cluster container in case constituent information is required.

In addition, kinematical cuts can be applied, accessing only content which is selected using the selection cuts to be applied.

The usage of EMCAL containers is described here: Using the EMCAL containers

Definition at line 34 of file AliEmcalContainer.h.

Member Enumeration Documentation

Bit definition for the reason a particle was rejected.

Enumerator
kNullObject 
kPtCut 

Object is NULL.

kAcceptanceCut 

\( p_{t} \) cut

kMCLabelCut 

particle not in acceptance in \( \eta \) and/or \( \phi \)

kBitMapCut 

Invalid MC label.

kHFCut 

kBitMapCut

kNotHybridTrack 

kHFCut

kMCFlag 

Track did not pass the hybrid track cuts.

kMCGeneratorCut 

Cut on the MC flag.

kChargeCut 

Generator flag mismatch.

kMinDistanceTPCSectorEdgeCut 

Particle charge did not match.

kIsEMCalCut 

Track too close to the TPC sector boundary.

kTimeCut 

Cluster not in the EMCAL.

kEnergyCut 

Cell time cut not passed.

kExoticCut 

Energy below threshold.

kAreaCut 

Cluster is exotic cluster.

kAreaEmcCut 

Cut on the jet area.

kZLeadingChCut 

Cut on the jet area in the EMCAL.

kZLeadingEmcCut 

Cut on the z of the leading charged constituent.

kNEFCut 

Cut on the z of the leading particle in the EMCAL.

kMinLeadPtCut 

Cut on the neutral energy fraction.

kMaxTrackPtCut 

Cut on the minimum \( p_{t} \) of the leading particle.

kMaxClusterPtCut 

Cut on the maximum track \( p_{t} \).

kFlavourCut 

Cut on the maximum cluster \( p_{t} \).

kTagStatus 

Cut on flavour content in the jet.

kMinNConstituents 

Cut on jet tag status.

Definition at line 40 of file AliEmcalContainer.h.

Constructor & Destructor Documentation

AliEmcalContainer::AliEmcalContainer ( )

Default constructor. This constructor is only for ROOT I/O and not to be used by users. The container will not connect to an array in the input event.

Definition at line 33 of file AliEmcalContainer.cxx.

AliEmcalContainer::AliEmcalContainer ( const char *  name)

Standard (named) constructor. The name provided must match the name of the array inside the list objects in the input event the EMCAL container connects to. The EMCAL container can get a different name, to be specified in the function SetEvent.

Parameters
nameName of the container in the input event.

Definition at line 69 of file AliEmcalContainer.cxx.

virtual AliEmcalContainer::~AliEmcalContainer ( )
inlinevirtual

Definition at line 81 of file AliEmcalContainer.h.

AliEmcalContainer::AliEmcalContainer ( const AliEmcalContainer obj)
private

Member Function Documentation

virtual Bool_t AliEmcalContainer::AcceptObject ( Int_t  i)
pure virtual
virtual Bool_t AliEmcalContainer::AcceptObject ( const TObject *  obj)
pure virtual
virtual Bool_t AliEmcalContainer::ApplyKinematicCuts ( const AliTLorentzVector &  mom)
virtual
virtual Bool_t AliEmcalContainer::GetAcceptMomentum ( TLorentzVector &  mom,
Int_t  i 
)
pure virtual
const TString& AliEmcalContainer::GetClassName ( ) const
inline
Int_t AliEmcalContainer::GetCurrentID ( ) const
inline
Int_t AliEmcalContainer::GetIndexFromLabel ( Int_t  lab) const

Get the index in the container from a given label

Parameters
labLabel to check
Returns
Index (-1 if not found)

Definition at line 138 of file AliEmcalContainer.cxx.

Referenced by AliClusterContainer::GetAcceptClusterWithLabel(), and AliClusterContainer::GetClusterWithLabel().

Bool_t AliEmcalContainer::GetIsParticleLevel ( ) const
inline

Definition at line 96 of file AliEmcalContainer.h.

TClass* AliEmcalContainer::GetLoadedClass ( )
inline

Definition at line 114 of file AliEmcalContainer.h.

Double_t AliEmcalContainer::GetMaxE ( ) const
inline

Definition at line 88 of file AliEmcalContainer.h.

Double_t AliEmcalContainer::GetMaxEta ( ) const
inline

Definition at line 92 of file AliEmcalContainer.h.

Referenced by AliParticleContainer::GetParticleEtaMax().

Double_t AliEmcalContainer::GetMaxPhi ( ) const
inline

Definition at line 94 of file AliEmcalContainer.h.

Referenced by AliParticleContainer::GetParticlePhiMax().

Double_t AliEmcalContainer::GetMaxPt ( ) const
inline

Definition at line 90 of file AliEmcalContainer.h.

Double_t AliEmcalContainer::GetMinE ( ) const
inline

Definition at line 87 of file AliEmcalContainer.h.

Double_t AliEmcalContainer::GetMinEta ( ) const
inline

Definition at line 91 of file AliEmcalContainer.h.

Referenced by AliParticleContainer::GetParticleEtaMin().

Double_t AliEmcalContainer::GetMinPhi ( ) const
inline

Definition at line 93 of file AliEmcalContainer.h.

Referenced by AliParticleContainer::GetParticlePhiMin().

Double_t AliEmcalContainer::GetMinPt ( ) const
inline
virtual Bool_t AliEmcalContainer::GetMomentum ( TLorentzVector &  mom,
Int_t  i 
)
pure virtual
const char* AliEmcalContainer::GetName ( ) const
inline

Definition at line 129 of file AliEmcalContainer.h.

Referenced by SetArray().

virtual Bool_t AliEmcalContainer::GetNextAcceptMomentum ( TLorentzVector &  mom)
pure virtual
virtual Bool_t AliEmcalContainer::GetNextMomentum ( TLorentzVector &  mom)
pure virtual
UInt_t AliEmcalContainer::GetRejectionReason ( ) const
inline

Definition at line 111 of file AliEmcalContainer.h.

UShort_t AliEmcalContainer::GetRejectionReasonBitPosition ( ) const

Returns the highest bit in the rejection map as reason why the object was rejected.

Returns

Definition at line 160 of file AliEmcalContainer.cxx.

virtual void AliEmcalContainer::NextEvent ( )
inlinevirtual

Reimplemented in AliTrackContainer.

Definition at line 115 of file AliEmcalContainer.h.

Referenced by AliAnalysisTaskEmcal::RetrieveEventObjects().

AliEmcalContainer& AliEmcalContainer::operator= ( const AliEmcalContainer other)
private
static Bool_t AliEmcalContainer::SamePart ( const AliVParticle *  part1,
const AliVParticle *  part2,
Double_t  dist = 1.e-4 
)
static
void AliEmcalContainer::SetArray ( AliVEvent *  event)
virtual

Connect the container to the array with content stored inside the virtual event. The object name in the event must match the name given in the constructor

Parameters
eventInput event containing the array with content.

Reimplemented in AliTrackContainer.

Definition at line 103 of file AliEmcalContainer.cxx.

Referenced by AliAnalysisTaskEmcal::ExecOnce(), and AliTrackContainer::SetArray().

void AliEmcalContainer::SetArrayName ( const char *  n)
inline

Definition at line 107 of file AliEmcalContainer.h.

Referenced by AliEmcalTrackingQATask::SetDetectorLevelName().

void AliEmcalContainer::SetBitMap ( UInt_t  m)
inline

Definition at line 108 of file AliEmcalContainer.h.

void AliEmcalContainer::SetELimits ( Double_t  min,
Double_t  max 
)
inline

Definition at line 119 of file AliEmcalContainer.h.

void AliEmcalContainer::SetEtaLimits ( Double_t  min,
Double_t  max 
)
inline

Definition at line 125 of file AliEmcalContainer.h.

Referenced by AliParticleContainer::SetParticleEtaLimits().

void AliEmcalContainer::SetIsParticleLevel ( Bool_t  b)
inline

Definition at line 109 of file AliEmcalContainer.h.

void AliEmcalContainer::SetMassHypothesis ( Double_t  m)
inline

Definition at line 127 of file AliEmcalContainer.h.

void AliEmcalContainer::SetMaxE ( Double_t  max)
inline

Definition at line 121 of file AliEmcalContainer.h.

void AliEmcalContainer::SetMaxMCLabel ( Int_t  s)
inline

Definition at line 117 of file AliEmcalContainer.h.

Referenced by SetMCLabelRange().

void AliEmcalContainer::SetMaxPt ( Double_t  max)
inline

Definition at line 124 of file AliEmcalContainer.h.

void AliEmcalContainer::SetMCLabelRange ( Int_t  min,
Int_t  max 
)
inline

Definition at line 118 of file AliEmcalContainer.h.

void AliEmcalContainer::SetMinE ( Double_t  min)
inline

Definition at line 120 of file AliEmcalContainer.h.

Referenced by AliClusterContainer::SetClusECut().

void AliEmcalContainer::SetMinMCLabel ( Int_t  s)
inline

Definition at line 116 of file AliEmcalContainer.h.

Referenced by SetMCLabelRange().

void AliEmcalContainer::SetMinPt ( Double_t  min)
inline
void AliEmcalContainer::SetName ( const char *  n)
inline

Definition at line 130 of file AliEmcalContainer.h.

void AliEmcalContainer::SetPhiLimits ( Double_t  min,
Double_t  max 
)
inline

Definition at line 126 of file AliEmcalContainer.h.

Referenced by AliParticleContainer::SetParticlePhiLimits().

void AliEmcalContainer::SetPtLimits ( Double_t  min,
Double_t  max 
)
inline

Definition at line 122 of file AliEmcalContainer.h.

void AliEmcalContainer::SortArray ( )
inline

Definition at line 110 of file AliEmcalContainer.h.

UInt_t AliEmcalContainer::TestRejectionReason ( UInt_t  rs) const
inline

Definition at line 112 of file AliEmcalContainer.h.

Member Data Documentation

UInt_t AliEmcalContainer::fBitMap
protected

whether or not it is a particle level object collection

Definition at line 139 of file AliEmcalContainer.h.

Referenced by AliClusterContainer::ApplyClusterCuts(), AliParticleContainer::ApplyParticleCuts(), and SetBitMap().

TClonesArray* AliEmcalContainer::fClArray
protected
TString AliEmcalContainer::fClArrayName
protected

object name

Definition at line 136 of file AliEmcalContainer.h.

Referenced by GetArrayName(), GetIndexFromLabel(), SetArray(), and SetArrayName().

Bool_t AliEmcalContainer::fIsParticleLevel
protected

name of the class in the TClonesArray

Definition at line 138 of file AliEmcalContainer.h.

Referenced by GetIsParticleLevel(), and SetIsParticleLevel().

AliNamedArrayI* AliEmcalContainer::fLabelMap
protected

!Label-Index map

Definition at line 153 of file AliEmcalContainer.h.

Referenced by GetIndexFromLabel(), and SetArray().

TClass* AliEmcalContainer::fLoadedClass
protected
Double_t AliEmcalContainer::fMaxE
protected

cut on particle pt

Definition at line 142 of file AliEmcalContainer.h.

Referenced by GetMaxE(), SetELimits(), and SetMaxE().

Double_t AliEmcalContainer::fMaxEta
protected

cut on particle eta

Definition at line 145 of file AliEmcalContainer.h.

Referenced by GetMaxEta(), and SetEtaLimits().

Int_t AliEmcalContainer::fMaxMCLabel
protected
Double_t AliEmcalContainer::fMaxPhi
protected

cut on particle phi

Definition at line 147 of file AliEmcalContainer.h.

Referenced by GetMaxPhi(), and SetPhiLimits().

Double_t AliEmcalContainer::fMaxPt
protected

cut on particle pt

Definition at line 141 of file AliEmcalContainer.h.

Referenced by GetMaxPt(), SetMaxPt(), and SetPtLimits().

Double_t AliEmcalContainer::fMinE
protected
Double_t AliEmcalContainer::fMinEta
protected

cut on particle energy

Definition at line 144 of file AliEmcalContainer.h.

Referenced by GetMinEta(), and SetEtaLimits().

Int_t AliEmcalContainer::fMinMCLabel
protected
Double_t AliEmcalContainer::fMinPhi
protected

cut on particle eta

Definition at line 146 of file AliEmcalContainer.h.

Referenced by GetMinPhi(), and SetPhiLimits().

Double_t AliEmcalContainer::fMinPt
protected

bitmap mask

Definition at line 140 of file AliEmcalContainer.h.

Referenced by GetMinPt(), SetMinPt(), and SetPtLimits().

TString AliEmcalContainer::fName
protected

Definition at line 135 of file AliEmcalContainer.h.

Referenced by GetName(), and SetName().

UInt_t AliEmcalContainer::fRejectionReason
protected
Double_t AliEmcalContainer::fVertex[3]
protected

The documentation for this class was generated from the following files: