]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - CORRFW/AliCFTrackKineCuts.h
Split: removed dirs now in AliPhysics
[u/mrichter/AliRoot.git] / CORRFW / AliCFTrackKineCuts.h
diff --git a/CORRFW/AliCFTrackKineCuts.h b/CORRFW/AliCFTrackKineCuts.h
deleted file mode 100644 (file)
index 3dd8a10..0000000
+++ /dev/null
@@ -1,162 +0,0 @@
-/**************************************************************************
- * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
- *                                                                        *
- * Author: The ALICE Off-line Project.                                    *
- * Contributors are mentioned in the code where appropriate.              *
- *                                                                        *
- * Permission to use, copy, modify and distribute this software and its   *
- * documentation strictly for non-commercial purposes is hereby granted   *
- * without fee, provided that the above copyright notice appears in all   *
- * copies and that both the copyright notice and this permission notice   *
- * appear in the supporting documentation. The authors make no claims     *
- * about the suitability of this software for any purpose. It is          *
- * provided "as is" without express or implied warranty.                  *
- **************************************************************************/
-
-// The class AliCFTrackKineCuts is designed to select both generated 
-// and reconstructed tracks of a given range in momentum space,
-// electric charge and azimuthal emission angle phi 
-// and to provide corresponding QA histograms.
-// This class inherits from the Analysis' Framework abstract base class
-// AliAnalysisCuts and is a part of the Correction Framework.
-// This class acts on single, generated and reconstructed tracks, it is 
-// applicable on ESD and AOD data.
-// It mainly consists of a IsSelected function that returns a boolean.
-// This function checks whether the considered track passes a set of cuts:
-// - total momentum
-// - pt
-// - px
-// - py
-// - pz
-// - eta
-// - rapidity
-// - phi
-// - charge
-// - is charged
-//
-// The cut values for these cuts are set with the corresponding set functions.
-// All cut classes provided by the correction framework are supposed to be
-// added in the Analysis Framwork's class AliAnalysisFilter and applied by
-// the filter via a loop.
-//
-// author: I. Kraus (Ingrid.Kraus@cern.ch)
-// idea taken form
-// AliESDtrackCuts writte by Jan Fiete Grosse-Oetringhaus and
-// AliRsnDaughterCut class written by A. Pulvirenti.
-
-#ifndef ALICFTRACKKINECUTS_H
-#define ALICFTRACKKINECUTS_H
-
-#include "AliCFCutBase.h"
-
-class TH2 ;
-class TBits;
-class AliVParticle;
-
-class AliCFTrackKineCuts : public AliCFCutBase
-{
- public :
-  AliCFTrackKineCuts() ;
-  AliCFTrackKineCuts(Char_t* name, Char_t* title) ;
-  AliCFTrackKineCuts(const AliCFTrackKineCuts& c) ;
-  AliCFTrackKineCuts& operator=(const AliCFTrackKineCuts& c) ;
-  ~AliCFTrackKineCuts();
-  void Copy(TObject &c) const;
-
-  Bool_t IsSelected(TObject* obj);
-  Bool_t IsSelected(TList* /*list*/) {return kTRUE;}
-
-  // cut value setter
-  void SetMomentumRange(Double_t momentumMin=0., Double_t momentumMax=1e99) {fMomentumMin=momentumMin; fMomentumMax=momentumMax;}
-  void SetPtRange(Double_t ptMin=0., Double_t ptMax=1e99) {fPtMin=ptMin; fPtMax=ptMax;}
-  void SetPxRange(Double_t pxMin=-1e99, Double_t pxMax=1e99) {fPxMin=pxMin; fPxMax=pxMax;}
-  void SetPyRange(Double_t pyMin=-1e99, Double_t pyMax=1e99) {fPyMin=pyMin; fPyMax=pyMax;}
-  void SetPzRange(Double_t pzMin=-1e99, Double_t pzMax=1e99) {fPzMin=pzMin; fPzMax=pzMax;}
-  void SetEtaRange(Double_t etaMin=-1e99, Double_t etaMax=1e99) {fEtaMin=etaMin; fEtaMax=etaMax;}
-  void SetRapidityRange(Double_t rapMin=-1e99, Double_t rapMax=1e99) {fRapidityMin=rapMin; fRapidityMax=rapMax;} 
-  void SetPhiRange(Double_t phiMin=-10., Double_t phiMax=10.) {fPhiMin=phiMin; fPhiMax=phiMax;}
-  void SetChargeRec(Double_t charge=10.) {fCharge=charge;}
-  void SetChargeMC(Double_t charge=10.) {fCharge=charge*3.;}
-  void SetRequireIsCharged(Bool_t b=kFALSE) {fRequireIsCharged=b;}
-
-  // QA histograms
-  void DrawHistograms(Bool_t drawLogScale=kTRUE);
-  void SaveHistograms(const Char_t* dir = 0);
-  void AddQAHistograms(TList *qaList);
-  // QA histogram setter
-  // please use indices from the enumeration below
-  void SetHistogramBins(Int_t index, Int_t nbins, Double_t *bins);
-  void SetHistogramBins(Int_t index, Int_t nbins, Double_t xmin, Double_t xmax);
-
-  // indeces/counters for single selections
-  enum { 
-    kCutP=0,   // momentum
-    kCutPt,    // pt
-    kCutPx,    // px
-    kCutPy,    // py
-    kCutPz,    // pz
-    kCutRapidity,// raptidity
-    kCutEta,   // eta
-    kCutPhi,   // phi
-    kCutCharge,        // charge
-    kNCuts=10, // number of single selections
-    kNStepQA=2,        // number of QA steps (before/after the cuts)
-    kNHist=9   // number of QA histograms
-  };
-
- private:
-  void SelectionBitMap(TObject* obj);
-  void DefineHistograms();             // books histograms and TList
-  void Initialise();                   // sets everything to 0
-  void FillHistograms(TObject* obj, Bool_t b);
-                                       // Fills histograms before and after cuts
-  Double_t fMomentumMin ;              // lower limit of accepted total momentum range
-  Double_t fMomentumMax ;              // upper limit of accepted total momentum range
-  Double_t fPtMin ;                    // lower limit of accepted transverse momentum range
-  Double_t fPtMax ;                    // upper limit of accepted transverse momentum range
-  Double_t fPxMin ;                    // lower limit of accepted px range
-  Double_t fPxMax ;                    // upper limit of accepted px range
-  Double_t fPyMin ;                    // lower limit of accepted py range
-  Double_t fPyMax ;                    // upper limit of accepted py range
-  Double_t fPzMin ;                    // lower limit of accepted pz range
-  Double_t fPzMax ;                    // upper limit of accepted pz range
-  Double_t fEtaMin ;                   // lower limit of accepted pseudo-rapidity range
-  Double_t fEtaMax ;                   // upper limit of accepted pseudo-rapidity range
-  Double_t fRapidityMin ;              // lower limit of accepted rapidity range
-  Double_t fRapidityMax ;              // upper limit of accepted rapidity range
-  Double_t fPhiMin ;                   // lower limit of accepted phi range
-  Double_t fPhiMax ;                   // upper limit of accepted phi range
-  Double_t fCharge ;                   // electric charge
-  Bool_t  fRequireIsCharged;           // accept charged particles only
-
-  TH1F* fhCutStatistics;               // Histogram: statistics of what cuts the tracks did not survive
-  TH2F* fhCutCorrelation;              // Histogram: 2d statistics plot
-
-  TH1F* fhQA[kNHist][kNStepQA];                // QA Histograms
-  TBits *fBitmap ;                     // stores single selection decisions
-
-  // QA histogram setters
-  Int_t fhNBinsMomentum;               // number of bins+1: momentum
-  Int_t fhNBinsPt;                     // number of bins+1: pt
-  Int_t fhNBinsPx;                     // number of bins+1: px
-  Int_t fhNBinsPy;                     // number of bins+1: py
-  Int_t fhNBinsPz;                     // number of bins+1: pz
-  Int_t fhNBinsEta;                    // number of bins+1: eta
-  Int_t fhNBinsRapidity;               // number of bins+1: rapidity
-  Int_t fhNBinsPhi;                    // number of bins+1: phi
-  Int_t fhNBinsCharge;                 // number of bins+1: charge
-  
-  Double_t *fhBinLimMomentum;  //[fhNBinsMomentum] bin limits: momentum
-  Double_t *fhBinLimPt;                //[fhNBinsPt] bin limits: pt
-  Double_t *fhBinLimPx;                //[fhNBinsPx] bin limits: px
-  Double_t *fhBinLimPy;                //[fhNBinsPy] bin limits: py
-  Double_t *fhBinLimPz;                //[fhNBinsPz] bin limits: pz
-  Double_t *fhBinLimEta;       //[fhNBinsEta] bin limits: eta
-  Double_t *fhBinLimRapidity;  //[fhNBinsRapidity] bin limits: rapidity
-  Double_t *fhBinLimPhi;       //[fhNBinsPhi] bin limits: phi
-  Double_t *fhBinLimCharge;    //[fhNBinsCharge] bin limits: charge
-
-  ClassDef(AliCFTrackKineCuts,2);
-};
-
-#endif