All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CBAlgoAngleAlign.h
Go to the documentation of this file.
1 /**
2  * \file CBAlgoAngleAlign.h
3  *
4  * \ingroup CMTool
5  *
6  * \brief Class def header for a class CBAlgoAngleAlign
7  *
8  * @author davidkaleko
9  */
10 
11 /** \addtogroup ClusterRecoUtil
12 
13  @{*/
14 #ifndef RECOTOOL_CBALGOANGLEALIGN_H
15 #define RECOTOOL_CBALGOANGLEALIGN_H
16 
19 
20 namespace cmtool {
21  /**
22  \class CBAlgoAngleCompat
23  User defined class CBAlgoAngleCompat ... these comments are used to generate
24  doxygen documentation!
25  */
27 
28  public:
29 
30  /// Default constructor
32 
33  /// Default destructor
34  virtual ~CBAlgoAngleAlign(){};
35 
36  /// Overloaded (from CBoolAlgoBase) Bool function
37  virtual bool Bool(const ::cluster::ClusterParamsAlg &cluster1,
38  const ::cluster::ClusterParamsAlg &cluster2);
39 
40  /// Method to set debug mode
41  void SetDebug(bool on) { _debug = on; }
42 
43  /// Method to set whether you allow angles to match with +/- 180 deg difference
44  void SetAllow180Ambig(bool on) { _allow_180_ambig = on; }
45 
46  /// Method to set cut value in degrees for angle compatibility test
47  void SetAngleCut(double angle) { _MaxAngleSep = angle; }
48 
49  void SetMinNHits(size_t n) { _MinNHits = n; }
50 
51  protected:
52 
53  bool _debug;
54  size_t _MinNHits; /// minimum number of hits for cluster to be considered
55 
56  ///bool to allow "backwards" clusters (swapped start/end points)
57  ///to still match in angle, even though they are 180 degrees apart
58  ///only valid for _use_opening_angle==false
60 
61  /// hard shower-axis angle cutoff (only valid for _use_opening_angle==false)
62  double _MaxAngleSep;
63 
64 
65  };
66 
67 } // end namespace cmtool
68 
69 #endif
70  /** @} */ // end of doxygen group
Class def header for algorithm classes for CMergeManager.
void SetAngleCut(double angle)
Method to set cut value in degrees for angle compatibility test.
bool _allow_180_ambig
minimum number of hits for cluster to be considered
void SetDebug(bool on)
Method to set debug mode.
double _MaxAngleSep
hard shower-axis angle cutoff (only valid for _use_opening_angle==false)
void SetAllow180Ambig(bool on)
Method to set whether you allow angles to match with +/- 180 deg difference.
virtual ~CBAlgoAngleAlign()
Default destructor.
CBAlgoAngleAlign()
Default constructor.
finds tracks best matching by angle
virtual bool Bool(const ::cluster::ClusterParamsAlg &cluster1, const ::cluster::ClusterParamsAlg &cluster2)
Overloaded (from CBoolAlgoBase) Bool function.