cfalgo.hh
Go to the documentation of this file.
1 /**
2  * \file CFAlgo_Class_Name.hh
3  *
4  * \ingroup Working_Package
5  *
6  * \brief Class def header for a class CFAlgo_Class_Name
7  *
8  * @author USER_NAME
9  */
10 
11 /** \addtogroup Working_Package
12 
13  @{*/
14 #ifndef CFALGO_CLASS_NAME_HH
15 #define CFALGO_CLASS_NAME_HH
16 
17 #include "CFloatAlgoBase.hh"
18 
19 namespace cmtool {
20  /**
21  \class CFAlgo_Class_Name
22  User implementation for CFloatAlgoBase class
23  doxygen documentation!
24  */
26 
27  public:
28 
29  /// Default constructor
31 
32  /// Default destructor
33  virtual ~CFAlgo_Class_Name(){};
34 
35  //
36  // Author should be aware of 3 functions at least: Float, Report,
37  // and Reset. More possibly-useful functions can be found in the later
38  // part but commented out. All of these functions are virtual and defined
39  // in the base class.
40 
41  /**
42  Core function: given a set of CPANs, return a float which indicates
43  the compatibility the cluster combination.
44  */
45  virtual float Float(const std::vector<const cluster::ClusterParamsAlg*> &clusters);
46 
47  /**
48  Optional function: called after each iterative approach if a manager class is
49  run with verbosity level <= kPerIteration. Maybe useful for debugging.
50  */
51  virtual void Report();
52 
53  /// Function to reset the algorithm instance, called together with manager's Reset()
54  virtual void Reset();
55 
56  /**
57  Optional function: called at the beginning of 1st iteration. This is called per event.
58  */
59  //virtual void EventBegin(const std::vector<cluster::ClusterParamsAlg> &clusters);
60 
61  /**
62  Optional function: called at the end of event ... after the last merging iteration is over.
63  */
64  //virtual void EventEnd();
65 
66  /**
67  Optional function: called at the beggining of each iterative loop.
68  This provides all clusters' information in case the algorithm need them. Note this
69  is called per iteration which may be more than once per event.
70  */
71  //virtual void IterationBegin(const std::vector<cluster::ClusterParamsAlg> &clusters);
72 
73  /**
74  Optional function: called at the end of each iterative loop.
75  */
76  //virtual void IterationEnd();
77 
78  };
79 }
80 #endif
81 /** @} */ // end of doxygen group
82 
virtual float Float(const std::vector< const cluster::ClusterParamsAlg * > &clusters)
Definition: cfalgo.cc:20
virtual void Report()
Definition: cfalgo.cc:28
CFAlgo_Class_Name()
Default constructor.
Definition: cfalgo.cc:6
virtual void Reset()
Function to reset the algorithm instance, called together with manager&#39;s Reset()
Definition: cfalgo.cc:13
Definition: cfalgo.cc:3
virtual ~CFAlgo_Class_Name()
Default destructor.
Definition: cfalgo.hh:33