CBAlgoProhibitAllTracks.h
Go to the documentation of this file.
1 /**
2  * \file CBAlgoProhibitAllTracks.h
3  *
4  * \ingroup CMTool
5  *
6  * \brief Class def header for a class CBAlgoProhibitAllTracks
7  *
8  * @author davidkaleko
9  */
10 
11 /** \addtogroup CMTool
12 
13  @{*/
14 #ifndef RECOTOOL_CBALGOPROHIBITALLTRACKS_H
15 #define RECOTOOL_CBALGOPROHIBITALLTRACKS_H
16 
19 
20 namespace cmtool {
21  /**
22  \class CBAlgoProhibitAllTracks
23  User implementation for CBoolAlgoBase class
24  doxygen documentation!
25  */
27 
28  public:
29 
30  /// Default constructor
32 
33  /// Default destructor
35 
36  /**
37  Optional function: called at the beginning of 1st iteration. This is called per event.
38  */
39  //virtual void EventBegin(const std::vector<cluster::ClusterParamsAlg> &clusters);
40 
41  /**
42  Optional function: called at the end of event ... after the last merging iteration is over.
43  */
44  //virtual void EventEnd();
45 
46  /**
47  Optional function: called at the beggining of each iteration over all pairs of clusters.
48  This provides all clusters' information in case the algorithm need them. Note this
49  is called per iteration which may be more than once per event.
50  */
51  //virtual void IterationBegin(const std::vector<cluster::ClusterParamsAlg> &clusters);
52 
53  /**
54  Optional function: called at the end of each iteration over all pairs of clusters.
55  */
56  //virtual void IterationEnd();
57 
58  /**
59  Core function: given the CPAN input, return whether a cluster should be
60  merged or not.
61  */
62  virtual bool Bool(const ::cluster::ClusterParamsAlg &cluster1,
63  const ::cluster::ClusterParamsAlg &cluster2);
64 
65  /**
66  Optional function: called after each Merge() function call by CMergeManager IFF
67  CMergeManager is run with verbosity level kPerMerging. Maybe useful for debugging.
68  */
69  virtual void Report();
70 
71  /// Function to reset the algorithm instance ... maybe implemented via child class
72  virtual void Reset();
73 
74 
75  void SetMinEP(double value) { _min_EP = value; }
76 
77  protected:
78 
79  double _min_EP;
80 
81  };
82 
83 
84 }
85 #endif
86 /** @} */ // end of doxygen group
Class def header for algorithm classes for CMergeManager.
virtual void Reset()
Function to reset the algorithm instance ... maybe implemented via child class.
virtual ~CBAlgoProhibitAllTracks()
Default destructor.
virtual bool Bool(const ::cluster::ClusterParamsAlg &cluster1, const ::cluster::ClusterParamsAlg &cluster2)
CBAlgoProhibitAllTracks()
Default constructor.