1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
17 ///////////////////////////////////////////////////////////////////////////
18 // ---- CORRECTION FRAMEWORK ----
19 // AliCFAcceptanceCuts implementation
20 // Class to cut on the number of AliTrackReference's
22 ///////////////////////////////////////////////////////////////////////////
23 // author : R. Vernet (renaud.vernet@cern.ch)
24 ///////////////////////////////////////////////////////////////////////////
27 #ifndef ALICFACCEPTANCECUTS_H
28 #define ALICFACCEPTANCECUTS_H
30 #include "AliCFCutBase.h"
37 class AliCFAcceptanceCuts : public AliCFCutBase
40 AliCFAcceptanceCuts() ;
41 AliCFAcceptanceCuts(const Char_t* name, const Char_t* title) ;
42 AliCFAcceptanceCuts(const AliCFAcceptanceCuts& c) ;
43 AliCFAcceptanceCuts& operator=(const AliCFAcceptanceCuts& c) ;
44 virtual ~AliCFAcceptanceCuts() { };
45 virtual Bool_t IsSelected(TObject* obj) ;
46 virtual Bool_t IsSelected(TList* /*list*/) {return kTRUE;}
47 virtual void SetMCEventInfo(const TObject* mcInfo) ;
48 void SetMinNHitITS (Int_t nhits) {fMinNHitITS=nhits;}
49 void SetMinNHitTPC (Int_t nhits) {fMinNHitTPC=nhits;}
50 void SetMinNHitTRD (Int_t nhits) {fMinNHitTRD=nhits;}
51 void SetMinNHitTOF (Int_t nhits) {fMinNHitTOF=nhits;}
52 void SetMinNHitMUON(Int_t nhits) {fMinNHitMUON=nhits;}
60 kNCuts, // number of single selections
61 kNStepQA=2 // number of QA steps (before/after the cuts)
65 AliMCEvent *fMCInfo; // pointer to MC Information
66 Int_t fMinNHitITS ; // min number of track references in ITS
67 Int_t fMinNHitTPC ; // min number of track references in TPC
68 Int_t fMinNHitTRD ; // min number of track references in TRD
69 Int_t fMinNHitTOF ; // min number of track references in TOF
70 Int_t fMinNHitMUON ; // min number of track references in MUON
73 TH1F* fhCutStatistics; // Histogram: statistics of what cuts the tracks did not survive
74 TH2F* fhCutCorrelation; // Histogram: 2d statistics plot
75 TH1F* fhQA[kNCuts][kNStepQA]; // QA Histograms
76 TBits* fBitmap ; // stores single selection decisions
77 void SelectionBitMap(TObject* obj);
78 void FillHistograms(TObject* obj, Bool_t afterCuts);
79 void AddQAHistograms(TList *qaList) ;
80 void DefineHistograms();
82 ClassDef(AliCFAcceptanceCuts,1);