AliPhysics  2aaea23 (2aaea23)
AliFiducialCut.h
Go to the documentation of this file.
1 #ifndef ALIFIDUCIALCUT_H
2 #define ALIFIDUCIALCUT_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice */
5 
6 //_________________________________________________________________________
19 //_________________________________________________________________________
20 
21 // --- ROOT system ---
22 #include <TObject.h>
23 #include <TArrayF.h>
24 
25 class TString ;
26 //class TLorentzVector ;
27 
28 class AliFiducialCut : public TObject {
29 
30 public:
31 
32  AliFiducialCut() ; // ctor
33  virtual ~AliFiducialCut() ;//virtual dtor
34 
35  void InitParameters();
36 
38  const TArrayF* minphi, const TArrayF* maxphi,
39  const TArrayF* mineta, const TArrayF* maxeta) const ;
40 
41  Bool_t IsInFiducialCut (Float_t eta, Float_t phi, Int_t det) const ;
42 
47 
52 
53  void SetSimpleCTSFiducialCut (Float_t abseta, Float_t phimin, Float_t phimax) ;
54  void SetSimpleEMCALFiducialCut(Float_t abseta, Float_t phimin, Float_t phimax) ;
55  void SetSimplePHOSFiducialCut (Float_t abseta, Float_t phimin, Float_t phimax) ;
56  void SetSimpleDCALFiducialCut (Float_t abseta, Float_t phimin, Float_t phimax) ;
57  void SetDCALFiducialCut (Float_t etaminFull , Float_t etamaxFull , Float_t phiminFull , Float_t phimaxFull ,
58  Float_t etaminThird, Float_t etamaxThird, Float_t phiminThird, Float_t phimaxThird);
59 
60  void Print(const Option_t * opt)const;
61 
63  { fCTSFidCutMaxEta->Set(size,array) ; }
64  TArrayF * GetCTSFidCutMaxEtaArray() const { return fCTSFidCutMaxEta ; }
65 
67  { fCTSFidCutMaxPhi->Set(size,array) ; }
68  TArrayF * GetCTSFidCutMaxPhiArray() const { return fCTSFidCutMaxPhi ; }
69 
71  { fCTSFidCutMinEta->Set(size,array) ; }
72  TArrayF * GetCTSFidCutMinEtaArray() const { return fCTSFidCutMinEta ; }
73 
75  { fCTSFidCutMinPhi->Set(size,array) ; }
76  TArrayF * GetCTSFidCutMinPhiArray() const { return fCTSFidCutMinPhi ; }
77 
79  { fEMCALFidCutMaxEta->Set(size,array) ; }
80  TArrayF * GetEMCALFidCutMaxEtaArray() const { return fEMCALFidCutMaxEta ; }
81 
83  { fEMCALFidCutMaxPhi->Set(size,array) ; }
84  TArrayF * GetEMCALFidCutMaxPhiArray() const { return fEMCALFidCutMaxPhi ; }
85 
87  { fEMCALFidCutMinEta->Set(size,array) ; }
88  TArrayF * GetEMCALFidCutMinEtaArray() const { return fEMCALFidCutMinEta ; }
89 
91  { fEMCALFidCutMinPhi->Set(size,array) ; }
92  TArrayF * GetEMCALFidCutMinPhiArray() const { return fEMCALFidCutMinPhi ; }
93 
95  { fPHOSFidCutMaxEta->Set(size,array) ; }
96  TArrayF * GetPHOSFidCutMaxEtaArray() const { return fPHOSFidCutMaxEta ; }
97 
99  { fPHOSFidCutMaxPhi->Set(size,array) ; }
100  TArrayF * GetPHOSFidCutMaxPhiArray() const { return fPHOSFidCutMaxPhi ; }
101 
103  { fPHOSFidCutMinEta->Set(size,array) ; }
104  TArrayF * GetPHOSFidCutMinEtaArray() const { return fPHOSFidCutMinEta ; }
105 
107  { fPHOSFidCutMinPhi->Set(size,array) ; }
108  TArrayF * GetPHOSFidCutMinPhiArray() const { return fPHOSFidCutMinPhi ; }
109 
111  { fDCALFidCutMaxEta->Set(size,array) ; }
112  TArrayF * GetDCALFidCutMaxEtaArray() const { return fDCALFidCutMaxEta ; }
113 
115  { fDCALFidCutMaxPhi->Set(size,array) ; }
116  TArrayF * GetDCALFidCutMaxPhiArray() const { return fDCALFidCutMaxPhi ; }
117 
119  { fDCALFidCutMinEta->Set(size,array) ; }
120  TArrayF * GetDCALFidCutMinEtaArray() const { return fDCALFidCutMinEta ; }
121 
123  { fDCALFidCutMinPhi->Set(size,array) ; }
124  TArrayF * GetDCALFidCutMinPhiArray() const { return fDCALFidCutMinPhi ; }
125 
126  enum detector { kEMCAL = 0, kPHOS = 1, kCTS = 2, kDCAL = 3, kDCALPHOS = 4 } ;
127 
128 private:
129 
130  // Detector acceptance cuts
131 
136 
137  TArrayF * fCTSFidCutMinEta ;
138  TArrayF * fCTSFidCutMinPhi ;
139  TArrayF * fCTSFidCutMaxEta ;
140  TArrayF * fCTSFidCutMaxPhi ;
141 
142  TArrayF * fEMCALFidCutMinEta ;
143  TArrayF * fEMCALFidCutMinPhi ;
144  TArrayF * fEMCALFidCutMaxEta ;
145  TArrayF * fEMCALFidCutMaxPhi ;
146 
147  TArrayF * fPHOSFidCutMinEta ;
148  TArrayF * fPHOSFidCutMinPhi ;
149  TArrayF * fPHOSFidCutMaxEta ;
150  TArrayF * fPHOSFidCutMaxPhi ;
151 
152  TArrayF * fDCALFidCutMinEta ;
153  TArrayF * fDCALFidCutMinPhi ;
154  TArrayF * fDCALFidCutMaxEta ;
155  TArrayF * fDCALFidCutMaxPhi ;
156 
158  AliFiducialCut( const AliFiducialCut & fc) ;
159 
161  AliFiducialCut & operator = (const AliFiducialCut & fc) ;
162 
164  ClassDef(AliFiducialCut,3) ;
166 
167 } ;
168 
169 
170 #endif //ALIFIDUCIALCUT_H
171 
172 
173 
TArrayF * fEMCALFidCutMinPhi
Take particles in EMCAL with phi > fEMCALFidCutMinPhi.
void AddDCALFidCutMaxEtaArray(Int_t size, Float_t *array)
void AddPHOSFidCutMaxPhiArray(Int_t size, Float_t *array)
void SetSimpleCTSFiducialCut(Float_t abseta, Float_t phimin, Float_t phimax)
TArrayF * GetCTSFidCutMaxEtaArray() const
TArrayF * GetDCALFidCutMinEtaArray() const
TArrayF * GetPHOSFidCutMaxPhiArray() const
TArrayF * fEMCALFidCutMaxPhi
Take particles in EMCAL with phi > fEMCALFidCutMaxPhi.
void AddPHOSFidCutMinEtaArray(Int_t size, Float_t *array)
void InitParameters()
Initialize the parameters.
void AddDCALFidCutMinEtaArray(Int_t size, Float_t *array)
void SetSimpleEMCALFiducialCut(Float_t abseta, Float_t phimin, Float_t phimax)
Bool_t GetDCALFiducialCut() const
TArrayF * GetDCALFidCutMinPhiArray() const
TArrayF * GetEMCALFidCutMaxPhiArray() const
TArrayF * GetCTSFidCutMaxPhiArray() const
void AddPHOSFidCutMinPhiArray(Int_t size, Float_t *array)
TArrayF * GetCTSFidCutMinPhiArray() const
Bool_t fCTSFiducialCut
Apply fiducial cuts to CTS tracks.
TArrayF * GetDCALFidCutMaxPhiArray() const
Bool_t fEMCALFiducialCut
Apply fiducial cuts to EMCAL clusters.
TArrayF * fPHOSFidCutMaxEta
Take particles in PHOS with eta < fPHOSFidCutMaxEta.
void SetSimplePHOSFiducialCut(Float_t abseta, Float_t phimin, Float_t phimax)
Bool_t fPHOSFiducialCut
Apply fiducial cuts to PHOS clusters.
TArrayF * GetPHOSFidCutMinEtaArray() const
void DoCTSFiducialCut(Bool_t b)
void DoEMCALFiducialCut(Bool_t b)
TArrayF * fDCALFidCutMinEta
Take particles in DCAL with eta > fDCALFidCutMinEta.
TArrayF * fDCALFidCutMaxPhi
Take particles in DCAL with phi > fDCALFidCutMaxPhi.
int Int_t
Definition: External.C:63
void DoDCALFiducialCut(Bool_t b)
TArrayF * fCTSFidCutMinPhi
Take particles in CTS with phi > fCTSFidCutMinPhi.
virtual ~AliFiducialCut()
Destructor.
TArrayF * fPHOSFidCutMinPhi
Take particles in PHOS with phi > fPHOSFidCutMinPhi.
float Float_t
Definition: External.C:68
void AddEMCALFidCutMinEtaArray(Int_t size, Float_t *array)
Bool_t GetCTSFiducialCutStatus() const
TArrayF * GetEMCALFidCutMinEtaArray() const
void Print(const Option_t *opt) const
Print some relevant parameters set.
Bool_t IsInFiducialCut(Float_t eta, Float_t phi, Int_t det) const
TArrayF * GetPHOSFidCutMinPhiArray() const
void AddCTSFidCutMaxPhiArray(Int_t size, Float_t *array)
Bool_t CheckFiducialRegion(Float_t eta, Float_t phi, const TArrayF *minphi, const TArrayF *maxphi, const TArrayF *mineta, const TArrayF *maxeta) const
Bool_t GetEMCALFiducialCut() const
TArrayF * fCTSFidCutMaxPhi
Take particles in CTS with phi > fCTSFidCutMaxPhi.
TArrayF * GetDCALFidCutMaxEtaArray() const
void AddPHOSFidCutMaxEtaArray(Int_t size, Float_t *array)
void AddDCALFidCutMaxPhiArray(Int_t size, Float_t *array)
TArrayF * fCTSFidCutMaxEta
Take particles in CTS with eta < fCTSFidCutMaxEta.
void AddCTSFidCutMinEtaArray(Int_t size, Float_t *array)
void AddEMCALFidCutMaxEtaArray(Int_t size, Float_t *array)
TArrayF * fPHOSFidCutMinEta
Take particles in PHOS with eta > fPHOSFidCutMinEta.
void AddDCALFidCutMinPhiArray(Int_t size, Float_t *array)
Bool_t GetPHOSFiducialCutStatus() const
void AddCTSFidCutMaxEtaArray(Int_t size, Float_t *array)
TArrayF * fPHOSFidCutMaxPhi
Take particles in PHOS with phi > fPHOSFidCutMaxPhi.
void SetDCALFiducialCut(Float_t etaminFull, Float_t etamaxFull, Float_t phiminFull, Float_t phimaxFull, Float_t etaminThird, Float_t etamaxThird, Float_t phiminThird, Float_t phimaxThird)
TArrayF * fEMCALFidCutMinEta
Take particles in EMCAL with eta > fEMCALFidCutMinEta.
void AddEMCALFidCutMinPhiArray(Int_t size, Float_t *array)
const char Option_t
Definition: External.C:48
void DoPHOSFiducialCut(Bool_t b)
TArrayF * fCTSFidCutMinEta
Take particles in CTS with eta > fCTSFidCutMinEta.
bool Bool_t
Definition: External.C:53
TArrayF * GetEMCALFidCutMaxEtaArray() const
void AddCTSFidCutMinPhiArray(Int_t size, Float_t *array)
void SetSimpleDCALFiducialCut(Float_t abseta, Float_t phimin, Float_t phimax)
TArrayF * GetPHOSFidCutMaxEtaArray() const
TArrayF * fDCALFidCutMaxEta
Take particles in DCAL with eta < fDCALFidCutMaxEta.
Bool_t fDCALFiducialCut
Apply fiducial cuts to DCAL clusters.
TArrayF * fDCALFidCutMinPhi
Take particles in DCAL with phi > fDCALFidCutMinPhi.
TArrayF * GetCTSFidCutMinEtaArray() const
TArrayF * GetEMCALFidCutMinPhiArray() const
Store the acceptance cuts for clusters and tracks or particle objects.
AliFiducialCut & operator=(const AliFiducialCut &fc)
Assignment operator not implemented.
TArrayF * fEMCALFidCutMaxEta
Take particles in EMCAL with eta < fEMCALFidCutMaxEta.
void AddEMCALFidCutMaxPhiArray(Int_t size, Float_t *array)
const Double_t phimin