LArSoft
v06_85_00
Liquid Argon Software toolkit - http://larsoft.org/
|
#include "CBAlgoMergeTinyWithBig.h"
Public Member Functions | |
CBAlgoMergeTinyWithBig () | |
Default constructor. More... | |
virtual | ~CBAlgoMergeTinyWithBig () |
Default destructor. More... | |
virtual bool | Bool (const ::cluster::ClusterParamsAlg &cluster1, const ::cluster::ClusterParamsAlg &cluster2) |
virtual void | Report () |
virtual void | Reset () |
Function to reset the algorithm instance ... maybe implemented via child class. More... | |
void | SetMinHitsBig (size_t nhits) |
void | SetMaxHitsBig (size_t nhits) |
void | SetMinHitsSmall (size_t nhits) |
void | SetMaxHitsSmall (size_t nhits) |
void | SetMinDistSquared (double dist) |
void | SetDebug (bool flag) |
virtual void | EventBegin (const std::vector< cluster::ClusterParamsAlg > &clusters) |
virtual void | EventEnd () |
virtual void | IterationBegin (const std::vector< cluster::ClusterParamsAlg > &clusters) |
virtual void | IterationEnd () |
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... | |
Private Attributes | |
size_t | _min_hits_small |
size_t | _max_hits_small |
size_t | _min_hits_big |
size_t | _max_hits_big |
double | _dist_sqrd_cut |
bool | _debug |
User implementation for CBoolAlgoBase class doxygen documentation!
This algo looks for tiny clusters and looks to merge them with big clusters. It uses code from PolyShortestDist and says if the small cluster is close(ish) to the big one, merge it.
Definition at line 31 of file CBAlgoMergeTinyWithBig.h.
cmtool::CBAlgoMergeTinyWithBig::CBAlgoMergeTinyWithBig | ( | ) |
Default constructor.
Definition at line 9 of file CBAlgoMergeTinyWithBig.cxx.
References SetDebug(), SetMaxHitsBig(), SetMaxHitsSmall(), SetMinDistSquared(), SetMinHitsBig(), and SetMinHitsSmall().
|
inlinevirtual |
Default destructor.
Definition at line 39 of file CBAlgoMergeTinyWithBig.h.
|
virtual |
Core function: given the CPAN input, return whether a cluster should be merged or not.
Reimplemented from cmtool::CBoolAlgoBase.
Definition at line 29 of file CBAlgoMergeTinyWithBig.cxx.
References _debug, _dist_sqrd_cut, _max_hits_big, _max_hits_small, _min_hits_big, and _min_hits_small.
Referenced by ~CBAlgoMergeTinyWithBig().
|
inlinevirtualinherited |
Optional function: called at the beginning of 1st iteration. This is called per event.
Reimplemented in cmtool::CFAlgoArray, 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::CFAlgoArray, cmtool::CPAlgoArray, and cmtool::CBAlgoArray.
Definition at line 51 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::CFAlgoArray, cmtool::CPAlgoArray, and cmtool::CBAlgoArray.
Definition at line 59 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::CFAlgoArray, cmtool::CPAlgoArray, and cmtool::CBAlgoArray.
Definition at line 65 of file CMAlgoBase.h.
Referenced by cmtool::CMatchManager::IterationEnd(), and cmtool::CMergeManager::IterationEnd().
|
virtual |
Optional function: called after each Merge() function call by CMergeManager IFF CMergeManager is run with verbosity level kPerMerging. Maybe useful for debugging.
Reimplemented from cmtool::CMAlgoBase.
Definition at line 115 of file CBAlgoMergeTinyWithBig.cxx.
Referenced by ~CBAlgoMergeTinyWithBig().
|
virtual |
Function to reset the algorithm instance ... maybe implemented via child class.
Reimplemented from cmtool::CMAlgoBase.
Definition at line 22 of file CBAlgoMergeTinyWithBig.cxx.
Referenced by ~CBAlgoMergeTinyWithBig().
|
inlineinherited |
Setter function for an output plot TFile pointer.
Definition at line 77 of file CMAlgoBase.h.
References cmtool::CMAlgoBase::_fout.
Referenced by cmtool::CMergeManager::EventBegin().
|
inline |
Definition at line 98 of file CBAlgoMergeTinyWithBig.h.
References _debug.
Referenced by CBAlgoMergeTinyWithBig().
|
inline |
Definition at line 90 of file CBAlgoMergeTinyWithBig.h.
References _max_hits_big.
Referenced by CBAlgoMergeTinyWithBig().
|
inline |
Definition at line 94 of file CBAlgoMergeTinyWithBig.h.
References _max_hits_small.
Referenced by CBAlgoMergeTinyWithBig().
|
inline |
Definition at line 96 of file CBAlgoMergeTinyWithBig.h.
References _dist_sqrd_cut.
Referenced by CBAlgoMergeTinyWithBig().
|
inline |
Optional function: called at the beginning of 1st iteration. This is called per event. Optional function: called at the end of event ... after the last merging iteration is over. 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. Optional function: called at the end of each iteration over all pairs of clusters.
Definition at line 88 of file CBAlgoMergeTinyWithBig.h.
References _min_hits_big.
Referenced by CBAlgoMergeTinyWithBig().
|
inline |
Definition at line 92 of file CBAlgoMergeTinyWithBig.h.
References _min_hits_small.
Referenced by CBAlgoMergeTinyWithBig().
|
inlinevirtualinherited |
Setter function for verbosity.
Reimplemented in cmtool::CBAlgoArray, cmtool::CFAlgoChargeDistrib, cmtool::CFAlgoVolumeOverlap, cmtool::CFAlgoWireOverlap, cmtool::CFAlgoStartPointCompat, cmtool::CFAlgoStartTimeCompat, cmtool::CFAlgoTimeOverlap, cmtool::CBAlgoStartInCone, cmtool::CBAlgoShortestDistNonEndpoint, and cmtool::CBAlgoTrackSeparate.
Definition at line 80 of file CMAlgoBase.h.
References cmtool::CMAlgoBase::_verbose.
Referenced by cmtool::CMatchManager::EventBegin(), cmtool::CMergeManager::EventBegin(), and cluster::SimpleClusterMerger::SimpleClusterMerger().
|
private |
Definition at line 106 of file CBAlgoMergeTinyWithBig.h.
Referenced by Bool(), and SetDebug().
|
private |
Definition at line 104 of file CBAlgoMergeTinyWithBig.h.
Referenced by Bool(), and SetMinDistSquared().
|
protectedinherited |
TFile pointer to an output file.
Definition at line 85 of file CMAlgoBase.h.
Referenced by cmtool::CMAlgoBase::CMAlgoBase(), and cmtool::CMAlgoBase::SetAnaFile().
|
private |
Definition at line 102 of file CBAlgoMergeTinyWithBig.h.
Referenced by Bool(), and SetMaxHitsBig().
|
private |
Definition at line 102 of file CBAlgoMergeTinyWithBig.h.
Referenced by Bool(), and SetMaxHitsSmall().
|
private |
Definition at line 102 of file CBAlgoMergeTinyWithBig.h.
Referenced by Bool(), and SetMinHitsBig().
|
private |
Definition at line 102 of file CBAlgoMergeTinyWithBig.h.
Referenced by Bool(), and SetMinHitsSmall().
|
protectedinherited |
Boolean to choose verbose mode. Turned on if CMergeManager/CMatchManager's verbosity level is >= kPerMerging.
Definition at line 88 of file CMAlgoBase.h.
Referenced by cmtool::CBAlgoAngleAlign::Bool(), cmtool::CBAlgoAngleCompat::Bool(), cmtool::CBAlgoShortestDistSmallCluster::Bool(), cmtool::CBAlgoShortestDist::Bool(), cmtool::CBAlgoOutOfConeSeparate::Bool(), cmtool::CBAlgoPolyOverlap::Bool(), cmtool::CBAlgoAngleSeparate::Bool(), cmtool::CBAlgoCenterOfMassSmall::Bool(), cmtool::CBAlgoCenterOfMass::Bool(), cmtool::CBAlgoStartInPoly::Bool(), cmtool::CBAlgoStartNearEnd::Bool(), cmtool::CBAlgoProhibitAllTracks::Bool(), cmtool::CBAlgoShortestDist::CBAlgoShortestDist(), cmtool::CBAlgoShortestDistSmallCluster::CBAlgoShortestDistSmallCluster(), cmtool::CMAlgoBase::CMAlgoBase(), cmtool::CFAlgoQRatio::Float(), cmtool::CFAlgoZOverlap::Float(), cmtool::CFAlgoStartPointMatch::Float(), cmtool::CMAlgoBase::SetVerbose(), cmtool::CBAlgoShortestDist::ShortestDistanceSquared(), cmtool::CBAlgoShortestDistSmallCluster::ShortestDistanceSquared(), cmtool::CBAlgoCenterOfMassSmall::ShortestDistanceSquared(), and cmtool::CBAlgoCenterOfMass::ShortestDistanceSquared().