LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "CPriorityAlgoBase.h"
Public Member Functions | |
CPriorityAlgoBase () | |
Default constructor. More... | |
virtual | ~CPriorityAlgoBase () |
Default destructor. More... | |
virtual float | Priority (const cluster::ClusterParamsAlg &cluster) |
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 CMatchManager and CMergeManager to determine cluster "priority" for matching and merging action respectively.
Definition at line 27 of file CPriorityAlgoBase.h.
|
inline |
|
inlinevirtual |
|
inlinevirtualinherited |
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 45 of file CMAlgoBase.h.
Referenced by cmtool::CMergeManager::EventBegin().
|
inlinevirtualinherited |
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 50 of file CMAlgoBase.h.
Referenced by cmtool::CMatchManager::EventEnd(), and cmtool::CMergeManager::EventEnd().
|
inlinevirtualinherited |
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 57 of file CMAlgoBase.h.
Referenced by cmtool::CMatchManager::EventBegin(), cmtool::CMatchManager::IterationBegin(), and cmtool::CMergeManager::IterationBegin().
|
inlinevirtualinherited |
Optional function: called at the end of each iteration over all pairs of clusters.
Reimplemented in cmtool::CPAlgoArray, and cmtool::CBAlgoArray.
Definition at line 62 of file CMAlgoBase.h.
Referenced by cmtool::CMatchManager::IterationEnd(), and cmtool::CMergeManager::IterationEnd().
|
inlinevirtual |
Core function: given the CPAN input, return whether a cluster should be merged or not.
Definition at line 40 of file CPriorityAlgoBase.h.
References cluster::ClusterParamsAlg::GetNHits().
Referenced by cmtool::CMManagerBase::ComputePriority().
|
inlinevirtualinherited |
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::CBAlgoPolyShortestDist, cmtool::CBAlgoStartTrack, cmtool::CBAlgoProhibitAllTracks, cmtool::CBAlgoOutOfConeSeparate, cmtool::CBAlgoAngleSeparate, cmtool::CBAlgoMergeTinyWithBig, cmtool::CFAlgoShowerCompat, cmtool::CBAlgoStartNearEnd, cmtool::CFAlgoTimeOverlap, cmtool::CBAlgoProhibitBigClusters, cmtool::CPAlgoIgnoreTracks, cmtool::CFAlgoQRatio, cmtool::CFAlgoZOverlap, cmtool::CBAlgoCenterOfMass, and cmtool::CBAlgoCenterOfMassSmall.
Definition at line 69 of file CMAlgoBase.h.
Referenced by cmtool::CMergeManager::IterationEnd(), cmtool::CMatchManager::IterationProcess(), and cmtool::CMergeManager::IterationProcess().
|
inlinevirtualinherited |
Function to reset the algorithm instance called within CMergeManager/CMatchManager's Reset() ... maybe implemented via child class.
Reimplemented in cmtool::CBAlgoArray, cmtool::CPAlgoArray, cmtool::CBAlgoPolyShortestDist, cmtool::CBAlgoStartTrack, cmtool::CBAlgoProhibitAllTracks, cmtool::CBAlgoOutOfConeSeparate, cmtool::CBAlgoMergeTinyWithBig, cmtool::CFAlgoShowerCompat, cmtool::CBAlgoAngleSeparate, cmtool::CBAlgoProhibitBigClusters, cmtool::CPAlgoIgnoreTracks, cmtool::CFAlgoTimeOverlap, cmtool::CFAlgoQRatio, cmtool::CFAlgoZOverlap, cmtool::CBAlgoStartNearEnd, cmtool::CBAlgoCenterOfMass, cmtool::CBAlgoCenterOfMassSmall, cmtool::CBAlgoFake, and cmtool::CBAlgoMergeAll.
Definition at line 40 of file CMAlgoBase.h.
Referenced by cmtool::CMergeManager::Reset(), cmtool::CMatchManager::Reset(), and cmtool::CMManagerBase::Reset().
|
inlineinherited |
Setter function for an output plot TFile pointer.
Definition at line 72 of file CMAlgoBase.h.
References cmtool::CMAlgoBase::_fout.
Referenced by cmtool::CMergeManager::EventBegin().
|
inlinevirtualinherited |
Setter function for verbosity.
Reimplemented in cmtool::CBAlgoArray, and cmtool::CFAlgoTimeOverlap.
Definition at line 75 of file CMAlgoBase.h.
References cmtool::CMAlgoBase::_verbose.
Referenced by cmtool::CMatchManager::EventBegin(), and cmtool::CMergeManager::EventBegin().
|
protectedinherited |
TFile pointer to an output file.
Definition at line 79 of file CMAlgoBase.h.
Referenced by cmtool::CMAlgoBase::CMAlgoBase(), and cmtool::CMAlgoBase::SetAnaFile().
|
protectedinherited |
Boolean to choose verbose mode. Turned on if CMergeManager/CMatchManager's verbosity level is >= kPerMerging.
Definition at line 82 of file CMAlgoBase.h.
Referenced by cmtool::CBAlgoAngleAlign::Bool(), cmtool::CBAlgoAngleCompat::Bool(), cmtool::CBAlgoPolyOverlap::Bool(), cmtool::CBAlgoOutOfConeSeparate::Bool(), cmtool::CBAlgoAngleSeparate::Bool(), cmtool::CBAlgoCenterOfMassSmall::Bool(), cmtool::CBAlgoCenterOfMass::Bool(), cmtool::CBAlgoStartNearEnd::Bool(), cmtool::CBAlgoProhibitAllTracks::Bool(), cmtool::CMAlgoBase::CMAlgoBase(), cmtool::CFAlgoZOverlap::Float(), cmtool::CFAlgoQRatio::Float(), cmtool::CMAlgoBase::SetVerbose(), cmtool::CBAlgoCenterOfMassSmall::ShortestDistanceSquared(), and cmtool::CBAlgoCenterOfMass::ShortestDistanceSquared().