]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWG4/AliFidutialCut.h
Updated example macro for TPC calibration (Marian)
[u/mrichter/AliRoot.git] / PWG4 / AliFidutialCut.h
CommitLineData
d92b41ad 1#ifndef ALIFIDUTIALCUT_H
2#define ALIFIDUTIALCUT_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5/* $Id: $ */
6
7/* History of cvs commits:
8 *
9 * $Log$
10 *
11 *
12 */
13
14//_________________________________________________________________________
15// Class for track/cluster acceptance selection
16// Selection in Central barrel, EMCAL and PHOS
17//
18//*-- Author: Gustavo Conesa (INFN-LNF)
19
20// --- ROOT system ---
21#include <TObject.h>
22#include <TArrayF.h>
23
24 class TString ;
25class Riostream ;
26class TLorentzVector ;
27
28//--- AliRoot system ---
29
30class AliLog ;
31
32class AliFidutialCut : public TObject {
33
34public:
35
36 AliFidutialCut() ; // ctor
37 AliFidutialCut(const AliFidutialCut & g) ; // cpy ctor
38 AliFidutialCut & operator = (const AliFidutialCut & g) ;//cpy assignment
39 virtual ~AliFidutialCut() ;//virtual dtor
40
41 void InitParameters();
42
43 void Print(const Option_t * opt)const;
44
45 Bool_t IsInFidutialCut(TLorentzVector l, TString det) const ;
46
47 void DoCTSFidutialCut(Bool_t b) {fCTSFidutialCut = b; }
48 void DoEMCALFidutialCut(Bool_t b) {fEMCALFidutialCut = b; }
49 void DoPHOSFidutialCut(Bool_t b) {fPHOSFidutialCut = b; }
50
51 Bool_t GetCTSFidutialCutStatus() const {return fCTSFidutialCut ; }
52 Bool_t GetEMCALFidutialCut() const {return fEMCALFidutialCut ; }
53 Bool_t GetPHOSFidutialCutStatus() const {return fPHOSFidutialCut ; }
54
55 void SetSimpleCTSFidutialCut(const Float_t abseta, const Float_t phimin, const Float_t phimax) ;
56 void SetSimpleEMCALFidutialCut(const Float_t abseta, const Float_t phimin, const Float_t phimax) ;
57 void SetSimplePHOSFidutialCut(const Float_t abseta, const Float_t phimin, const Float_t phimax) ;
58
59 void AddCTSFidCutMaxEtaArray(TArrayF & array)
60 { fCTSFidCutMaxEta = new TArrayF(array) ; }
61 TArrayF * GetCTSFidCutMaxEtaArray() const {return fCTSFidCutMaxEta;}
62
63 void AddCTSFidCutMaxPhiArray(TArrayF & array)
64 { fCTSFidCutMaxPhi = new TArrayF(array) ; }
65 TArrayF * GetCTSFidCutMaxPhiArray() const {return fCTSFidCutMaxPhi;}
66
67 void AddCTSFidCutMinEtaArray(TArrayF & array)
68 { fCTSFidCutMinEta = new TArrayF(array) ; }
69 TArrayF * GetCTSFidCutMinEtaArray() const {return fCTSFidCutMinEta;}
70
71 void AddCTSFidCutMinPhiArray(TArrayF & array)
72 { fCTSFidCutMinPhi = new TArrayF(array) ; }
73 TArrayF * GetCTSFidCutMinPhiArray() const {return fCTSFidCutMinPhi;}
74
75 void AddEMCALFidCutMaxEtaArray(TArrayF & array)
76 { fEMCALFidCutMaxEta = new TArrayF(array) ; }
77 TArrayF * GetEMCALFidCutMaxEtaArray() const {return fEMCALFidCutMaxEta;}
78
79 void AddEMCALFidCutMaxPhiArray(TArrayF & array)
80 { fEMCALFidCutMaxPhi = new TArrayF(array) ; }
81 TArrayF * GetEMCALFidCutMaxPhiArray() const {return fEMCALFidCutMaxPhi;}
82
83 void AddEMCALFidCutMinEtaArray(TArrayF & array)
84 { fEMCALFidCutMinEta = new TArrayF(array) ; }
85 TArrayF * GetEMCALFidCutMinEtaArray() const {return fEMCALFidCutMinEta;}
86
87 void AddEMCALFidCutMinPhiArray(TArrayF & array)
88 { fEMCALFidCutMinPhi = new TArrayF(array) ; }
89 TArrayF * GetEMCALFidCutMinPhiArray() const {return fEMCALFidCutMinPhi;}
90
91 void AddPHOSFidCutMaxEtaArray(TArrayF & array)
92 { fPHOSFidCutMaxEta = new TArrayF(array) ; }
93 TArrayF * GetPHOSFidCutMaxEtaArray() const {return fPHOSFidCutMaxEta;}
94
95 void AddPHOSFidCutMaxPhiArray(TArrayF & array)
96 { fPHOSFidCutMaxPhi = new TArrayF(array) ; }
97 TArrayF * GetPHOSFidCutMaxPhiArray() const {return fPHOSFidCutMaxPhi;}
98
99 void AddPHOSFidCutMinEtaArray(TArrayF & array)
100 { fPHOSFidCutMinEta = new TArrayF(array) ; }
101 TArrayF * GetPHOSFidCutMinEtaArray() const {return fPHOSFidCutMinEta;}
102
103 void AddPHOSFidCutMinPhiArray(TArrayF & array)
104 { fPHOSFidCutMinPhi = new TArrayF(array) ; }
105 TArrayF * GetPHOSFidCutMinPhiArray() const {return fPHOSFidCutMinPhi;}
106
107
108
109 protected:
110
111 //Detector acceptance cuts
112 Bool_t fEMCALFidutialCut ; // Apply fidutial cuts to EMCAL clusters
113 Bool_t fPHOSFidutialCut ;// Apply fidutial cuts to PHOS clusters
114 Bool_t fCTSFidutialCut ;//Apply fidutial cuts to CTS tracks
115
116 TArrayF * fCTSFidCutMinEta ; //Take particles in CTS with eta > fCTSFidCutMinEta
117 TArrayF * fCTSFidCutMinPhi ; //Take particles in CTS with phi > fCTSFidCutMinPhi
118 TArrayF * fCTSFidCutMaxEta ; //Take particles in CTS with eta < fCTSFidCutMaxEta
119 TArrayF * fCTSFidCutMaxPhi ; //Take particles in CTS with phi > fCTSFidCutMaxPhi
120
121 TArrayF * fEMCALFidCutMinEta ; //Take particles in EMCAL with eta > fEMCALFidCutMinEta
122 TArrayF * fEMCALFidCutMinPhi ; //Take particles in EMCAL with phi > fEMCALFidCutMinPhi
123 TArrayF * fEMCALFidCutMaxEta ; //Take particles in EMCAL with eta < fEMCALFidCutMaxEta
124 TArrayF * fEMCALFidCutMaxPhi ; //Take particles in EMCAL with phi > fEMCALFidCutMaxPhi
125
126 TArrayF * fPHOSFidCutMinEta ; //Take particles in PHOS with eta > fPHOSFidCutMinEta
127 TArrayF * fPHOSFidCutMinPhi ; //Take particles in PHOS with phi > fPHOSFidCutMinPhi
128 TArrayF * fPHOSFidCutMaxEta ; //Take particles in PHOS with eta < fPHOSFidCutMaxEta
129 TArrayF * fPHOSFidCutMaxPhi ; //Take particles in PHOS with phi > fPHOSFidCutMaxPhi
130
131
132 ClassDef(AliFidutialCut,1)
133} ;
134
135
136#endif //ALIFIDUTIALCUT_H
137
138
139