1 |
/* |
2 |
* TrkRigGeoCut.h |
3 |
* |
4 |
* Created on: 25-mar-2009 |
5 |
* Author: Nicola Mori |
6 |
* Last update: 30-apr-2009 |
7 |
*/ |
8 |
|
9 |
/*! @file TrkRigGeoCut.h The TrkRigGeoCut class definition file */ |
10 |
|
11 |
#ifndef TRKRIGGEOCUT_H_ |
12 |
#define TRKRIGGEOCUT_H_ |
13 |
|
14 |
#include "../../PamCutBase/PamCutBase.h" |
15 |
|
16 |
/*! @brief The geomagnetic rigidity cut. |
17 |
* This cut discards an event whose rigidity modulus is less than a threshold rigidity, given by |
18 |
* the geomagnetic cutoff rigidity (the Stoermer cutoff) for that event multiplied by a threshold |
19 |
* coefficient. |
20 |
* |
21 |
* CUT DEPENDENCIES: TrkPhSin (since TrkRigGeoCut assumes the existence of a single physical track) |
22 |
*/ |
23 |
class TrkRigGeoCut: public PamCut { |
24 |
|
25 |
public: |
26 |
/*! @brief Constructor. |
27 |
* |
28 |
* @param cutName The cut's name. |
29 |
* @param thresholdCoeff The threshold rigidity coefficient. |
30 |
*/ |
31 |
TrkRigGeoCut(const char *cutName, const char *trkAlg, float thresholdCoeff) : |
32 |
PamCut(cutName), _trkAlg(trkAlg), _thresholdCoeff(thresholdCoeff) { |
33 |
} |
34 |
/*! @brief Destructor. */ |
35 |
~TrkRigGeoCut() { |
36 |
} |
37 |
|
38 |
/*! @brief The rigidity check. |
39 |
* |
40 |
* @param event The event to analyze. |
41 |
* @return #CUTOK if the rigidity modulus is greater than the geomagnetic cutoff |
42 |
* rigidity times the threshold coefficient. |
43 |
* @return 0 otherwise. |
44 |
*/ |
45 |
int Check(PamLevel2 *event); |
46 |
|
47 |
/*! @brief Returns the threshold coefficient.*/ |
48 |
float GetThresholdCoeff(){ |
49 |
return _thresholdCoeff; |
50 |
} |
51 |
|
52 |
private: |
53 |
|
54 |
const char *_trkAlg; |
55 |
float _thresholdCoeff; |
56 |
|
57 |
}; |
58 |
|
59 |
#endif /* TRKRIGGEOCUT_H_ */ |