ROOT logo
#ifndef ALIKINETRACKCUTS_H
#define ALIKINETRACKCUTS_H

/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

#include "AliAnalysisCuts.h"

class  TObject;
class  TList;

class AliKineTrackCuts : public AliAnalysisCuts
{

public:
                      AliKineTrackCuts(const Char_t* name = "AliKineTrackCuts", const Char_t* title = "");
  virtual            ~AliKineTrackCuts(){;}
  
              Bool_t  IsSelected(TObject* obj);
	      Bool_t  IsSelected(TList* /*list*/) {return kTRUE;}
            
              void    SetFinalParticles( Bool_t val=kTRUE )          { fOnlyFinalParticles = val; }
              void    SetPrimaryParticles( Bool_t val=kTRUE )        { fOnlyPrimary = val; }
  // track kinematic cut setters
	      void    SetPRange(Float_t r1=0, Float_t r2=1e10)       { fPMin=r1;   fPMax=r2;}
              void    SetPtRange(Float_t r1=0, Float_t r2=1e10)      { fPtMin=r1;  fPtMax=r2;}
              void    SetPxRange(Float_t r1=-1e10, Float_t r2=1e10)  { fPxMin=r1;  fPxMax=r2;}
              void    SetPyRange(Float_t r1=-1e10, Float_t r2=1e10)  { fPyMin=r1;  fPyMax=r2;}
              void    SetPzRange(Float_t r1=-1e10, Float_t r2=1e10)  { fPzMin=r1;  fPzMax=r2;}
              void    SetEtaRange(Float_t r1=-1e10, Float_t r2=1e10) { fEtaMin=r1; fEtaMax=r2;}
              void    SetRapRange(Float_t r1=-1e10, Float_t r2=1e10) { fRapMin=r1; fRapMax=r2;}
                  
protected:        
                  
           Bool_t    fOnlyFinalParticles;   // true => skip part with GetStatusCode()!=1
           Bool_t    fOnlyPrimary;          // Only Primary Particles
  // kinematics cuts
           Float_t   fPMin,   fPMax;        // definition of the range of the P
           Float_t   fPtMin,  fPtMax;       // definition of the range of the Pt
           Float_t   fPxMin,  fPxMax;       // definition of the range of the Px
           Float_t   fPyMin,  fPyMax;       // definition of the range of the Py
           Float_t   fPzMin,  fPzMax;       // definition of the range of the Pz
           Float_t   fEtaMin, fEtaMax;      // definition of the range of the eta
           Float_t   fRapMin, fRapMax;      // definition of the range of the y
  
  
  ClassDef(AliKineTrackCuts, 1)
};


#endif
 AliKineTrackCuts.h:1
 AliKineTrackCuts.h:2
 AliKineTrackCuts.h:3
 AliKineTrackCuts.h:4
 AliKineTrackCuts.h:5
 AliKineTrackCuts.h:6
 AliKineTrackCuts.h:7
 AliKineTrackCuts.h:8
 AliKineTrackCuts.h:9
 AliKineTrackCuts.h:10
 AliKineTrackCuts.h:11
 AliKineTrackCuts.h:12
 AliKineTrackCuts.h:13
 AliKineTrackCuts.h:14
 AliKineTrackCuts.h:15
 AliKineTrackCuts.h:16
 AliKineTrackCuts.h:17
 AliKineTrackCuts.h:18
 AliKineTrackCuts.h:19
 AliKineTrackCuts.h:20
 AliKineTrackCuts.h:21
 AliKineTrackCuts.h:22
 AliKineTrackCuts.h:23
 AliKineTrackCuts.h:24
 AliKineTrackCuts.h:25
 AliKineTrackCuts.h:26
 AliKineTrackCuts.h:27
 AliKineTrackCuts.h:28
 AliKineTrackCuts.h:29
 AliKineTrackCuts.h:30
 AliKineTrackCuts.h:31
 AliKineTrackCuts.h:32
 AliKineTrackCuts.h:33
 AliKineTrackCuts.h:34
 AliKineTrackCuts.h:35
 AliKineTrackCuts.h:36
 AliKineTrackCuts.h:37
 AliKineTrackCuts.h:38
 AliKineTrackCuts.h:39
 AliKineTrackCuts.h:40
 AliKineTrackCuts.h:41
 AliKineTrackCuts.h:42
 AliKineTrackCuts.h:43
 AliKineTrackCuts.h:44
 AliKineTrackCuts.h:45
 AliKineTrackCuts.h:46
 AliKineTrackCuts.h:47
 AliKineTrackCuts.h:48
 AliKineTrackCuts.h:49
 AliKineTrackCuts.h:50
 AliKineTrackCuts.h:51