#include <CMAlgoBase.h>
Public Member Functions | |
CMAlgoBase () | |
virtual | ~CMAlgoBase ()=default |
virtual void | Reset () |
Function to reset the algorithm instance called within CMergeManager/CMatchManager's Reset() ... maybe implemented via child class. More... | |
virtual void | EventBegin (const std::vector< cluster::ClusterParamsAlg > &) |
virtual void | EventEnd () |
virtual void | IterationBegin (const std::vector< cluster::ClusterParamsAlg > &) |
virtual void | IterationEnd () |
virtual void | Report () |
void | SetAnaFile (TFile *fout) |
Setter function for an output plot TFile pointer. More... | |
virtual void | SetVerbose (bool doit=true) |
Setter function for verbosity. More... | |
Protected Attributes | |
TFile * | _fout |
TFile pointer to an output file. More... | |
bool | _verbose |
Boolean to choose verbose mode. Turned on if CMergeManager/CMatchManager's verbosity level is >= kPerMerging. More... | |
An abstract base class for merging/mathcing algorithm. Having this base class helps to have a better overall design of various merging for iterative approach. The algorithms are run through CMergeManager.
Definition at line 30 of file CMAlgoBase.h.
|
inline |
Definition at line 32 of file CMAlgoBase.h.
|
virtualdefault |
|
inlinevirtual |
Optional function: called at the beginning of 1st iteration. This is called per event.
Reimplemented in cmtool::CPAlgoArray, cmtool::CBAlgoArray, and cmtool::CBAlgoPolyShortestDist.
Definition at line 48 of file CMAlgoBase.h.
|
inlinevirtual |
Optional function: called at the end of event ... after the last merging iteration is over.
Reimplemented in cmtool::CPAlgoArray, and cmtool::CBAlgoArray.
Definition at line 55 of file CMAlgoBase.h.
|
inlinevirtual |
Optional function: called at the beggining of each iteration over all pairs of clusters. This provides all clusters' information in case the algorithm need them. Note this is called per iteration which may be more than once per event.
Reimplemented in cmtool::CPAlgoArray, and cmtool::CBAlgoArray.
Definition at line 64 of file CMAlgoBase.h.
|
inlinevirtual |
Optional function: called at the end of each iteration over all pairs of clusters.
Reimplemented in cmtool::CPAlgoArray, and cmtool::CBAlgoArray.
Definition at line 71 of file CMAlgoBase.h.
|
inlinevirtual |
Optional function: called after Bool() function is called for all possible cluster pairs by CMergeManager/CMatchManager IFF run with verbosity level kPerIteration. Maybe useful for debugging.
Reimplemented in cmtool::CPAlgoArray, cmtool::CBAlgoArray, cmtool::CFAlgoTimeOverlap, cmtool::CBAlgoPolyShortestDist, cmtool::CBAlgoStartTrack, cmtool::CBAlgoProhibitAllTracks, cmtool::CBAlgoOutOfConeSeparate, cmtool::CBAlgoAngleSeparate, cmtool::CBAlgoMergeTinyWithBig, cmtool::CBAlgoStartNearEnd, cmtool::CFAlgoShowerCompat, cmtool::CBAlgoProhibitBigClusters, cmtool::CPAlgoIgnoreTracks, cmtool::CBAlgoCenterOfMass, cmtool::CBAlgoCenterOfMassSmall, cmtool::CFAlgoQRatio, and cmtool::CFAlgoZOverlap.
Definition at line 80 of file CMAlgoBase.h.
|
inlinevirtual |
Function to reset the algorithm instance called within CMergeManager/CMatchManager's Reset() ... maybe implemented via child class.
Reimplemented in cmtool::CBAlgoArray, cmtool::CPAlgoArray, cmtool::CFAlgoTimeOverlap, cmtool::CBAlgoPolyShortestDist, cmtool::CBAlgoStartTrack, cmtool::CBAlgoProhibitAllTracks, cmtool::CBAlgoOutOfConeSeparate, cmtool::CBAlgoMergeTinyWithBig, cmtool::CFAlgoShowerCompat, cmtool::CBAlgoAngleSeparate, cmtool::CBAlgoProhibitBigClusters, cmtool::CPAlgoIgnoreTracks, cmtool::CFAlgoQRatio, cmtool::CFAlgoZOverlap, cmtool::CBAlgoStartNearEnd, cmtool::CBAlgoCenterOfMass, cmtool::CBAlgoCenterOfMassSmall, cmtool::CBAlgoFake, and cmtool::CBAlgoMergeAll.
Definition at line 41 of file CMAlgoBase.h.
|
inline |
|
inlinevirtual |
Setter function for verbosity.
Reimplemented in cmtool::CBAlgoArray, and cmtool::CFAlgoTimeOverlap.
Definition at line 92 of file CMAlgoBase.h.
|
protected |
TFile pointer to an output file.
Definition at line 99 of file CMAlgoBase.h.
|
protected |
Boolean to choose verbose mode. Turned on if CMergeManager/CMatchManager's verbosity level is >= kPerMerging.
Definition at line 102 of file CMAlgoBase.h.