1 |
/* |
2 |
* TrkGeomCut.h |
3 |
* |
4 |
* Created on: 13-mar-2009 |
5 |
* Author: N. Mori, S. Ricciarini |
6 |
*/ |
7 |
|
8 |
/*! @file TrkGeomCut.h The TrkGeomCut class definition file */ |
9 |
|
10 |
#ifndef TRKGEOMCUT_H_ |
11 |
#define TRKGEOMCUT_H_ |
12 |
|
13 |
#include "../../PamCutBase/PamCutBase.h" |
14 |
|
15 |
/*! @brief The tracker fiducial acceptance cut. |
16 |
* This cut checks if the track is inside the fiducial acceptance chosen for the tracker. |
17 |
* CUT DEPENDENCIES: TrkPhysSin for object trkTrack |
18 |
*/ |
19 |
|
20 |
class TrkGeomCut: public PamCut { |
21 |
|
22 |
public: |
23 |
/*! @brief Constructor. |
24 |
* |
25 |
* The parameters are the width of the regions on each side of a view that define the |
26 |
* fiducial acceptance region. The detector size is therefore reduce by an amount of xTol |
27 |
* (yTol) on each side of the X (Y) view for all the GF planes except fot M1 and M2. For these, |
28 |
* xMagnTol and yMagnTol will be used as parameters. |
29 |
* |
30 |
* @param cutName The cut's name. |
31 |
* @param trkAlg The tracking algorythm used to check the track. |
32 |
* @param xTol The fiducial border on X view for a generic plane in cm (except M1 and M2). |
33 |
* @param yTol The fiducial border on Y view for a generic plane in cm (except M1 and M2). |
34 |
* @param xMagnTol The fiducial border on X view for M1 and M2 in cm. |
35 |
* @param yMagnTol The fiducial border on Y view for M1 and M2 in cm. |
36 |
*/ |
37 |
TrkGeomCut(const char *cutName, const char *trkAlg, Float_t xTol=0.15, Float_t yTol=0.15, Float_t xMagnTol=0.15, Float_t yMagnTol=0.15) : |
38 |
PamCut(cutName), _trkAlg(trkAlg), _xTol(xTol), _yTol(yTol), _xMagnTol(xMagnTol), _yMagnTol(yMagnTol) { |
39 |
} |
40 |
/*! @brief Destructor. */ |
41 |
~TrkGeomCut() { |
42 |
} |
43 |
|
44 |
/*! @brief The tracker fiducial acceptance check. |
45 |
* |
46 |
* @param event The event to analyze. |
47 |
* @return #CUTOK if the track is inside the fiducial acceptance. |
48 |
* @return 0 otherwise. |
49 |
*/ |
50 |
int Check(PamLevel2 *event); |
51 |
|
52 |
|
53 |
|
54 |
|
55 |
private: |
56 |
|
57 |
const char *_trkAlg; |
58 |
Float_t _xTol, _yTol; |
59 |
Float_t _xMagnTol, _yMagnTol; |
60 |
|
61 |
}; |
62 |
#endif /* TRKGEOMCUT_H_ */ |