]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - JETAN/AliJetUnitArray.cxx
commenting out not needed couts
[u/mrichter/AliRoot.git] / JETAN / AliJetUnitArray.cxx
... / ...
CommitLineData
1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
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 **************************************************************************/
15
16
17/* $Id$ */
18
19//_________________________________________________________________________
20// Unit used by UA1 algorithm
21// --
22//*-- Author: Sarah Blyth (LBL/UCT)
23// --
24// Revised Version for JETAN
25// -- Magali Estienne (magali.estienne@subatech.in2p3.fr)
26
27#include "AliJetUnitArray.h"
28
29class TVector3;
30class TLorentzVector;
31class TClonesArray;
32
33ClassImp(AliJetUnitArray)
34
35AliJetUnitArray::AliJetUnitArray():
36 fUnitEnergy(0.0),
37 fUnitEta(0.0),
38 fUnitPhi(0.0),
39 fUnitDeta(0.),
40 fUnitDphi(0.),
41 fUnitID(0),
42 fUnitTrackID(0),
43 fUnitNum(0),
44 fUnitClusterID(0),
45 fUnitFlag(kOutJet),
46 fUnitCutFlag(kPtSmaller),
47 fUnitCutFlag2(kPtSmaller),
48 fUnitSignalFlag(kBad),
49 fUnitDetectorFlag(kTpc),
50 fUnitPx(0.),
51 fUnitPy(0.),
52 fUnitPz(0.),
53 fUnitMass(0.),
54 fVc(0),
55 fVn(0),
56 fUnitTrackRef(new TRefArray),
57 fUnitCellRef(new TRefArray),
58 fUnitClusterRef(new TRefArray)
59{
60 // Default constructor
61}
62
63AliJetUnitArray::AliJetUnitArray(Int_t absId, Int_t esdId, Float_t eta, Float_t phi, Float_t en, Float_t Deta, Float_t Dphi, AliJetFinderUnitDetectorFlagType_t det, AliJetFinderUnitFlagType_t inout, AliJetFinderUnitCutFlagType_t cut, AliJetFinderUnitCutFlagType_t cut2, AliJetFinderUnitSignalFlagType_t /*signal*/,Float_t mass, Int_t clusId):
64 fUnitEnergy(en),
65 fUnitEta(eta),
66 fUnitPhi(phi),
67 fUnitDeta(Deta),
68 fUnitDphi(Dphi),
69 fUnitID(absId),
70 fUnitTrackID(esdId),
71 fUnitNum(0),
72 fUnitClusterID(clusId),
73 fUnitFlag(inout),
74 fUnitCutFlag(cut),
75 fUnitCutFlag2(cut2),
76 fUnitSignalFlag(kBad),
77 fUnitDetectorFlag(det),
78 fUnitPx(0.),
79 fUnitPy(0.),
80 fUnitPz(0.),
81 fUnitMass(mass),
82 fVc(0),
83 fVn(0),
84 fUnitTrackRef(new TRefArray),
85 fUnitCellRef(new TRefArray),
86 fUnitClusterRef(new TRefArray)
87{
88 //abs ID (in a eta,phi grid, track ID in ESD, eta, phi, energy, px, py, pz, Deta, Dphi, detector flag, in/out jet, mass
89
90 // Constructor 2
91}
92
93AliJetUnitArray::AliJetUnitArray(Int_t absId, Int_t esdId, Float_t eta, Float_t phi, Float_t en, Float_t px, Float_t py, Float_t pz, Float_t Deta, Float_t Dphi, AliJetFinderUnitDetectorFlagType_t det, AliJetFinderUnitFlagType_t inout, AliJetFinderUnitCutFlagType_t cut, Float_t mass, Int_t clusId):
94 fUnitEnergy(en),
95 fUnitEta(eta),
96 fUnitPhi(phi),
97 fUnitDeta(Deta),
98 fUnitDphi(Dphi),
99 fUnitID(absId),
100 fUnitTrackID(esdId),
101 fUnitNum(0),
102 fUnitClusterID(clusId),
103 fUnitFlag(inout),
104 fUnitCutFlag(cut),
105 fUnitCutFlag2(kPtSmaller),
106 fUnitSignalFlag(kBad),
107 fUnitDetectorFlag(det),
108 fUnitPx(px),
109 fUnitPy(py),
110 fUnitPz(pz),
111 fUnitMass(mass),
112 fVc(0),
113 fVn(0),
114 fUnitTrackRef(new TRefArray),
115 fUnitCellRef(new TRefArray),
116 fUnitClusterRef(new TRefArray)
117{
118 // Constructor 2
119}
120
121AliJetUnitArray::AliJetUnitArray(const AliJetUnitArray& rUnit):
122 TObject(rUnit),
123 fUnitEnergy(rUnit.fUnitEnergy),
124 fUnitEta(rUnit.fUnitEta),
125 fUnitPhi(rUnit.fUnitPhi),
126 fUnitDeta(rUnit.fUnitDeta),
127 fUnitDphi(rUnit.fUnitDphi),
128 fUnitID(rUnit.fUnitID),
129 fUnitTrackID(rUnit.fUnitTrackID),
130 fUnitNum(rUnit.fUnitNum),
131 fUnitClusterID(rUnit.fUnitClusterID),
132 fUnitFlag(rUnit.fUnitFlag),
133 fUnitCutFlag(rUnit.fUnitCutFlag),
134 fUnitCutFlag2(rUnit.fUnitCutFlag2),
135 fUnitSignalFlag(rUnit.fUnitSignalFlag),
136 fUnitDetectorFlag(rUnit.fUnitDetectorFlag),
137 fUnitPx(rUnit.fUnitPx),
138 fUnitPy(rUnit.fUnitPy),
139 fUnitPz(rUnit.fUnitPz),
140 fUnitMass(rUnit.fUnitMass),
141 fVc(rUnit.fVc),
142 fVn(rUnit.fVn),
143 fUnitTrackRef(rUnit.fUnitTrackRef),
144 fUnitCellRef(rUnit.fUnitCellRef),
145 fUnitClusterRef(rUnit.fUnitClusterRef)
146{
147 // Copy constructor
148}
149
150AliJetUnitArray& AliJetUnitArray::operator=(const AliJetUnitArray& rhs)
151{
152 // Assignment
153 if (this != &rhs) {
154 fUnitEnergy = rhs.fUnitEnergy;
155 fUnitEta = rhs.fUnitEta;
156 fUnitPhi = rhs.fUnitPhi;
157 fUnitDeta = rhs.fUnitDeta;
158 fUnitDphi = rhs.fUnitDphi;
159 fUnitID = rhs.fUnitID;
160 fUnitTrackID = rhs.fUnitTrackID;
161 fUnitNum = rhs.fUnitNum;
162 fUnitClusterID = rhs.fUnitClusterID;
163 fUnitFlag = rhs.fUnitFlag;
164 fUnitCutFlag = rhs.fUnitCutFlag;
165 fUnitCutFlag2 = rhs.fUnitCutFlag2;
166 fUnitSignalFlag = rhs.fUnitSignalFlag;
167 fUnitDetectorFlag = rhs.fUnitDetectorFlag;
168 fUnitPx = rhs.fUnitPx;
169 fUnitPy = rhs.fUnitPy;
170 fUnitPz = rhs.fUnitPz;
171 fUnitMass = rhs.fUnitMass;
172 fVc = rhs.fVc;
173 fVn = rhs.fVn;
174 fUnitTrackRef = rhs.fUnitTrackRef;
175 fUnitCellRef = rhs.fUnitCellRef;
176 fUnitClusterRef = rhs.fUnitClusterRef;
177 }
178 return *this;
179
180}
181
182
183//------------------------------------------------------------------------
184AliJetUnitArray::~AliJetUnitArray()
185{
186 // Destructor
187 delete fUnitTrackRef;
188 delete fUnitCellRef;
189 delete fUnitClusterRef;
190
191}
192
193void AliJetUnitArray::ClearUnitTrackRef()
194{
195 fUnitTrackRef->Clear();
196}
197
198void AliJetUnitArray::ClearUnitCellRef()
199{
200 fUnitCellRef->Clear();
201}
202
203//------------------------------------------------------------------------
204void AliJetUnitArray::SetUnitSignalFlagC(Bool_t init, AliJetFinderUnitSignalFlagType_t flag)
205{
206 // Set signal flag of the charged particle
207 if(init){
208 if(!fVc.empty())
209 fVc.clear();
210 }
211 else fVc.push_back(flag);
212}
213
214//------------------------------------------------------------------------
215void AliJetUnitArray::SetUnitSignalFlagN(Bool_t init, AliJetFinderUnitSignalFlagType_t flag)
216{
217 // Set signal flag of the neutral cell
218 if(init){
219 if(!fVn.empty())
220 fVn.clear();
221 }
222 else fVn.push_back(flag);
223}
224
225
226//------------------------------------------------------------------------
227Bool_t AliJetUnitArray::GetUnitSignalFlagC(Int_t ind, AliJetFinderUnitSignalFlagType_t &flagc)
228{
229 // Get signal flag of the charged particle
230 if(ind <= (Int_t)fVc.size())
231 {
232 flagc = (AliJetFinderUnitSignalFlagType_t)fVc[ind];
233 return kTRUE;
234 }
235 else return kFALSE;
236}
237
238//------------------------------------------------------------------------
239Bool_t AliJetUnitArray::GetUnitSignalFlagN(Int_t ind, AliJetFinderUnitSignalFlagType_t &flagn)
240{
241 // Get signal flag of the neutral cell
242 if(ind <= (Int_t)fVn.size())
243 {
244 flagn = (AliJetFinderUnitSignalFlagType_t)fVn[ind];
245 return kTRUE;
246 }
247 else return kFALSE;
248}
249
250//------------------------------------------------------------------------
251Float_t AliJetUnitArray::EtaToTheta(Float_t arg) const
252{
253 // Eta to theta transformation
254 return 2.*atan(exp(-arg));
255}
256
257//------------------------------------------------------------------------
258Bool_t AliJetUnitArray::operator>(const AliJetUnitArray* unit) const
259{
260 // Greater than operator used by sort
261 if( fUnitEnergy > unit->GetUnitEnergy())
262 return kTRUE;
263 else
264 return kFALSE;
265}
266
267//------------------------------------------------------------------------
268Bool_t AliJetUnitArray::operator<(const AliJetUnitArray* unit) const
269{
270 // Less than operator used by sort
271 if( fUnitEnergy < unit->GetUnitEnergy())
272 return kTRUE;
273 else
274 return kFALSE;
275}
276
277//------------------------------------------------------------------------
278Bool_t AliJetUnitArray::operator==(const AliJetUnitArray* unit) const
279{
280 // equality operator used by sort
281 if( fUnitEnergy == unit->GetUnitEnergy())
282 return kTRUE;
283 else
284 return kFALSE;
285}