1 |
/* |
2 |
* TrkGeomCut.cpp |
3 |
* |
4 |
* Created on: 13-mar-2009 |
5 |
* Author: N. Mori, S. Ricciarini |
6 |
*/ |
7 |
|
8 |
/*! @file TrkGeomCut.cpp The TrkGeomCut class implementation file */ |
9 |
|
10 |
#include "TrkGeomCut.h" |
11 |
|
12 |
int TrkGeomCut::Check(PamLevel2 *event) { |
13 |
|
14 |
|
15 |
if(event->GetNTracks(_trkAlg)==0)return 0; |
16 |
|
17 |
// TrkTrack *trkTrack = event->GetTrack(0)->GetTrkTrack(); |
18 |
ExtTrack *trkTrack = event->GetTrack(0,_trkAlg)->GetExtTrack(); |
19 |
|
20 |
Float_t xT, yT; |
21 |
|
22 |
for (int igf = 0; igf < TrkParams::nGF; igf++) { // loop on GF planes |
23 |
|
24 |
if (igf==5 || igf==10) { // M1 and M2 planes |
25 |
xT = _xMagnTol; |
26 |
yT = _yMagnTol; |
27 |
} |
28 |
else { |
29 |
xT = _xTol; |
30 |
yT = _yTol; |
31 |
} |
32 |
|
33 |
// check done for all 14 planes |
34 |
if (!(TrkParams::xGF_min[igf] + xT < trkTrack->xGF[igf] && trkTrack->xGF[igf] < TrkParams::xGF_max[igf] - xT)) |
35 |
return 0; |
36 |
if (!(TrkParams::yGF_min[igf] + yT < trkTrack->yGF[igf] && trkTrack->yGF[igf] < TrkParams::yGF_max[igf] - yT)) |
37 |
return 0; |
38 |
|
39 |
} // end loop on GF planes |
40 |
|
41 |
return CUTOK; |
42 |
} |