![]() |
AliPhysics
4c20e6b (4c20e6b)
|
Container with name, TClonesArray and cuts for particles. More...
#include <AliTrackContainer.h>
Public Types | |
enum | ETrackType_t { kRejected = -1, kUndefined = 0, kHybridGlobal = 0, kHybridConstrained = 1, kHybridConstrainedNoITSrefit = 2 } |
Status of a track after track selection. More... | |
typedef AliEmcalTrackSelection::ETrackFilterType_t | ETrackFilterType_t |
![]() | |
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 | |
AliTrackContainer () | |
AliTrackContainer (const char *name, const char *period="") | |
virtual | ~AliTrackContainer () |
virtual Bool_t | ApplyTrackCuts (const AliVTrack *vp, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptObject (Int_t i, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptObject (const TObject *obj, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptParticle (Int_t i, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptParticle (const AliVParticle *vp, UInt_t &rejectionReason) const |
virtual AliVParticle * | GetParticle (Int_t i=-1) const |
virtual AliVParticle * | GetAcceptParticle (Int_t i=-1) const |
virtual AliVParticle * | GetNextAcceptParticle () |
virtual AliVParticle * | GetNextParticle () |
virtual Bool_t | AcceptTrack (const AliVTrack *vp, UInt_t &rejectionReason) const |
virtual Bool_t | AcceptTrack (Int_t i, UInt_t &rejectionReason) const |
virtual AliVTrack * | GetLeadingTrack (const char *opt="") |
virtual AliVTrack * | GetTrack (Int_t i=-1) const |
virtual AliVTrack * | GetAcceptTrack (Int_t i=-1) const |
virtual AliVTrack * | GetNextAcceptTrack () |
virtual AliVTrack * | GetNextTrack () |
Char_t | GetTrackType (const AliVTrack *track) const |
virtual Bool_t | GetMomentumFromTrack (TLorentzVector &mom, const AliVTrack *track, Double_t mass) const |
virtual Bool_t | GetMomentumFromTrack (TLorentzVector &mom, const AliVTrack *track) const |
virtual Bool_t | GetMomentum (TLorentzVector &mom, Int_t i) const |
virtual Bool_t | GetAcceptMomentum (TLorentzVector &mom, Int_t i) const |
virtual Bool_t | GetNextMomentum (TLorentzVector &mom) |
virtual Bool_t | GetNextAcceptMomentum (TLorentzVector &mom) |
Int_t | GetNTracks () const |
Int_t | GetNAcceptedTracks () |
ETrackFilterType_t | GetTrackFilterType () const |
Char_t | GetTrackType (Int_t i) const |
void | SetArray (AliVEvent *event) |
void | SetTrackFilterType (ETrackFilterType_t f) |
void | SetFilterHybridTracks (Bool_t f) |
void | SetTrackCutsPeriod (const char *period) |
void | AddTrackCuts (AliVCuts *cuts) |
Int_t | GetNumberOfCutObjects () const |
AliVCuts * | GetTrackCuts (Int_t icut) |
void | SetAODFilterBits (UInt_t bits) |
void | AddAODFilterBit (UInt_t bit) |
UInt_t | GetAODFilterBits () const |
void | SetSelectionModeAny () |
void | SetSelectionModeAll () |
void | NextEvent () |
const char * | GetTitle () const |
![]() | |
AliParticleContainer () | |
AliParticleContainer (const char *name) | |
virtual | ~AliParticleContainer () |
virtual Bool_t | ApplyParticleCuts (const AliVParticle *vp, UInt_t &rejectionReason) const |
virtual Bool_t | ApplyKinematicCuts (const AliTLorentzVector &mom, UInt_t &rejectionReason) const |
Double_t | GetParticlePtCut () const |
Double_t | GetParticleEtaMin () const |
Double_t | GetParticleEtaMax () const |
Double_t | GetParticlePhiMin () const |
Double_t | GetParticlePhiMax () const |
void | SetParticlePtCut (Double_t cut) |
void | SetParticleEtaLimits (Double_t min, Double_t max) |
void | SetParticlePhiLimits (Double_t min, Double_t max) |
virtual AliVParticle * | GetLeadingParticle (const char *opt="") |
virtual Bool_t | GetMomentumFromParticle (TLorentzVector &mom, const AliVParticle *part, Double_t mass) const |
virtual Bool_t | GetMomentumFromParticle (TLorentzVector &mom, const AliVParticle *part) const |
Int_t | GetNParticles () const |
Int_t | GetNAcceptedParticles () const |
void | SetMinDistanceTPCSectorEdge (Double_t min) |
void | SetCharge (Short_t c) |
void | SelectHIJING (Bool_t s) |
void | SetGeneratorIndex (Short_t i) |
const char * | GetTitle () const |
accept_iterator | accept_begin () const |
accept_iterator | accept_end () const |
accept_iterator | accept_rbegin () const |
accept_iterator | accept_rend () const |
all_iterator | begin () const |
all_iterator | end () const |
all_iterator | rbegin () const |
all_iterator | rend () const |
![]() | |
AliEmcalContainer () | |
AliEmcalContainer (const char *name) | |
virtual | ~AliEmcalContainer () |
TObject * | operator[] (int index) const |
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 |
Int_t | GetNAcceptEntries () const |
void | ResetCurrentID (Int_t i=-1) |
void | SetArrayName (const char *n) |
void | SetBitMap (UInt_t m) |
void | SetIsParticleLevel (Bool_t b) |
void | SortArray () |
UShort_t | GetRejectionReasonBitPosition (UInt_t rejectionReason) const |
TClass * | GetLoadedClass () |
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) |
void | SetClassName (const char *clname) |
const char * | GetName () const |
void | SetName (const char *n) |
const AliEmcalIterableContainer | all () const |
const AliEmcalIterableContainer | accepted () const |
Static Public Member Functions | |
static void | SetDefTrackCutsPeriod (const char *period) |
static TString | GetDefTrackCutsPeriod () |
![]() | |
static Bool_t | SamePart (const AliVParticle *part1, const AliVParticle *part2, Double_t dist=1.e-4) |
Protected Attributes | |
ETrackFilterType_t | fTrackFilterType |
track filter type More... | |
TObjArray * | fListOfCuts |
list of track cut objects More... | |
Bool_t | fSelectionModeAny |
accept track if any of the cuts is fulfilled More... | |
UInt_t | fAODFilterBits |
track filter bits More... | |
TString | fTrackCutsPeriod |
period string used to generate track cuts More... | |
AliEmcalTrackSelection * | fEmcalTrackSelection |
! track selection object More... | |
TObjArray * | fFilteredTracks |
! tracks filtered using fEmcalTrackSelection More... | |
TArrayC | fTrackTypes |
! track types More... | |
![]() | |
Double_t | fMinDistanceTPCSectorEdge |
require minimum distance to edge of TPC sector edge More... | |
Short_t | fCharge |
select particles with charge=fCharge More... | |
Short_t | fGeneratorIndex |
select MC particles with generator index (default = -1 = switch off selection) More... | |
![]() | |
TString | fName |
object name More... | |
TString | fClArrayName |
name of branch More... | |
TString | fBaseClassName |
name of the base class that this container can handle More... | |
Bool_t | fIsParticleLevel |
whether or not it is a particle level object collection More... | |
UInt_t | fBitMap |
bitmap mask More... | |
Double_t | fMinPt |
Min. cut on particle \( p_{t} \). More... | |
Double_t | fMaxPt |
Max. cut on particle \( p_{t} \). More... | |
Double_t | fMaxE |
Min. cut on particle energy. More... | |
Double_t | fMinE |
Max. cut on particle energy. More... | |
Double_t | fMinEta |
Min. cut on particle \( \eta \). More... | |
Double_t | fMaxEta |
Max. cut on particle \( \eta \). More... | |
Double_t | fMinPhi |
Min. cut on particle \( \phi \). More... | |
Double_t | fMaxPhi |
Max. cut on particle \( \phi \). More... | |
Int_t | fMinMCLabel |
minimum MC label More... | |
Int_t | fMaxMCLabel |
maximum MC label More... | |
Double_t | fMassHypothesis |
if < 0 it will use a PID mass when available More... | |
TClonesArray * | fClArray |
! Pointer to array in input event More... | |
Int_t | fCurrentID |
! current ID for automatic loops More... | |
AliNamedArrayI * | fLabelMap |
! Label-Index map More... | |
Double_t | fVertex [3] |
! event vertex array More... | |
TClass * | fLoadedClass |
! Class of the objects contained in the TClonesArray More... | |
Static Protected Attributes | |
static TString | fgDefTrackCutsPeriod = "" |
! default period string used to generate track cuts More... | |
Private Member Functions | |
AliTrackContainer (const AliTrackContainer &obj) | |
AliParticleContainer & | operator= (const AliTrackContainer &other) |
Container with name, TClonesArray and cuts for particles.
Definition at line 24 of file AliTrackContainer.h.
Definition at line 27 of file AliTrackContainer.h.
Status of a track after track selection.
Definition at line 33 of file AliTrackContainer.h.
AliTrackContainer::AliTrackContainer | ( | ) |
Default constructor.
Definition at line 36 of file AliTrackContainer.cxx.
AliTrackContainer::AliTrackContainer | ( | const char * | name, |
const char * | period = "" |
||
) |
Standard constructor.
[in] | name | Name of the container (= name of the array operated on) |
[in] | period | Name of the period, needed for track cut selection |
Definition at line 57 of file AliTrackContainer.cxx.
|
inlinevirtual |
Definition at line 43 of file AliTrackContainer.h.
|
private |
|
inlinevirtual |
Reimplemented from AliParticleContainer.
Definition at line 46 of file AliTrackContainer.h.
|
inlinevirtual |
Reimplemented from AliParticleContainer.
Definition at line 47 of file AliTrackContainer.h.
|
inlinevirtual |
Perform full particle selection consisting of kinematical and particle property selection on the \( i^{th} \) particle in the array. In case the particle is rejected, the reason for the rejection is encoded in the bitmap rejectionReason.
[in] | i | Index of the particle to select. |
[out] | rejectionReason | Bitmap with the reason why the particle was accepted. Note: The value is not set to 0 in the function in order to combine the information with other selection steps. |
Reimplemented from AliParticleContainer.
Definition at line 48 of file AliTrackContainer.h.
|
inlinevirtual |
Perform full particle selection consisting of kinematical and particle property selection on the particle provided. In case the particle is rejected, the reason for the rejection is encoded in the bitmap rejectionReason.
vp | Particle for which to perform the selection |
rejectionReason | Bitmap with the reason why the particle was accepted. Note: The value is not set to 0 in the function in order to combine the information with other selection steps. |
Reimplemented from AliParticleContainer.
Definition at line 49 of file AliTrackContainer.h.
|
virtual |
Perform full track selection for the particle vp, consisting of kinematical track selection and track quality cut provided by the cuts assigned to this container
[in] | vp | Track to be checked |
[in] | rejectionReason | Bitmap encoding the reason why the track was rejected. Note: The variable is not set to NULL inside this function before changing its value. |
Definition at line 470 of file AliTrackContainer.cxx.
Referenced by AcceptObject(), AcceptParticle(), and GetAcceptTrack().
|
virtual |
Perform full track selection for the particle in the container stored at position i, consisting of kinematical track selection and track quality cut provided by the cuts assigned to this container
[in] | i | Index of the track to check |
[in] | rejectionReason | Bitmap encoding the reason why the track was rejected. Note: The variable is not set to NULL inside this function before changing its value. |
Definition at line 492 of file AliTrackContainer.cxx.
|
inline |
Definition at line 83 of file AliTrackContainer.h.
void AliTrackContainer::AddTrackCuts | ( | AliVCuts * | cuts | ) |
Add new track cuts to the container.
[in] | cuts | Cuts to be added |
Definition at line 521 of file AliTrackContainer.cxx.
|
virtual |
Perform track quality selection of the track vp using the track cuts assigned to this container.
[in] | vp | Track to be checked |
[out] | rejectionReason | Bitmap encoding the reason why the track was rejected. Note: The variable is not set to NULL inside this function before changing its value. |
Definition at line 512 of file AliTrackContainer.cxx.
Referenced by AcceptTrack().
|
virtual |
Fills a TLorentzVector with the monentum infomation of the \( i^{th} \) accepted particle in the container, using a global mass hypothesis. In case the provided index is out of range, or the particle under the index is not accepted, false is returned as return value.
[out] | mom | Momentum vector of the accepted particle |
[in] | i | Index to check |
Reimplemented from AliParticleContainer.
Definition at line 399 of file AliTrackContainer.cxx.
|
inlinevirtual |
Get \( i^{th} \) particle in the container if it is accepted. In case it is not accepted a nullpointer is returned.
[in] | i | Index of the particle |
Reimplemented from AliParticleContainer.
Definition at line 51 of file AliTrackContainer.h.
|
virtual |
Get track at index in the container if accepted by the track selection provided
[in] | i | Index of the particle in the container |
Definition at line 207 of file AliTrackContainer.cxx.
Referenced by GetAcceptMomentum(), GetAcceptParticle(), and GetNextAcceptTrack().
|
inline |
Definition at line 84 of file AliTrackContainer.h.
|
inlinestatic |
Definition at line 92 of file AliTrackContainer.h.
|
inlinevirtual |
Definition at line 56 of file AliTrackContainer.h.
|
virtual |
Fills a TLorentzVector with the momentum information of the \( i^{th} \) particle in the container, using a global mass hypothesis. In case the provided index is out of range, false is returned as return value.
[out] | mom | Momentum vector of the \( i^{th} \) particle in the array |
[in] | i | Index of the particle to check |
Reimplemented from AliParticleContainer.
Definition at line 331 of file AliTrackContainer.cxx.
Referenced by AcceptTrack().
|
virtual |
Retrieve momentum information of a track and fill a TLorentzVector with it. In case the optional parameter mass is provided, it is used as mass hypothesis, otherwise the mass hypothesis from the particle itself is used.
[out] | mom | Momentum vector to be filled |
[in] | track | Track from which the momentum information is obtained. |
[in] | mass | (Optional) Mass hypothesis |
Definition at line 282 of file AliTrackContainer.cxx.
Referenced by AcceptTrack(), and GetMomentumFromTrack().
|
virtual |
Fills a TLorentzVector with the momentum information of the track provided under a global mass hypothesis.
[out] | mom | Momentum vector of the particle provided |
[in] | track | Track from which to obtain the momentum information |
Definition at line 317 of file AliTrackContainer.cxx.
|
inline |
Definition at line 69 of file AliTrackContainer.h.
|
virtual |
Fills a TLorentzVector with the monentum infomation of the next accepted particle in the container, using a global mass hypothesis. In case the iteration reached the end of the array, false is returned as return value.
[out] | mom | Momentum vector of the next particle in the array |
Reimplemented from AliParticleContainer.
Definition at line 435 of file AliTrackContainer.cxx.
|
inlinevirtual |
Iterator over accepted particles in the container. Get the next accepted particle in the array. If the end is reached, NULL is returned.
Reimplemented from AliParticleContainer.
Definition at line 52 of file AliTrackContainer.h.
|
virtual |
Get next accepted particle in the container selected using the track cuts provided.
Definition at line 225 of file AliTrackContainer.cxx.
Referenced by AliEmcalTrackingQATask::FillHistograms(), GetNextAcceptMomentum(), and GetNextAcceptParticle().
|
virtual |
Fills a TLorentzVector with the momentum information of the next particle in the container, using a global mass hypothesis. In case the iterator reached the end of the array, false is returned as return value.
[out] | mom | Momentum vector of the next particle |
Reimplemented from AliParticleContainer.
Definition at line 365 of file AliTrackContainer.cxx.
|
inlinevirtual |
Iterator over all particles in the container. Get the next particle in the array. If the end is reached, NULL is returned.
Reimplemented from AliParticleContainer.
Definition at line 53 of file AliTrackContainer.h.
|
virtual |
Get next particle in the container
Definition at line 243 of file AliTrackContainer.cxx.
Referenced by GetNextMomentum(), and GetNextParticle().
|
inline |
Definition at line 68 of file AliTrackContainer.h.
Int_t AliTrackContainer::GetNumberOfCutObjects | ( | ) | const |
Get number of track cut objects assigned to this container.
Definition at line 534 of file AliTrackContainer.cxx.
|
inlinevirtual |
Get \( i^{th} \) particle in the container.
[in] | i | Index of the particle to access |
Reimplemented from AliParticleContainer.
Definition at line 50 of file AliTrackContainer.h.
const char * AliTrackContainer::GetTitle | ( | ) | const |
Build title of the container consisting of the container name and a string encoding the minimum \( p_{t} \) cut applied in the kinematic track selection.
Definition at line 560 of file AliTrackContainer.cxx.
|
virtual |
Get track at index in the container
[in] | i | Index of the particle in the container |
Definition at line 192 of file AliTrackContainer.cxx.
Referenced by AcceptTrack(), GetAcceptTrack(), GetMomentum(), GetNextTrack(), and GetParticle().
AliVCuts * AliTrackContainer::GetTrackCuts | ( | Int_t | icut | ) |
Get the cut object at index (icut) assigned to this container.
[in] | icut | Index of the cut in the container |
Definition at line 545 of file AliTrackContainer.cxx.
|
inline |
Definition at line 70 of file AliTrackContainer.h.
Char_t AliTrackContainer::GetTrackType | ( | const AliVTrack * | track | ) | const |
Retrieve the track type using the IndexOf method of the TClonesArray to retrieve the index of the provided track.
track | Track for which the type is requested. |
Definition at line 262 of file AliTrackContainer.cxx.
Referenced by AliEmcalTrackingQATask::FillHistograms(), and GetMomentumFromTrack().
|
inline |
Definition at line 71 of file AliTrackContainer.h.
|
virtual |
Preparation for the next event: Run the track selection of all bit and store the pointers to selected tracks in a separate array.
Reimplemented from AliEmcalContainer.
Definition at line 150 of file AliTrackContainer.cxx.
|
private |
|
inline |
Definition at line 82 of file AliTrackContainer.h.
|
virtual |
Get array from event. Also creating the virtual track selection for the period provided in the constructor.
[in] | event | Event from which the data is read |
Reimplemented from AliEmcalContainer.
Definition at line 84 of file AliTrackContainer.cxx.
|
inlinestatic |
Definition at line 91 of file AliTrackContainer.h.
|
inline |
Definition at line 76 of file AliTrackContainer.h.
|
inline |
Definition at line 87 of file AliTrackContainer.h.
|
inline |
Definition at line 86 of file AliTrackContainer.h.
|
inline |
Definition at line 78 of file AliTrackContainer.h.
|
inline |
Definition at line 75 of file AliTrackContainer.h.
|
protected |
track filter bits
Definition at line 102 of file AliTrackContainer.h.
Referenced by AddAODFilterBit(), GetAODFilterBits(), SetAODFilterBits(), and SetArray().
|
protected |
! track selection object
Definition at line 104 of file AliTrackContainer.h.
Referenced by NextEvent(), and SetArray().
|
protected |
! tracks filtered using fEmcalTrackSelection
Definition at line 105 of file AliTrackContainer.h.
Referenced by GetTrack(), GetTrackType(), and NextEvent().
|
staticprotected |
! default period string used to generate track cuts
Definition at line 97 of file AliTrackContainer.h.
Referenced by AliTrackContainer(), GetDefTrackCutsPeriod(), and SetDefTrackCutsPeriod().
|
protected |
list of track cut objects
Definition at line 100 of file AliTrackContainer.h.
Referenced by AddTrackCuts(), GetNumberOfCutObjects(), GetTrackCuts(), and SetArray().
|
protected |
accept track if any of the cuts is fulfilled
Definition at line 101 of file AliTrackContainer.h.
Referenced by SetArray(), SetSelectionModeAll(), and SetSelectionModeAny().
|
protected |
period string used to generate track cuts
Definition at line 103 of file AliTrackContainer.h.
Referenced by AliTrackContainer(), SetArray(), and SetTrackCutsPeriod().
|
protected |
track filter type
Definition at line 99 of file AliTrackContainer.h.
Referenced by GetAcceptMomentum(), GetMomentum(), GetMomentumFromTrack(), GetNextAcceptMomentum(), GetNextMomentum(), GetTrackFilterType(), NextEvent(), SetArray(), SetFilterHybridTracks(), and SetTrackFilterType().
|
protected |
! track types
Definition at line 106 of file AliTrackContainer.h.
Referenced by GetAcceptMomentum(), GetMomentum(), GetNextAcceptMomentum(), GetNextMomentum(), GetTrackType(), and NextEvent().