cpalgo.hh
Go to the documentation of this file.
1 /**
2  * \file CPAlgo_Class_Name.hh
3  *
4  * \ingroup Working_Package
5  *
6  * \brief Class def header for a class CPAlgo_Class_Name
7  *
8  * @author USER_NAME
9  */
10 
11 /** \addtogroup Working_Package
12 
13  @{*/
14 #ifndef CPALGO_CLASS_NAME_HH
15 #define CPALGO_CLASS_NAME_HH
16 
17 #include "CPriorityAlgoBase.hh"
18 
19 namespace cmtool {
20  /**
21  \class CPAlgo_Class_Name
22  User implementation for CPriorityAlgoBase class
23  doxygen documentation!
24  */
26 
27  public:
28 
29  /// Default constructor
31 
32  /// Default destructor
33  virtual ~CPAlgo_Class_Name(){};
34 
35  //
36  // Author should be aware of 3 functions at least: Priority, 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 the CPAN input, return a float which indicates
43  the user-defined priority for analysis.
44  */
45  virtual float Priority(const ::cluster::ClusterParamsAlg &cluster);
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 void Report()
Definition: cpalgo.cc:28
Cluster finding and building.
CPAlgo_Class_Name()
Default constructor.
Definition: cpalgo.cc:6
virtual float Priority(const ::cluster::ClusterParamsAlg &cluster)
Definition: cpalgo.cc:20
virtual ~CPAlgo_Class_Name()
Default destructor.
Definition: cpalgo.hh:33
virtual void Reset()
Function to reset the algorithm instance, called together with manager&#39;s Reset()
Definition: cpalgo.cc:13
Definition: cfalgo.cc:3