1 ///////////////////////////////////////////////////////////////////////////
3 // AliFemtoMCTrackCut: A basic track cut that used information from //
4 // ALICE MC to accept or reject the track. //
5 // Enables the selection on charge, transverse momentum, rapidity, //
6 // and PDG of the particle //
7 // Authors: Malgorzata Janik (WUT) majanik@cern.ch //
8 // Lukasz Graczykowski (WUT) lgraczyk@cern.ch //
10 ///////////////////////////////////////////////////////////////////////////
12 #ifndef ALIFEMTOMCTRACKCUT_H
13 #define ALIFEMTOMCTRACKCUT_H
16 #include "AliFemtoTrackCut.h"
18 class AliFemtoMCTrackCut : public AliFemtoTrackCut
23 virtual ~AliFemtoMCTrackCut();
25 virtual bool Pass(const AliFemtoTrack* aTrack);
27 virtual AliFemtoString Report();
28 virtual TList *ListSettings();
29 virtual AliFemtoParticleType Type(){return hbtTrack;}
31 void SetPt(const float& lo, const float& hi);
32 void SetRapidity(const float& lo, const float& hi);
33 void SetEta(const float& lo, const float& hi);
34 void SetCharge(const int& ch);
35 void SetPDG(const int& pdg);
36 void SetLabel(const bool& flag);
39 private: // here are the quantities I want to cut on...
41 int fCharge; // particle charge
42 float fPt[2]; // bounds for transverse momentum
43 float fRapidity[2]; // bounds for rapidity
44 float fEta[2]; // bounds for pseudorapidity
45 bool fLabel; // if true label<0 will not pass throught
46 int fPDGcode; // PDG code of the particle
48 long fNTracksPassed; // passed tracks count
49 long fNTracksFailed; // failed tracks count
54 ClassDef(AliFemtoMCTrackCut, 1)
59 inline void AliFemtoMCTrackCut::SetPt(const float& lo, const float& hi){fPt[0]=lo; fPt[1]=hi;}
60 inline void AliFemtoMCTrackCut::SetRapidity(const float& lo,const float& hi){fRapidity[0]=lo; fRapidity[1]=hi;}
61 inline void AliFemtoMCTrackCut::SetEta(const float& lo,const float& hi){fEta[0]=lo; fEta[1]=hi;}
62 inline void AliFemtoMCTrackCut::SetCharge(const int& ch){fCharge = ch;}
63 inline void AliFemtoMCTrackCut::SetPDG(const int& pdg){fPDGcode = pdg;}
64 inline void AliFemtoMCTrackCut::SetLabel(const bool& flag){fLabel=flag;}